Scroll to navigation

ldns(3) Library Functions Manual ldns(3)


ldns_buffer_flip, ldns_buffer_rewind, ldns_buffer_position, ldns_buffer_set_position, ldns_buffer_skip - buffer positioning


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

#include <ldns/ldns.h>

void ldns_buffer_flip(ldns_buffer *buffer);

void ldns_buffer_rewind(ldns_buffer *buffer);

size_t ldns_buffer_position(const ldns_buffer *buffer);

void ldns_buffer_set_position(ldns_buffer *buffer, size_t mark);

void ldns_buffer_skip(ldns_buffer *buffer, ssize_t count);


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

buffer: the buffer to flip
Returns void

ldns_buffer_rewind() make the buffer ready for re-reading the data. The buffer's position is reset to 0.
buffer: the buffer to rewind

ldns_buffer_position() returns the current position in the buffer (as a number of bytes)
buffer: the buffer
Returns the current position

ldns_buffer_set_position() sets the buffer's position to MARK. The position must be less than or equal to the buffer's limit.
buffer: the buffer
mark: the mark to use

ldns_buffer_skip() changes the buffer's position by COUNT bytes. The position must not be moved behind the buffer's limit or before the beginning of the buffer.
buffer: the buffer
count: the count to use


The ldns team at NLnet Labs.


Please report bugs to or on GitHub at


Copyright (c) 2004 - 2006 NLnet Labs.

Licensed under the BSD License. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


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


This manpage was automatically generated from the ldns source code.

30 May 2006