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 *data;
22 size_t length;
23 size_t allocated;
24};
26
29
31 const uint8_t *data, size_t len);
33 size_t offset, const uint8_t *data, size_t len);
35 size_t offset, size_t len);
36
38
40
41#ifdef __cplusplus
42}
43#endif
44
45#endif
46
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:97
parserutils_error parserutils_buffer_randomise(parserutils_buffer *buffer)
Definition: buffer.c:162
parserutils_error parserutils_buffer_create(parserutils_buffer **buffer)
Create a memory buffer.
Definition: buffer.c:22
parserutils_error parserutils_buffer_destroy(parserutils_buffer *buffer)
Destroy a memory buffer.
Definition: buffer.c:53
parserutils_error parserutils_buffer_append(parserutils_buffer *buffer, const uint8_t *data, size_t len)
Append data to a memory buffer.
Definition: buffer.c:72
parserutils_error parserutils_buffer_grow(parserutils_buffer *buffer)
Extend the amount of space allocated for a memory buffer.
Definition: buffer.c:150
parserutils_error parserutils_buffer_discard(parserutils_buffer *buffer, size_t offset, size_t len)
Discard a section of a memory buffer.
Definition: buffer.c:130
size_t len
Definition: codec_8859.c:23
parserutils_error
Definition: errors.h:18
uint8_t * data
Definition: buffer.h:21
size_t length
Definition: buffer.h:22
size_t allocated
Definition: buffer.h:23