diff options
Diffstat (limited to 'src/include/skalibs/cbuffer.h')
-rw-r--r-- | src/include/skalibs/cbuffer.h | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/include/skalibs/cbuffer.h b/src/include/skalibs/cbuffer.h index a80e3af..19b3078 100644 --- a/src/include/skalibs/cbuffer.h +++ b/src/include/skalibs/cbuffer.h @@ -3,18 +3,18 @@ #ifndef CBUFFER_H #define CBUFFER_H +#include <sys/types.h> +#include <sys/uio.h> +#include <string.h> #include <skalibs/gccattributes.h> -#include <skalibs/bytestr.h> -#include <skalibs/diuint.h> -#include <skalibs/siovec.h> typedef struct cbuffer_s cbuffer_t, *cbuffer_t_ref ; struct cbuffer_s { char *x ; - unsigned int a ; /* total length */ - unsigned int p ; /* head */ - unsigned int n ; /* tail */ + size_t a ; /* total length */ + size_t p ; /* head */ + size_t n ; /* tail */ } ; #define CBUFFER_ZERO { .x = 0, .a = 0, .p = 0, .n = 0 } @@ -24,38 +24,38 @@ struct cbuffer_s */ #define CBUFFER_INIT(buf, len) { .x = (buf), .a = (len), .p = 0, .n = 0 } -extern int cbuffer_init (cbuffer_t *, char *, unsigned int) ; +extern int cbuffer_init (cbuffer_t *, char *, size_t) ; /* Writing */ -extern unsigned int cbuffer_put (cbuffer_t *, char const *, unsigned int) ; -extern unsigned int cbuffer_putv (cbuffer_t *, siovec_t const *, unsigned int) ; -#define cbuffer_puts(b, s) cbuffer_put(b, (s), str_len(s)) +extern size_t cbuffer_put (cbuffer_t *, char const *, size_t) ; +extern size_t cbuffer_putv (cbuffer_t *, struct iovec const *, unsigned int) ; +#define cbuffer_puts(b, s) cbuffer_put(b, (s), strlen(s)) #define cbuffer_UNPUT(b, w) ((b)->n = ((b)->a + (b)->n - w) % (b)->a, w) ; -extern unsigned int cbuffer_unput (cbuffer_t *, unsigned int) ; -extern void cbuffer_wpeek (cbuffer_t *, siovec_t *) ; +extern size_t cbuffer_unput (cbuffer_t *, size_t) ; +extern void cbuffer_wpeek (cbuffer_t *, struct iovec *) ; #define cbuffer_WSEEK(b, w) ((b)->n = ((b)->n + (w)) % (b)->a, w) -extern unsigned int cbuffer_wseek (cbuffer_t *, unsigned int) ; +extern size_t cbuffer_wseek (cbuffer_t *, size_t) ; /* Reading */ -extern unsigned int cbuffer_get (cbuffer_t *, char *, unsigned int) ; -extern unsigned int cbuffer_getv (cbuffer_t *, siovec_t const *, unsigned int) ; +extern size_t cbuffer_get (cbuffer_t *, char *, size_t) ; +extern size_t cbuffer_getv (cbuffer_t *, struct iovec const *, unsigned int) ; #define cbuffer_UNGET(b, n) ((b)->p = ((b)->a + (b)->p - n) % (b)->a, n) ; -extern unsigned int cbuffer_unget (cbuffer_t *, unsigned int) ; -extern void cbuffer_rpeek (cbuffer_t *, siovec_t *) ; +extern size_t cbuffer_unget (cbuffer_t *, size_t) ; +extern void cbuffer_rpeek (cbuffer_t *, struct iovec *) ; #define cbuffer_RSEEK(b, n) ((b)->p = ((b)->p + (n)) % (b)->a, n) -extern unsigned int cbuffer_rseek (cbuffer_t *, unsigned int) ; +extern size_t cbuffer_rseek (cbuffer_t *, size_t) ; /* Utility */ -#define cbuffer_len(b) ((unsigned int)(((b)->a - (b)->p + (b)->n) % (b)->a)) -#define cbuffer_available(b) ((unsigned int)(((b)->a - (b)->n + (b)->p - 1) % (b)->a)) +#define cbuffer_len(b) ((size_t)(((b)->a - (b)->p + (b)->n) % (b)->a)) +#define cbuffer_available(b) ((size_t)(((b)->a - (b)->n + (b)->p - 1) % (b)->a)) #define cbuffer_isempty(b) (!cbuffer_len(b)) #define cbuffer_isfull(b) (!cbuffer_available(b)) |