IPnom Home • Manuals • FreeBSD

 FreeBSD Man Pages

Man Sections:Commands (1)System Calls (2)Library Functions (3)Device Drivers (4)File Formats (5)Miscellaneous (7)System Utilities (8)
Keyword Live Search (10 results max):
 Type in part of a command in the search box.
 


lwres_lwpacket_renderheader(3)

NAME

       lwres_lwpacket_renderheader,  lwres_lwpacket_parseheader  - lightweight
       resolver packet handling functions


SYNOPSIS

       #include <lwres/lwpacket.h>

       lwres_result_t lwres_lwpacket_renderheader(lwres_buffer_t *b,
       lwres_lwpacket_t *pkt);

       lwres_result_t lwres_lwpacket_parseheader(lwres_buffer_t *b,
       lwres_lwpacket_t *pkt);


DESCRIPTION

       These functions rely on a struct lwres_lwpacket	which  is  defined  in
       lwres/lwpacket.h.

       typedef struct lwres_lwpacket lwres_lwpacket_t;

       struct lwres_lwpacket {
	       lwres_uint32_t	       length;
	       lwres_uint16_t	       version;
	       lwres_uint16_t	       pktflags;
	       lwres_uint32_t	       serial;
	       lwres_uint32_t	       opcode;
	       lwres_uint32_t	       result;
	       lwres_uint32_t	       recvlength;
	       lwres_uint16_t	       authtype;
	       lwres_uint16_t	       authlength;
       };

       The elements of this structure are:

       length the  overall  packet length, including the entire packet header.
	      This field is filled in by the lwres_gabn_*() and lwres_gnba_*()
	      calls.

       version
	      the   header   format.  There  is  currently  only  one  format,
	      LWRES_LWPACKETVERSION_0.	 This  field  is  filled  in  by   the
	      lwres_gabn_*() and lwres_gnba_*() calls.

       pktflags
	      library-defined  flags for this packet: for instance whether the
	      packet is a request or a reply. Flag values can be set, but  not
	      defined  by the caller.  This field is filled in by the applica-
	      tion wit the exception of the  LWRES_LWPACKETFLAG_RESPONSE  bit,
	      which   is   set	by  the  library  in  the  lwres_gabn_*()  and
	      lwres_gnba_*() calls.

       serial is set by the requestor and is returned in all replies.  If  two
	      or more packets from the same source have the same serial number
	      and are from the same source, they are assumed to be  duplicates

       result is only valid  for  replies.   Results  between  0x04000000  and
	      0xffffffff  are application defined.  Results between 0x00000000
	      and 0x03ffffff are reserved for  library	use.   This  field  is
	      filled in by the lwres_gabn_*() and lwres_gnba_*() calls.

       recvlength
	      is  the  maximum	buffer	size  that  the receiver can handle on
	      requests and the size of the buffer needed to satisfy a  request
	      when  the  buffer  is too large for replies.  This field is sup-
	      plied by the application.

       authtype
	      defines the packet level authentication that is used.   Authori-
	      sation  types  between 0x1000 and 0xffff are application defined
	      and types between 0x0000 and 0x0fff  are	reserved  for  library
	      use.  Currently these are not used and must be zero.

       authlen
	      gives  the  length  of  the  authentication  data.  Since packet
	      authentication is currently not used, this must be zero.

       The following opcodes are currently defined:

       NOOP   Success is always returned and the packet contents  are  echoed.
	      The lwres_noop_*() functions should be used for this type.

       GETADDRSBYNAME
	      returns	all   known   addresses   for	a   given  name.   The
	      lwres_gabn_*() functions should be used for this type.

       GETNAMEBYADDR
	      return the hostname for the given address.   The	lwres_gnba_*()
	      functions should be used for this type.

       lwres_lwpacket_renderheader()  transfers  the  contents	of lightweight
       resolver packet structure lwres_lwpacket_t *pkt in network  byte  order
       to the lightweight resolver buffer, *b.

       lwres_lwpacket_parseheader() performs the converse operation. It trans-
       fers data in network byte order from buffer *b to resolver packet *pkt.
       The contents of the buffer b should correspond to a lwres_lwpacket_t.


RETURN VALUES

       Successful      calls	  to	 lwres_lwpacket_renderheader()	   and
       lwres_lwpacket_parseheader() return LWRES_R_SUCCESS. If there is insuf-
       ficient	space  to  copy  data  between	the  buffer *b and lightweight
       resolver packet *pkt both functions return LWRES_R_UNEXPECTEDEND.

BIND9				 Jun 30, 2000		       LWRES_PACKET(3)

SPONSORED LINKS




Man(1) output converted with man2html , sed , awk