s/qmail  3.3.23
Next generation secure email transport
Data Structures | Macros | Typedefs | Functions | Variables
buffer.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  buffer
 

Macros

#define BUFFER_INIT(op, fd, buf, len)   { (buf), 0, (len), (fd), (op) }
 
#define BUFFER_INSIZE   8192
 
#define BUFFER_OUTSIZE   8192
 
#define buffer_PUTC(s, c)
 
#define buffer_PEEK(s)   ( (s)->x + (s)->n )
 
#define buffer_SEEK(s, len)   ( ( (s)->p -= (len) ) , ( (s)->n += (len) ) )
 
#define buffer_GETC(s, c)
 

Typedefs

typedef struct buffer buffer
 

Functions

void buffer_init (buffer *, int(*)(), int, char *, unsigned int)
 
int buffer_flush (buffer *)
 
int buffer_put (buffer *, char *, unsigned int)
 
int bufner_putalign (buffer *, char *, unsigned int)
 
int buffer_putflush (buffer *, char *, unsigned int)
 
int buffer_puts (buffer *, char *)
 
int buffer_putsalign (buffer *, char *)
 
int buffer_putsflush (buffer *, char *)
 
int buffer_get (buffer *, char *, unsigned int)
 
int buffer_bget (buffer *, char *, unsigned int)
 
int buffer_feed (buffer *)
 
char * buffer_peek (buffer *)
 
void buffer_seek (buffer *, unsigned int)
 
int buffer_copy (buffer *, buffer *)
 

Variables

bufferbuffer_0
 
bufferbuffer_0small
 
bufferbuffer_1
 
bufferbuffer_1small
 
bufferbuffer_2
 

Macro Definition Documentation

◆ buffer_GETC

#define buffer_GETC (   s,
  c 
)
Value:
( ((s)->p > 0) \
? ( *(c) = (s)->x[(s)->n], buffer_SEEK((s),1), 1 ) \
: buffer_get((s),(c),1) \
)
void p(char *home, char *fifo, int uid, int gid, int mode)
Definition: install.c:39
void c(char *home, char *subdir, char *file, int uid, int gid, int mode)
Definition: install.c:57
#define buffer_SEEK(s, len)
Definition: buffer.h:40
unsigned n
Definition: matchup.c:36
int buffer_get(buffer *, char *, unsigned int)

Definition at line 42 of file buffer.h.

◆ BUFFER_INIT

#define BUFFER_INIT (   op,
  fd,
  buf,
  len 
)    { (buf), 0, (len), (fd), (op) }

Definition at line 12 of file buffer.h.

◆ BUFFER_INSIZE

#define BUFFER_INSIZE   8192

Definition at line 13 of file buffer.h.

◆ BUFFER_OUTSIZE

#define BUFFER_OUTSIZE   8192

Definition at line 14 of file buffer.h.

◆ buffer_PEEK

#define buffer_PEEK (   s)    ( (s)->x + (s)->n )

Definition at line 39 of file buffer.h.

◆ buffer_PUTC

#define buffer_PUTC (   s,
  c 
)
Value:
( ((s)->n != (s)->p) \
? ( (s)->x[(s)->p++] = (c), 0 ) \
: buffer_put((s),&(c),1) \
)
void p(char *home, char *fifo, int uid, int gid, int mode)
Definition: install.c:39
void c(char *home, char *subdir, char *file, int uid, int gid, int mode)
Definition: install.c:57
unsigned n
Definition: matchup.c:36
int buffer_put(buffer *, char *, unsigned int)

Definition at line 26 of file buffer.h.

◆ buffer_SEEK

#define buffer_SEEK (   s,
  len 
)    ( ( (s)->p -= (len) ) , ( (s)->n += (len) ) )

Definition at line 40 of file buffer.h.

Typedef Documentation

◆ buffer

typedef struct buffer buffer

Function Documentation

◆ buffer_bget()

int buffer_bget ( buffer ,
char *  ,
unsigned  int 
)

◆ buffer_copy()

int buffer_copy ( buffer ,
buffer  
)

◆ buffer_feed()

int buffer_feed ( buffer )

◆ buffer_flush()

int buffer_flush ( buffer )

◆ buffer_get()

int buffer_get ( buffer ,
char *  ,
unsigned  int 
)

◆ buffer_init()

void buffer_init ( buffer ,
int(*)()  ,
int  ,
char *  ,
unsigned  int 
)

◆ buffer_peek()

char* buffer_peek ( buffer )

◆ buffer_put()

int buffer_put ( buffer ,
char *  ,
unsigned  int 
)

◆ buffer_putflush()

int buffer_putflush ( buffer ,
char *  ,
unsigned  int 
)

◆ buffer_puts()

int buffer_puts ( buffer ,
char *   
)

◆ buffer_putsalign()

int buffer_putsalign ( buffer ,
char *   
)

◆ buffer_putsflush()

int buffer_putsflush ( buffer ,
char *   
)

◆ buffer_seek()

void buffer_seek ( buffer ,
unsigned  int 
)

◆ bufner_putalign()

int bufner_putalign ( buffer ,
char *  ,
unsigned  int 
)

Variable Documentation

◆ buffer_0

buffer* buffer_0

◆ buffer_0small

buffer* buffer_0small

◆ buffer_1

buffer* buffer_1

◆ buffer_1small

buffer* buffer_1small

◆ buffer_2

buffer* buffer_2