Initial import from FreeBSD RELENG_4:
[games.git] / contrib / isc-dhcp / includes / minires / res_update.h
1 /*
2  * Copyright (c) 1999 by Internet Software Consortium, Inc.
3  *
4  * Permission to use, copy, modify, and distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
9  * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
10  * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
11  * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
12  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
13  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
14  * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
15  * SOFTWARE.
16  */
17
18 /*
19  *      $Id: res_update.h,v 1.2.2.1 2001/05/17 20:47:28 mellon Exp $
20  */
21
22 #ifndef __RES_UPDATE_H
23 #define __RES_UPDATE_H
24
25 #include <sys/types.h>
26 #include "arpa/nameser.h"
27 #include <isc-dhcp/list.h>
28
29 /*
30  * This RR-like structure is particular to UPDATE.
31  */
32 typedef struct ns_updrec {
33         ISC_LINK(struct ns_updrec) r_link, r_glink;
34         ns_sect r_section;              /* ZONE/PREREQUISITE/UPDATE */
35         char *r_dname;                  /* owner of the RR */
36         ns_class r_class;               /* class number */
37         ns_type r_type;                 /* type number */
38         u_int32_t r_ttl;                /* time to live */
39         const unsigned char *r_data;    /* rdata fields as text string */
40         unsigned char *r_data_ephem;    /* pointer to freeable r_data */
41         unsigned int r_size;            /* size of r_data field */
42         int r_opcode;                   /* type of operation */
43                 /* following fields for private use by the resolver/server
44                    routines */
45         struct databuf *r_dp;           /* databuf to process */
46         struct databuf *r_deldp;        /* databuf's deleted/overwritten */
47         unsigned int r_zone;            /* zone number on server */
48 } ns_updrec;
49 typedef ISC_LIST(ns_updrec) ns_updque;
50
51 #endif /*__RES_UPDATE_H*/