Go to the source code of this file.
Data Structures | |
struct | ldns_struct_buffer |
LDNS implementation of buffers to ease operations. More... | |
Defines | |
#define | LDNS_MIN_BUFLEN 256 |
number of initial bytes in buffer of which we cannot tell the size before hand | |
Typedefs | |
typedef ldns_struct_buffer | ldns_buffer |
Functions | |
ldns_buffer * | ldns_buffer_new (size_t capacity) |
creates a new buffer with the specified capacity. | |
void | ldns_buffer_new_frm_data (ldns_buffer *buffer, void *data, size_t size) |
creates a buffer with the specified data. | |
void | ldns_buffer_clear (ldns_buffer *buffer) |
clears the buffer and make it ready for writing. | |
void | ldns_buffer_flip (ldns_buffer *buffer) |
makes the buffer ready for reading the data that has been written to the buffer. | |
void | ldns_buffer_rewind (ldns_buffer *buffer) |
make the buffer ready for re-reading the data. | |
bool | ldns_buffer_set_capacity (ldns_buffer *buffer, size_t capacity) |
changes the buffer's capacity. | |
bool | ldns_buffer_reserve (ldns_buffer *buffer, size_t amount) |
ensures BUFFER can contain at least AMOUNT more bytes. | |
int | ldns_buffer_printf (ldns_buffer *buffer, const char *format,...) |
prints to the buffer, increasing the capacity if required using buffer_reserve(). | |
void | ldns_buffer_free (ldns_buffer *buffer) |
frees the buffer. | |
void * | ldns_buffer_export (ldns_buffer *buffer) |
Makes the buffer fixed and returns a pointer to the data. |
|
number of initial bytes in buffer of which we cannot tell the size before hand
|
|
|
|
clears the buffer and make it ready for writing. The buffer's limit is set to the capacity and the position is set to 0. |
|
Makes the buffer fixed and returns a pointer to the data. The caller is responsible for free'ing the result.
|
|
makes the buffer ready for reading the data that has been written to the buffer. The buffer's limit is set to the current position and the position is set to 0.
|
|
frees the buffer.
|
|
creates a new buffer with the specified capacity.
|
|
creates a buffer with the specified data. The data IS copied and MEMORY allocations are done. The buffer is not fixed and can be resized using buffer_reserve().
|
|
prints to the buffer, increasing the capacity if required using buffer_reserve(). The buffer's position is set to the terminating '\0'. Returns the number of characters written (not including the terminating '\0') or -1 on failure. |
|
ensures BUFFER can contain at least AMOUNT more bytes. The buffer's capacity is increased if necessary using buffer_set_capacity(). The buffer's limit is always set to the (possibly increased) capacity. |
|
make the buffer ready for re-reading the data. The buffer's position is reset to 0. |
|
changes the buffer's capacity. The data is reallocated so any pointers to the data may become invalid. The buffer's limit is set to the buffer's new capacity. |