diff options
author | ZoRo <dos21h@gmail.com> | 2018-01-15 19:25:03 +0000 |
---|---|---|
committer | ZoRo <dos21h@gmail.com> | 2018-01-15 19:25:03 +0000 |
commit | a8b9b15b4f02ce3c6c7eac0d9393c44cb3fc668d (patch) | |
tree | 5ff9a31d852e26185075156923dc86d5a3205682 /buf.h | |
download | libbuf-a8b9b15b4f02ce3c6c7eac0d9393c44cb3fc668d.tar.gz libbuf-a8b9b15b4f02ce3c6c7eac0d9393c44cb3fc668d.zip |
Initial commit
Diffstat (limited to 'buf.h')
-rw-r--r-- | buf.h | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -0,0 +1,39 @@ +#ifndef __BUF_H +#define __BUF_H + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> + +typedef struct bbuf { + int size; + int buf_size; + char *buf; +} bbuf; + +//operations on plain buffers also operations on bufer to buffer should be +//supoorted + +//create new buffer without content +bbuf* bbuf_new(int size); + +//set buffer value +int bbuf_set(bbuf *a, char *val, int size); +//get copy of buffer +bbuf *bbuf_copy(bbuf *buf); +//get buffer from buffer +int bbuf_get(bbuf *buf, char **val, int *size); +//resize buffer +int bbuf_realloc(bbuf *buf, int size); +//increase buffer for size +int bbuf_inc(bbuf *a, char *b, int size); +//decrease buffer for size +int bbuf_dec(bbuf *a, char *b, int size); +//free buffer +void bbuf_free(bbuf *buf); + +int bbuf_concat(bbuf *a, bbuf *b); + +void bbuf_free(bbuf *buf); + +#endif
\ No newline at end of file |