buffer_mmapread

Langue: en

Version: 162929 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

buffer_mmapread - create read-only memory-mapped file buffer

SYNTAX

#include <buffer.h>

int buffer_mmapread(buffer &b,const char* filename);

DESCRIPTION

buffer_mmapread opens filename for reading and fills b so that the contents of the file can be read from it. Using mmap is more efficient than reading through a real buffer, but you have to call buffer_close to unmap the memory in the end.

EXAMPLE


  #include <buffer.h>
  #include <open.h>


  buffer input;
  char x;


  buffer_mmapread(&input,"/etc/passwd");
  while (buffer_get(&input,&x,1)==1) {
    buffer_put(buffer_1,&x,1);
    if (x=='\n') break;
  }
  buffer_flush(buffer_1);
  buffer_close(&input);

RETURN VALUE

buffer_mmapread returns 0 if everything was fine, -1 on error (setting errno).

SEE ALSO

buffer_flush(3), buffer(3)