diff --git a/include/patty/buffer.h b/include/patty/buffer.h index def1b6b..307c95b 100644 --- a/include/patty/buffer.h +++ b/include/patty/buffer.h @@ -1,13 +1,17 @@ #ifndef _PATTY_BUFFER_H #define _PATTY_BUFFER_H +#include + typedef struct _patty_buffer patty_buffer; patty_buffer *patty_buffer_new(size_t size); void patty_buffer_destroy(patty_buffer *buffer); -void *patty_buffer_data(patty_buffer *buffer); +size_t patty_buffer_size(patty_buffer *buffer); + +void *patty_buffer_data(patty_buffer *buffer, size_t *len); ssize_t patty_buffer_fill(patty_buffer *buffer, void *data, size_t len); diff --git a/src/buffer.c b/src/buffer.c index 9d0f1bc..ccc69c0 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -39,7 +39,13 @@ void patty_buffer_destroy(patty_buffer *buffer) { free(buffer); } -void *patty_buffer_data(patty_buffer *buffer) { +size_t patty_buffer_size(patty_buffer *buffer) { + return buffer->size; +} + +void *patty_buffer_data(patty_buffer *buffer, size_t *len) { + *len = buffer->len; + return buffer->data; }