ldns_buffer_new man page

ldns_buffer_new, ldns_buffer_new_frm_data, ldns_buffer_clear, ldns_buffer_printf, ldns_buffer_free, ldns_buffer_export


#include <stdint.h>
#include <stdbool.h>

#include <ldns/ldns.h>

ldns_buffer* ldns_buffer_new(size_t capacity);

void ldns_buffer_new_frm_data(ldns_buffer *buffer, void *data, size_t size);

void ldns_buffer_clear(ldns_buffer *buffer);

int ldns_buffer_printf(ldns_buffer *buffer, const char *format, ...);

void ldns_buffer_free(ldns_buffer *buffer);

void* ldns_buffer_export(ldns_buffer *buffer);


ldns_buffer_new() creates a new buffer with the specified capacity.

capacity: the size (in bytes) to allocate for the buffer
Returns the created buffer

ldns_buffer_new_frm_data() 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().

buffer: pointer to the buffer to put the data in
data: the data to encapsulate in the buffer
size: the size of the data

ldns_buffer_clear() 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.
buffer: the buffer to clear

ldns_buffer_printf() 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.

ldns_buffer_free() frees the buffer.
*buffer: the buffer to be freed
Returns void

ldns_buffer_export() Makes the buffer fixed and returns a pointer to the data. The caller is responsible for free'ing the result.
*buffer: the buffer to be exported
Returns void


The ldns team at NLnet Labs. Which consists out of Jelte Jansen and Miek Gieben.

Reporting Bugs

Please report bugs to ldns-team@nlnetlabs.nl or in our bugzilla at http://www.nlnetlabs.nl/bugs/index.html

See Also

ldns_buffer. And perldoc Net::DNS, RFC1034, RFC1035, RFC4033, RFC4034 and RFC4035.


This manpage was automaticly generated from the ldns source code by use of Doxygen and some perl.

Referenced By

ldns_buffer_clear(3), ldns_buffer_export(3), ldns_buffer_free(3), ldns_buffer_new_frm_data(3) and ldns_buffer_printf(3) are aliases of ldns_buffer_new(3).

30 May 2006