Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
buffer_init(3)		    Library Functions Manual		  buffer_init(3)

NAME
     buffer_init - initialize buffer structure

SYNTAX
     #include <libowfat/buffer.h>

     void buffer_init(buffer &b,
		     ssize_t (*op)(int,char*,size_t),
		     int fd, char* y, size_t ylen);

DESCRIPTION
     buffer_init  prepares  b  to  store a string in y[0], y[1], ..., y[ylen-1].
     Initially the string is empty.

     buffer_init also prepares b to use the read/write operation specified by op
     and fd.

     You can use

       buffer b = BUFFER_INIT(op,fd,y,ylen);

     to initialize b statically if op, fd, y, and  ylen  are  compile-time  con-
     stants.

     You  can  call  buffer_init  again at any time. Note that this discards the
     currently buffered string.

EXAMPLE
       #include <libowfat/buffer.h>
       #include <libowfat/open.h>

       char buf[4096];
       int fd=open_read("/etc/services");
       buffer input;

       if (fd>=0) {
	 char x;
	 buffer_init(&input,read,fd,buf,sizeof buf);
	 while (buffer_get(&input,&x,1)==1) {
	   buffer_put(buffer_1,&x,1);
	   if (x=='\n') break;
	 }
	 buffer_flush(buffer_1);
       }

SEE ALSO
     buffer_flush(3), buffer(3)

								  buffer_init(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libowfat_buffer_init&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help