Libparserutils
buffer.h
Go to the documentation of this file.
1/*
2 * This file is part of LibParserUtils.
3 * Licensed under the MIT License,
4 * http://www.opensource.org/licenses/mit-license.php
5 * Copyright 2008 John-Mark Bell <jmb@netsurf-browser.org>
6 */
7
8#ifndef parserutils_utils_buffer_h_
9#define parserutils_utils_buffer_h_
10
11#ifdef __cplusplus
12extern "C"
13{
14#endif
15
16#include <parserutils/errors.h>
18
20{
21 uint8_t *alloc;
22 uint8_t *data;
23 size_t length;
24 size_t allocated;
25};
27
30
32 const uint8_t *data, size_t len);
34 size_t count, ...);
36 size_t offset, const uint8_t *data, size_t len);
38 size_t offset, size_t len);
39
41
43
44#ifdef __cplusplus
45}
46#endif
47
48#endif
49
parserutils_error parserutils_buffer_insert(parserutils_buffer *buffer, size_t offset, const uint8_t *data, size_t len)
Insert data into a memory buffer.
Definition buffer.c:175
parserutils_error parserutils_buffer_randomise(parserutils_buffer *buffer)
Definition buffer.c:249
parserutils_error parserutils_buffer_create(parserutils_buffer **buffer)
Create a memory buffer.
Definition buffer.c:23
parserutils_error parserutils_buffer_destroy(parserutils_buffer *buffer)
Destroy a memory buffer.
Definition buffer.c:55
parserutils_error parserutils_buffer_append(parserutils_buffer *buffer, const uint8_t *data, size_t len)
Append data to a memory buffer.
Definition buffer.c:120
parserutils_error parserutils_buffer_grow(parserutils_buffer *buffer)
Extend the amount of space allocated for a memory buffer.
Definition buffer.c:235
parserutils_error parserutils_buffer_appendv(parserutils_buffer *buffer, size_t count,...)
Append multiple data blocks to a memory buffer.
Definition buffer.c:144
parserutils_error parserutils_buffer_discard(parserutils_buffer *buffer, size_t offset, size_t len)
Discard a section of a memory buffer.
Definition buffer.c:208
size_t len
Definition codec_8859.c:23
parserutils_error
Definition errors.h:18
uint8_t * data
Definition buffer.h:22
uint8_t * alloc
Definition buffer.h:21
size_t allocated
Definition buffer.h:24