diff options
author | ume <ume@FreeBSD.org> | 2001-06-10 20:25:24 +0000 |
---|---|---|
committer | ume <ume@FreeBSD.org> | 2001-06-10 20:25:24 +0000 |
commit | 32dc912febbf3960c47a0ebfd387977b2c78656b (patch) | |
tree | 262ae419994b75015819bd1f21a102e4d30832d2 /include | |
parent | 28fc250493cc9938edeed93280f363eeba7bcd2f (diff) | |
download | FreeBSD-src-32dc912febbf3960c47a0ebfd387977b2c78656b.zip FreeBSD-src-32dc912febbf3960c47a0ebfd387977b2c78656b.tar.gz |
Implement EDNS0 support, as EDNS0 support will be made mandatory for
IPv6 transport-ready resolvers/DNS servers. Need careful configuration
when enable it. (default config is not affected).
See manpage for details.
XXX visible symbol __res_opt() is added, however, it is not supposed to be
called from outside, libc minor is not bumped.
Obtained from: KAME/NetBSD
Diffstat (limited to 'include')
-rw-r--r-- | include/arpa/nameser.h | 1 | ||||
-rw-r--r-- | include/arpa/nameser_compat.h | 1 | ||||
-rw-r--r-- | include/resolv.h | 4 |
3 files changed, 6 insertions, 0 deletions
diff --git a/include/arpa/nameser.h b/include/arpa/nameser.h index 3e09c91..343e641 100644 --- a/include/arpa/nameser.h +++ b/include/arpa/nameser.h @@ -273,6 +273,7 @@ typedef enum __ns_type { ns_t_srv = 33, /* Server Selection. */ ns_t_atma = 34, /* ATM Address */ ns_t_naptr = 35, /* Naming Authority PoinTeR */ + ns_t_opt = 41, /* OPT pseudo-RR, RFC2761 */ /* Query type values which do not appear in resource records. */ ns_t_ixfr = 251, /* Incremental zone transfer. */ ns_t_axfr = 252, /* Transfer zone of authority. */ diff --git a/include/arpa/nameser_compat.h b/include/arpa/nameser_compat.h index 850fb8a..2321797 100644 --- a/include/arpa/nameser_compat.h +++ b/include/arpa/nameser_compat.h @@ -173,6 +173,7 @@ typedef struct { #define T_SRV ns_t_srv #define T_ATMA ns_t_atma #define T_NAPTR ns_t_naptr +#define T_OPT ns_t_opt #define T_IXFR ns_t_ixfr #define T_AXFR ns_t_axfr #define T_MAILB ns_t_mailb diff --git a/include/resolv.h b/include/resolv.h index 4a0cf74..a076c7e 100644 --- a/include/resolv.h +++ b/include/resolv.h @@ -150,6 +150,8 @@ struct __res_state_ext { #define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */ #define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */ #define RES_NOTLDQUERY 0x00004000 /* Don't query TLD names */ +/* KAME extensions: use higher bit to avoid conflict with ISC use */ +#define RES_USE_EDNS0 0x40000000 /* use EDNS0 */ #define RES_DEFAULT (RES_RECURSE | RES_DEFNAMES | RES_DNSRCH) @@ -249,6 +251,7 @@ extern const struct res_sym __p_type_syms[]; #define res_nameinquery __res_nameinquery #define res_queriesmatch __res_queriesmatch #define res_close __res_close +#define res_opt __res_opt #define res_mkupdate __res_mkupdate #define res_mkupdrec __res_mkupdrec #define res_freeupdrec __res_freeupdrec @@ -303,6 +306,7 @@ int res_nameinquery __P((const char *, int, int, int res_queriesmatch __P((const u_char *, const u_char *, const u_char *, const u_char *)); void res_close __P((void)); +int res_opt __P((int, u_char *, int, int)); const char * p_section __P((int, int)); /* XXX The following depend on the ns_updrec typedef in arpa/nameser.h */ #ifdef _ARPA_NAMESER_H_ |