lwres_packet.html revision c651f15b30f1dae5cc2f00878fb5da5b3a35a468
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews<!--
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
f0aad5341752aefe5059832f6cf3abc3283c6e16Tinderbox User - Copyright (C) 2000, 2001 Internet Software Consortium.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - Permission to use, copy, modify, and distribute this software for any
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - purpose with or without fee is hereby granted, provided that the above
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - copyright notice and this permission notice appear in all copies.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - PERFORMANCE OF THIS SOFTWARE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein-->
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<!-- $Id: lwres_packet.html,v 1.14 2005/04/07 03:50:04 marka Exp $ -->
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<HTML
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><HEAD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><TITLE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>lwres_packet</TITLE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><META
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinNAME="GENERATOR"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><BODY
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="REFENTRY"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox UserBGCOLOR="#FFFFFF"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTEXT="#000000"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLINK="#0000FF"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinVLINK="#840084"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox UserALINK="#0000FF"
1ca759b3f5c0672b2a66bc02288fe010cabbfe37Tinderbox User><H1
f0aad5341752aefe5059832f6cf3abc3283c6e16Tinderbox User><A
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinNAME="AEN1"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></A
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>lwres_packet</H1
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DIV
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="REFNAMEDIV"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><A
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinNAME="AEN8"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></A
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><H2
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>Name</H2
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>lwres_lwpacket_renderheader, lwres_lwpacket_parseheader&nbsp;--&nbsp;lightweight resolver packet handling functions</DIV
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DIV
010a51c427bfb6ab658fc0056955a1a5b69810beTinderbox UserCLASS="REFSYNOPSISDIV"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><A
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserNAME="AEN12"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></A
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><H2
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>Synopsis</H2
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DIV
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="FUNCSYNOPSIS"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><P
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews></P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><A
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserNAME="AEN13"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></A
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><PRE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCLASS="FUNCSYNOPSISINFO"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>#include &lt;lwres/lwpacket.h&gt;</PRE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="FUNCDEF"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>lwres_result_t
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox Userlwres_lwpacket_renderheader</CODE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>(lwres_buffer_t *b, lwres_lwpacket_t *pkt);</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><CODE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCLASS="FUNCDEF"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>lwres_result_t
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlwres_lwpacket_parseheader</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>(lwres_buffer_t *b, lwres_lwpacket_t *pkt);</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DIV
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DIV
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DIV
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCLASS="REFSECT1"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><A
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntNAME="AEN25"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></A
2b4d1b54f6ca406b8233d9e6fea9593df6dad035Tinderbox User><H2
2b4d1b54f6ca406b8233d9e6fea9593df6dad035Tinderbox User>DESCRIPTION</H2
2b4d1b54f6ca406b8233d9e6fea9593df6dad035Tinderbox User><P
2b4d1b54f6ca406b8233d9e6fea9593df6dad035Tinderbox User>These functions rely on a
2b4d1b54f6ca406b8233d9e6fea9593df6dad035Tinderbox User<SPAN
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="TYPE"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>struct lwres_lwpacket</SPAN
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Huntwhich is defined in
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<TT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCLASS="FILENAME"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>lwres/lwpacket.h</TT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>.
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt<PRE
6f64d4ab8e68f9b2333bcbfc755396d29a4a9d7cAutomatic UpdaterCLASS="PROGRAMLISTING"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User>typedef struct lwres_lwpacket lwres_lwpacket_t;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox Userstruct lwres_lwpacket {
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint32_t length;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint16_t version;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint16_t pktflags;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint32_t serial;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint32_t opcode;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint32_t result;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint32_t recvlength;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint16_t authtype;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User lwres_uint16_t authlength;
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User};</PRE
6f64d4ab8e68f9b2333bcbfc755396d29a4a9d7cAutomatic Updater></P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><P
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater>The elements of this structure are:
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User<P
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User></P
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User><DIV
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="VARIABLELIST"
bbbf2e27d3a981163dab139497d6b2dc85449db0Tinderbox User><DL
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DT
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><CODE
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox UserCLASS="CONSTANT"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User>length</CODE
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User></DT
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DD
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><P
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater>the overall packet length, including the entire packet header.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThis field is filled in by the lwres_gabn_*() and lwres_gnba_*()
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updatercalls.</P
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User></DD
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DT
bcf15a19ae0efa72a22cdfb50666a3c6ce39eb9fTinderbox User><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="CONSTANT"
bcf15a19ae0efa72a22cdfb50666a3c6ce39eb9fTinderbox User>version</CODE
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User></DT
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DD
983df82baf1d7d0b668c98cf45928a19f175c6e7Tinderbox User><P
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User>the header format. There is currently only one format,
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User<SPAN
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox UserCLASS="TYPE"
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User>LWRES_LWPACKETVERSION_0</SPAN
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User>.
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserThis field is filled in by the lwres_gabn_*() and lwres_gnba_*()
983df82baf1d7d0b668c98cf45928a19f175c6e7Tinderbox Usercalls.</P
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User></DD
260e8e04b0dc24cb884c789b5d9eb046457f264eTinderbox User><DT
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="CONSTANT"
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews>pktflags</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DD
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>library-defined flags for this packet: for instance whether the packet
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrewsis a request or a reply. Flag values can be set, but not defined by
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinthe caller.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThis field is filled in by the application wit the exception of the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLWRES_LWPACKETFLAG_RESPONSE bit, which is set by the library in the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Huntlwres_gabn_*() and lwres_gnba_*() calls.</P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="CONSTANT"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>serial</CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DT
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DD
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>is set by the requestor and is returned in all replies. If two or more
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinpackets from the same source have the same serial number and are from
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox Userthe same source, they are assumed to be duplicates and the latter ones
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox Usermay be dropped.
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserThis field must be set by the application.</P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DD
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><CODE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCLASS="CONSTANT"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>opcode</CODE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>indicates the operation.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntOpcodes between 0x00000000 and 0x03ffffff are
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinreserved for use by the lightweight resolver library. Opcodes between
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt0x04000000 and 0xffffffff are application defined.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThis field is filled in by the lwres_gabn_*() and lwres_gnba_*()
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincalls.</P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DD
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DT
a1ad6695ed6f988406cf155aa26376f84f73bcb9Automatic Updater><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="CONSTANT"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>result</CODE
2895f101b5585a19015ac2c2c1e1812ac467fa12Automatic Updater></DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DD
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>is only valid for replies.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntResults between 0x04000000 and 0xffffffff are application defined.
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserResults between 0x00000000 and 0x03ffffff are reserved for library use.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThis field is filled in by the lwres_gabn_*() and lwres_gnba_*()
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeincalls.</P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="CONSTANT"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>recvlength</CODE
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DD
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>is the maximum buffer size that the receiver can handle on requests
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox Userand the size of the buffer needed to satisfy a request when the buffer
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Huntis too large for replies.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThis field is supplied by the application.</P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DD
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="CONSTANT"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>authtype</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></DT
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews><DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>defines the packet level authentication that is used.
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserAuthorisation types between 0x1000 and 0xffff are application defined
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinand types between 0x0000 and 0x0fff are reserved for library use.
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserCurrently these are not used and must be zero.</P
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User></DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCLASS="CONSTANT"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>authlen</CODE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></DT
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User><DD
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><P
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User>gives the length of the authentication data.
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox UserSince packet authentication is currently not used, this must be zero.</P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein></DD
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User></DL
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DIV
1ca759b3f5c0672b2a66bc02288fe010cabbfe37Tinderbox User></P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>The following opcodes are currently defined:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt<P
a1ff871f78b7d907d6fc3a382beea2a640fe8423Tinderbox User></P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DIV
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="VARIABLELIST"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DL
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="CONSTANT"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>NOOP</CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DT
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User><DD
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User><P
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User>Success is always returned and the packet contents are echoed.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThe lwres_noop_*() functions should be used for this type.</P
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt></DD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein><DT
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt><CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="CONSTANT"
af40ebed6257e4ac1996144530b3de317cf4da11Tinderbox User>GETADDRSBYNAME</CODE
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater></DT
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User><DD
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User><P
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User>returns all known addresses for a given name.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntThe lwres_gabn_*() functions should be used for this type.</P
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater></DD
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DT
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><CODE
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox UserCLASS="CONSTANT"
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User>GETNAMEBYADDR</CODE
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User></DT
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><DD
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User><P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein>return the hostname for the given address.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinThe lwres_gnba_*() functions should be used for this type.</P
cd32f419a8a5432fbb139f56ee73cbf68b9350ccTinderbox User></DD
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews></DL
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews></DIV
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews></P
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews><P
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews><CODE
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox UserCLASS="FUNCTION"
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox User>lwres_lwpacket_renderheader()</CODE
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox User> transfers the
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrewscontents of lightweight resolver packet structure
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews<SPAN
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsCLASS="TYPE"
e108f2ec640e1acb54999c0ade58af606149956dTinderbox User>lwres_lwpacket_t</SPAN
6d382c9fcec316a84a237779fb64bb471b6f9d43Tinderbox User> <CODE
6d382c9fcec316a84a237779fb64bb471b6f9d43Tinderbox UserCLASS="PARAMETER"
7e71f05d8643aca84914437c900cb716444507e4Tinderbox User>*pkt</CODE
7e71f05d8643aca84914437c900cb716444507e4Tinderbox User> in network
7e71f05d8643aca84914437c900cb716444507e4Tinderbox Userbyte order to the lightweight resolver buffer,
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox User<CODE
f9aef05653eeb454c489d5bd2bde6daab774ad4aTinderbox UserCLASS="PARAMETER"
f9aef05653eeb454c489d5bd2bde6daab774ad4aTinderbox User>*b</CODE
f9aef05653eeb454c489d5bd2bde6daab774ad4aTinderbox User>.</P
f9aef05653eeb454c489d5bd2bde6daab774ad4aTinderbox User><P
f9aef05653eeb454c489d5bd2bde6daab774ad4aTinderbox User><CODE
922312472e2e05ebc64993d465999c5351b83036Automatic UpdaterCLASS="FUNCTION"
922312472e2e05ebc64993d465999c5351b83036Automatic Updater>lwres_lwpacket_parseheader()</CODE
922312472e2e05ebc64993d465999c5351b83036Automatic Updater> performs the
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox Userconverse operation. It transfers data in network byte order from
50066670817cdf9e86c832066d73715232b29680Tinderbox Userbuffer <CODE
50066670817cdf9e86c832066d73715232b29680Tinderbox UserCLASS="PARAMETER"
28b3569d6248168e6c00caab951521cc8141a49dAutomatic Updater>*b</CODE
28b3569d6248168e6c00caab951521cc8141a49dAutomatic Updater> to resolver packet
28b3569d6248168e6c00caab951521cc8141a49dAutomatic Updater<CODE
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsCLASS="PARAMETER"
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews>*pkt</CODE
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews>. The contents of the buffer
7e71f05d8643aca84914437c900cb716444507e4Tinderbox User<CODE
7e71f05d8643aca84914437c900cb716444507e4Tinderbox UserCLASS="PARAMETER"
7e71f05d8643aca84914437c900cb716444507e4Tinderbox User>b</CODE
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox User> should correspond to a
2cbb4ab75757fbb656997a82c14ca07db37d481aAutomatic Updater<SPAN
2cbb4ab75757fbb656997a82c14ca07db37d481aAutomatic UpdaterCLASS="TYPE"
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox User>lwres_lwpacket_t</SPAN
0a7ed88633a680bb881868b75ded4d09a7bbbc50Automatic Updater>.</P
0a7ed88633a680bb881868b75ded4d09a7bbbc50Automatic Updater></DIV
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews><DIV
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsCLASS="REFSECT1"
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews><A
c3dc968140ab7f04795acc7835e4e89ccb0c0a27Tinderbox UserNAME="AEN107"
c3dc968140ab7f04795acc7835e4e89ccb0c0a27Tinderbox User></A
c3dc968140ab7f04795acc7835e4e89ccb0c0a27Tinderbox User><H2
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>RETURN VALUES</H2
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews><P
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews> Successful calls to
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt<CODE
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsCLASS="FUNCTION"
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews>lwres_lwpacket_renderheader()</CODE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt> and
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews<CODE
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsCLASS="FUNCTION"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt>lwres_lwpacket_parseheader()</CODE
ad8f23aed6c75f94f238c1f23f4e17515d28eb55Tinderbox User> return
ad8f23aed6c75f94f238c1f23f4e17515d28eb55Tinderbox User<SPAN
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCLASS="ERRORCODE"
ad8f23aed6c75f94f238c1f23f4e17515d28eb55Tinderbox User>LWRES_R_SUCCESS</SPAN
ad8f23aed6c75f94f238c1f23f4e17515d28eb55Tinderbox User>. If there is insufficient
e2e4d321999340802f77adaacd19c797d04b4b95Automatic Updaterspace to copy data between the buffer <CODE
e2e4d321999340802f77adaacd19c797d04b4b95Automatic UpdaterCLASS="PARAMETER"
e2e4d321999340802f77adaacd19c797d04b4b95Automatic Updater>*b</CODE
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox User> and
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox Userlightweight resolver packet <CODE
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox UserCLASS="PARAMETER"
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox User>*pkt</CODE
1e9517ea2156b990be21f44676d3370318eacf17Tinderbox User> both functions
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox Userreturn <SPAN
b6b8f8a0362da8c749021c4b6376cfb96047912bTinderbox UserCLASS="ERRORCODE"
b6b8f8a0362da8c749021c4b6376cfb96047912bTinderbox User>LWRES_R_UNEXPECTEDEND</SPAN
0c6ada0a814f3c5417daa1654129bc2af56ed504Automatic Updater>.</P
0c6ada0a814f3c5417daa1654129bc2af56ed504Automatic Updater></DIV
0c6ada0a814f3c5417daa1654129bc2af56ed504Automatic Updater></BODY
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews></HTML
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews>
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews