root / lab4 / .minix-src / include / res_update.h @ 14
History | View | Annotate | Download (2.41 KB)
1 | 13 | up20180614 | /* $NetBSD: res_update.h,v 1.8 2012/11/15 18:49:37 christos Exp $ */
|
---|---|---|---|
2 | |||
3 | /*
|
||
4 | * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
|
||
5 | * Copyright (c) 1999 by Internet Software Consortium, Inc.
|
||
6 | *
|
||
7 | * Permission to use, copy, modify, and distribute this software for any
|
||
8 | * purpose with or without fee is hereby granted, provided that the above
|
||
9 | * copyright notice and this permission notice appear in all copies.
|
||
10 | *
|
||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
|
||
12 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||
13 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
|
||
14 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||
15 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||
16 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||
17 | * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||
18 | */
|
||
19 | |||
20 | /*
|
||
21 | * Id: res_update.h,v 1.3 2005/04/27 04:56:15 sra Exp
|
||
22 | */
|
||
23 | |||
24 | #ifndef __RES_UPDATE_H
|
||
25 | #define __RES_UPDATE_H
|
||
26 | |||
27 | #include <sys/types.h> |
||
28 | #include <arpa/nameser.h> |
||
29 | #include <sys/queue.h> |
||
30 | #include <resolv.h> |
||
31 | |||
32 | /*%
|
||
33 | * This RR-like structure is particular to UPDATE.
|
||
34 | */
|
||
35 | struct ns_updrec {
|
||
36 | TAILQ_ENTRY(ns_updrec) r_link, r_glink; |
||
37 | ns_sect r_section; /*%< ZONE/PREREQUISITE/UPDATE */
|
||
38 | char * r_dname; /*%< owner of the RR */ |
||
39 | ns_class r_class; /*%< class number */
|
||
40 | ns_type r_type; /*%< type number */
|
||
41 | uint32_t r_ttl; /*%< time to live */
|
||
42 | u_char * r_data; /*%< rdata fields as text string */
|
||
43 | u_int r_size; /*%< size of r_data field */
|
||
44 | int r_opcode; /*%< type of operation */ |
||
45 | /* following fields for private use by the resolver/server routines */
|
||
46 | struct databuf *r_dp; /*%< databuf to process */ |
||
47 | struct databuf *r_deldp; /*%< databuf's deleted/overwritten */ |
||
48 | u_int r_zone; /*%< zone number on server */
|
||
49 | }; |
||
50 | typedef struct ns_updrec ns_updrec; |
||
51 | typedef TAILQ_HEAD(ns_updqueu, ns_updrec) ns_updque;
|
||
52 | |||
53 | #define res_mkupdate __res_mkupdate
|
||
54 | #define res_update __res_update
|
||
55 | #define res_mkupdrec __res_mkupdrec
|
||
56 | #define res_freeupdrec __res_freeupdrec
|
||
57 | #define res_nmkupdate __res_nmkupdate
|
||
58 | #define res_nupdate __res_nupdate
|
||
59 | |||
60 | int res_mkupdate(ns_updrec *, u_char *, int); |
||
61 | int res_update(ns_updrec *);
|
||
62 | ns_updrec * res_mkupdrec(int, const char *, u_int, u_int, u_long); |
||
63 | void res_freeupdrec(ns_updrec *);
|
||
64 | int res_nmkupdate(res_state, ns_updrec *, u_char *, int); |
||
65 | int res_nupdate(res_state, ns_updrec *, ns_tsig_key *);
|
||
66 | |||
67 | #endif /*__RES_UPDATE_H*/ |