SYNOPSIS

#include <stdint.h>

#include <stdbool.h>

#include <ldns/ldns.h>

DESCRIPTION

ldns_buffer

implementation of buffers to ease operations

ldns_buffers can contain arbitrary information, per octet. You can write

to the current end of a buffer, read from the current position, and

access any data within it.

Example use of buffers is in the source code of \ref host2str.c

struct ldns_struct_buffer

{

The current position used for reading/writing:

size_t _position;

The read/write limit:

size_t _limit;

The amount of data the buffer can contain:

size_t _capacity;

The data contained in the buffer:

uint8_t *_data;

If the buffer is fixed it cannot be resized:

unsigned _fixed : 1;

/** The current state of the buffer. If writing to the buffer fails

* for any reason, this value is changed. This way, you can perform

* multiple writes in sequence and check for success afterwards. */

ldns_status _status;

};

typedef struct ldns_struct_buffer ldns_buffer;

AUTHOR

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

REPORTING BUGS

Please report bugs to [email protected] or in our bugzilla at http://www.nlnetlabs.nl/bugs/index.html

COPYRIGHT

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.

RELATED TO ldns_buffer…

ldns_buffer_new, ldns_buffer_new_frm_data, ldns_buffer_clear, ldns_buffer_printf, ldns_buffer_free, ldns_buffer_export, ldns_buffer_flip, ldns_buffer_rewind, ldns_buffer_position, ldns_buffer_set_position, ldns_buffer_skip, ldns_buffer_limit, ldns_buffer_set_limit, ldns_buffer_capacity, ldns_buffer_set_capacity, ldns_buffer_reserve, ldns_buffer_at, ldns_buffer_begin, ldns_buffer_end, ldns_buffer_current, ldns_buffer_remaining_at, ldns_buffer_remaining, ldns_buffer_available_at, ldns_buffer_available, ldns_buffer_status, ldns_buffer_status_ok, ldns_buffer_write_at, ldns_buffer_write_at, ldns_buffer_write, ldns_buffer_write_string_at, ldns_buffer_write_string, ldns_buffer_write_u8_at, ldns_buffer_write_u8, ldns_buffer_write_u16_at, ldns_buffer_write_u16, ldns_buffer_read_at, ldns_buffer_read, ldns_buffer_read_u8_at, ldns_buffer_read_u8, ldns_buffer_read_u16_at, ldns_buffer_read_u16, ldns_buffer_read_u32_at, ldns_buffer_read_u32. And perldoc Net::DNS, RFC1034, RFC1035, RFC4033, RFC4034 and RFC4035.

REMARKS

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