diff options
Diffstat (limited to 'contrib/bind9/lib/lwres/man/lwres_buffer.docbook')
-rw-r--r-- | contrib/bind9/lib/lwres/man/lwres_buffer.docbook | 394 |
1 files changed, 0 insertions, 394 deletions
diff --git a/contrib/bind9/lib/lwres/man/lwres_buffer.docbook b/contrib/bind9/lib/lwres/man/lwres_buffer.docbook deleted file mode 100644 index f0b7a9f..0000000 --- a/contrib/bind9/lib/lwres/man/lwres_buffer.docbook +++ /dev/null @@ -1,394 +0,0 @@ -<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" - "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" - [<!ENTITY mdash "—">]> -<!-- - - Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC") - - Copyright (C) 2000, 2001 Internet Software Consortium. - - - - Permission to use, copy, modify, and/or distribute this software for any - - purpose with or without fee is hereby granted, provided that the above - - copyright notice and this permission notice appear in all copies. - - - - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH - - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, - - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - - PERFORMANCE OF THIS SOFTWARE. ---> - -<!-- $Id: lwres_buffer.docbook,v 1.4.18.6 2007/08/28 07:20:06 tbox Exp $ --> -<refentry> - <refentryinfo> - <date>Jun 30, 2000</date> - </refentryinfo> - - <refmeta> - <refentrytitle>lwres_buffer</refentrytitle> - <manvolnum>3</manvolnum> - <refmiscinfo>BIND9</refmiscinfo> - </refmeta> - - <docinfo> - <copyright> - <year>2004</year> - <year>2005</year> - <year>2007</year> - <holder>Internet Systems Consortium, Inc. ("ISC")</holder> - </copyright> - <copyright> - <year>2000</year> - <year>2001</year> - <holder>Internet Software Consortium.</holder> - </copyright> - </docinfo> - - <refnamediv> - <refname>lwres_buffer_init</refname> - <refname>lwres_buffer_invalidate</refname> - <refname>lwres_buffer_add</refname> - <refname>lwres_buffer_subtract</refname> - <refname>lwres_buffer_clear</refname> - <refname>lwres_buffer_first</refname> - <refname>lwres_buffer_forward</refname> - <refname>lwres_buffer_back</refname> - <refname>lwres_buffer_getuint8</refname> - <refname>lwres_buffer_putuint8</refname> - <refname>lwres_buffer_getuint16</refname> - <refname>lwres_buffer_putuint16</refname> - <refname>lwres_buffer_getuint32</refname> - <refname>lwres_buffer_putuint32</refname> - <refname>lwres_buffer_putmem</refname> - <refname>lwres_buffer_getmem</refname> - <refpurpose>lightweight resolver buffer management</refpurpose> - </refnamediv> - - <refsynopsisdiv> - - <funcsynopsis> -<funcsynopsisinfo> -#include <lwres/lwbuffer.h> -</funcsynopsisinfo> - -<funcprototype> - - <funcdef> -void -<function>lwres_buffer_init</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>void *<parameter>base</parameter></paramdef> - <paramdef>unsigned int <parameter>length</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_invalidate</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> -<funcprototype> - <funcdef> -void -<function>lwres_buffer_add</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>unsigned int <parameter>n</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_subtract</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>unsigned int <parameter>n</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_clear</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_first</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_forward</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>unsigned int <parameter>n</parameter></paramdef> - </funcprototype> -<funcprototype> - - <funcdef> -void -<function>lwres_buffer_back</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>unsigned int <parameter>n</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -lwres_uint8_t -<function>lwres_buffer_getuint8</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_putuint8</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>lwres_uint8_t <parameter>val</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -lwres_uint16_t -<function>lwres_buffer_getuint16</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_putuint16</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>lwres_uint16_t <parameter>val</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -lwres_uint32_t -<function>lwres_buffer_getuint32</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_putuint32</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>lwres_uint32_t <parameter>val</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_putmem</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>const unsigned char *<parameter>base</parameter></paramdef> - <paramdef>unsigned int <parameter>length</parameter></paramdef> - </funcprototype> - -<funcprototype> - <funcdef> -void -<function>lwres_buffer_getmem</function></funcdef> - <paramdef>lwres_buffer_t *<parameter>b</parameter></paramdef> - <paramdef>unsigned char *<parameter>base</parameter></paramdef> - <paramdef>unsigned int <parameter>length</parameter></paramdef> - </funcprototype> - -</funcsynopsis> - </refsynopsisdiv> - - <refsect1> - - <title>DESCRIPTION</title> - <para> - These functions provide bounds checked access to a region of memory - where data is being read or written. - They are based on, and similar to, the - <literal>isc_buffer_</literal> - functions in the ISC library. - </para> - <para> - A buffer is a region of memory, together with a set of related - subregions. - The <emphasis>used region</emphasis> and the - <emphasis>available</emphasis> region are disjoint, and - their union is the buffer's region. - The used region extends from the beginning of the buffer region to the - last used byte. - The available region extends from one byte greater than the last used - byte to the end of the buffer's region. - The size of the used region can be changed using various - buffer commands. - Initially, the used region is empty. - </para> - <para> - The used region is further subdivided into two disjoint regions: the - <emphasis>consumed region</emphasis> and the <emphasis>remaining region</emphasis>. - The union of these two regions is the used region. - The consumed region extends from the beginning of the used region to - the byte before the <emphasis>current</emphasis> offset (if any). - The <emphasis>remaining</emphasis> region the current pointer to the end - of the used - region. - The size of the consumed region can be changed using various - buffer commands. - Initially, the consumed region is empty. - </para> - <para> - The <emphasis>active region</emphasis> is an (optional) subregion of the - remaining - region. - It extends from the current offset to an offset in the - remaining region. - Initially, the active region is empty. - If the current offset advances beyond the chosen offset, - the active region will also be empty. - </para> - <para><programlisting> - /------------entire length---------------\\ - /----- used region -----\\/-- available --\\ - +----------------------------------------+ - | consumed | remaining | | - +----------------------------------------+ - a b c d e - </programlisting> - </para> - <para><programlisting> - a == base of buffer. - b == current pointer. Can be anywhere between a and d. - c == active pointer. Meaningful between b and d. - d == used pointer. - e == length of buffer. - </programlisting> - </para> - <para><programlisting> - a-e == entire length of buffer. - a-d == used region. - a-b == consumed region. - b-d == remaining region. - b-c == optional active region. -</programlisting> - </para> - <para><function>lwres_buffer_init()</function> - initializes the - <type>lwres_buffer_t</type> - <parameter>*b</parameter> - and assocates it with the memory region of size - <parameter>length</parameter> - bytes starting at location - <parameter>base.</parameter> - </para> - <para><function>lwres_buffer_invalidate()</function> - marks the buffer <parameter>*b</parameter> - as invalid. Invalidating a buffer after use is not required, - but makes it possible to catch its possible accidental use. - </para> - <para> - The functions - <function>lwres_buffer_add()</function> - and - <function>lwres_buffer_subtract()</function> - respectively increase and decrease the used space in - buffer - <parameter>*b</parameter> - by - <parameter>n</parameter> - bytes. - <function>lwres_buffer_add()</function> - checks for buffer overflow and - <function>lwres_buffer_subtract()</function> - checks for underflow. - These functions do not allocate or deallocate memory. - They just change the value of - <structfield>used</structfield>. - </para> - <para> - A buffer is re-initialised by - <function>lwres_buffer_clear()</function>. - The function sets - <structfield>used</structfield>, - <structfield>current</structfield> - and - <structfield>active</structfield> - to zero. - </para> - <para><function>lwres_buffer_first</function> - makes the consumed region of buffer - <parameter>*p</parameter> - empty by setting - <structfield>current</structfield> - to zero (the start of the buffer). - </para> - <para><function>lwres_buffer_forward()</function> - increases the consumed region of buffer - <parameter>*b</parameter> - by - <parameter>n</parameter> - bytes, checking for overflow. - Similarly, - <function>lwres_buffer_back()</function> - decreases buffer - <parameter>b</parameter>'s - consumed region by - <parameter>n</parameter> - bytes and checks for underflow. - </para> - <para><function>lwres_buffer_getuint8()</function> - reads an unsigned 8-bit integer from - <parameter>*b</parameter> - and returns it. - <function>lwres_buffer_putuint8()</function> - writes the unsigned 8-bit integer - <parameter>val</parameter> - to buffer - <parameter>*b</parameter>. - </para> - <para><function>lwres_buffer_getuint16()</function> - and - <function>lwres_buffer_getuint32()</function> - are identical to - <function>lwres_buffer_putuint8()</function> - except that they respectively read an unsigned 16-bit or 32-bit integer - in network byte order from - <parameter>b</parameter>. - Similarly, - <function>lwres_buffer_putuint16()</function> - and - <function>lwres_buffer_putuint32()</function> - writes the unsigned 16-bit or 32-bit integer - <parameter>val</parameter> - to buffer - <parameter>b</parameter>, - in network byte order. - </para> - <para> - Arbitrary amounts of data are read or written from a lightweight - resolver buffer with - <function>lwres_buffer_getmem()</function> - and - <function>lwres_buffer_putmem()</function> - respectively. - <function>lwres_buffer_putmem()</function> - copies - <parameter>length</parameter> - bytes of memory at - <parameter>base</parameter> - to - <parameter>b</parameter>. - Conversely, - <function>lwres_buffer_getmem()</function> - copies - <parameter>length</parameter> - bytes of memory from - <parameter>b</parameter> - to - <parameter>base</parameter>. - </para> - </refsect1> -</refentry><!-- - - Local variables: - - mode: sgml - - End: ---> |