12 #define DEFAULT_SIZE (4096) 34 if (b->
data == NULL) {
73 const uint8_t *data,
size_t len)
81 memcpy(buffer->
data + buffer->
length, data, len);
98 size_t offset,
const uint8_t *data,
size_t len)
100 if (offset > buffer->
length)
103 if (offset == buffer->
length)
112 memmove(buffer->
data + offset + len,
113 buffer->
data + offset, buffer->
length - offset);
115 memcpy(buffer->
data + offset, data, len);
131 size_t offset,
size_t len)
133 if (offset >= buffer->
length || offset + len > buffer->
length)
136 memmove(buffer->
data + offset, buffer->
data + offset + len,
137 buffer->
length - (len + offset));
152 uint8_t *temp = realloc(buffer->
data, buffer->
allocated * 2);
parserutils_error parserutils_buffer_insert(parserutils_buffer *buffer, size_t offset, const uint8_t *data, size_t len)
Insert data into a memory buffer.
parserutils_error parserutils_buffer_grow(parserutils_buffer *buffer)
Extend the amount of space allocated for a memory buffer.
parserutils_error parserutils_buffer_randomise(parserutils_buffer *buffer)
parserutils_error parserutils_buffer_destroy(parserutils_buffer *buffer)
Destroy a memory buffer.
parserutils_error parserutils_buffer_discard(parserutils_buffer *buffer, size_t offset, size_t len)
Discard a section of a memory buffer.
parserutils_error parserutils_buffer_create(parserutils_buffer **buffer)
Create a memory buffer.
parserutils_error parserutils_buffer_append(parserutils_buffer *buffer, const uint8_t *data, size_t len)
Append data to a memory buffer.