ISC DHCP  4.3.4
A reference DHCPv4 and DHCPv6 implementation
nameser.h File Reference

Go to the source code of this file.

Data Structures

struct  __ns_msg
 
struct  _ns_flagdata
 
struct  __ns_rr
 
struct  ns_tsig_key
 
struct  ns_tcp_tsig_state
 

Macros

#define __NAMESER   19991006 /* New interface version stamp. */
 
#define NS_PACKETSZ   512 /* maximum packet size */
 
#define NS_MAXDNAME   1025 /* maximum domain name */
 
#define NS_MAXCDNAME   255 /* maximum compressed domain name */
 
#define NS_MAXLABEL   63 /* maximum length of domain label */
 
#define NS_HFIXEDSZ   12 /* #/bytes of fixed data in header */
 
#define NS_QFIXEDSZ   4 /* #/bytes of fixed data in query */
 
#define NS_RRFIXEDSZ   10 /* #/bytes of fixed data in r record */
 
#define NS_INT32SZ   4 /* #/bytes of data in a u_int32_t */
 
#define NS_INT16SZ   2 /* #/bytes of data in a u_int16_t */
 
#define NS_INT8SZ   1 /* #/bytes of data in a u_int8_t */
 
#define NS_INADDRSZ   4 /* IPv4 T_A */
 
#define NS_IN6ADDRSZ   16 /* IPv6 T_AAAA */
 
#define NS_CMPRSFLGS   0xc0 /* Flag bits indicating name compression. */
 
#define NS_DEFAULTPORT   53 /* For both TCP and UDP. */
 
#define ns_msg_getflag(handle, flag)
 
#define ns_msg_id(handle)   ((handle)._id + 0)
 
#define ns_msg_base(handle)   ((handle)._msg + 0)
 
#define ns_msg_end(handle)   ((handle)._eom + 0)
 
#define ns_msg_size(handle)   ((handle)._eom - (handle)._msg)
 
#define ns_msg_count(handle, section)   ((handle)._counts[section] + 0)
 
#define ns_rr_name(rr)   (((rr).name[0] != '\0') ? (rr).name : ".")
 
#define ns_rr_type(rr)   ((ns_type)((rr).type + 0))
 
#define ns_rr_class(rr)   ((ns_class)((rr).rr_class + 0))
 
#define ns_rr_ttl(rr)   ((rr).ttl + 0)
 
#define ns_rr_rdlen(rr)   ((rr).rdlength + 0)
 
#define ns_rr_rdata(rr)   ((rr).rdata + 0)
 
#define NS_TSIG_FUDGE   300
 
#define NS_TSIG_TCP_COUNT   100
 
#define NS_TSIG_ALG_HMAC_MD5   "HMAC-MD5.SIG-ALG.REG.INT"
 
#define NS_TSIG_ERROR_NO_TSIG   -10
 
#define NS_TSIG_ERROR_NO_SPACE   -11
 
#define NS_TSIG_ERROR_FORMERR   -12
 
#define ns_t_qt_p(t)
 
#define ns_t_mrr_p(t)   ((t) == ns_t_tsig || (t) == ns_t_opt)
 
#define ns_t_rr_p(t)   (!ns_t_qt_p(t) && !ns_t_mrr_p(t))
 
#define ns_t_udp_p(t)   ((t) != ns_t_axfr && (t) != ns_t_zxfr)
 
#define ns_t_xfr_p(t)
 
#define NS_KEY_TYPEMASK   0xC000 /* Mask for "type" bits */
 
#define NS_KEY_TYPE_AUTH_CONF   0x0000 /* Key usable for both */
 
#define NS_KEY_TYPE_CONF_ONLY   0x8000 /* Key usable for confidentiality */
 
#define NS_KEY_TYPE_AUTH_ONLY   0x4000 /* Key usable for authentication */
 
#define NS_KEY_TYPE_NO_KEY   0xC000 /* No key usable for either; no key */
 
#define NS_KEY_NO_AUTH   0x8000 /* Key unusable for authentication */
 
#define NS_KEY_NO_CONF   0x4000 /* Key unusable for confidentiality */
 
#define NS_KEY_RESERVED2   0x2000 /* Security is *mandatory* if bit=0 */
 
#define NS_KEY_EXTENDED_FLAGS   0x1000 /* reserved - must be zero */
 
#define NS_KEY_RESERVED4   0x0800 /* reserved - must be zero */
 
#define NS_KEY_RESERVED5   0x0400 /* reserved - must be zero */
 
#define NS_KEY_NAME_TYPE   0x0300 /* these bits determine the type */
 
#define NS_KEY_NAME_USER   0x0000 /* key is assoc. with user */
 
#define NS_KEY_NAME_ENTITY   0x0200 /* key is assoc. with entity eg host */
 
#define NS_KEY_NAME_ZONE   0x0100 /* key is zone key */
 
#define NS_KEY_NAME_RESERVED   0x0300 /* reserved meaning */
 
#define NS_KEY_RESERVED8   0x0080 /* reserved - must be zero */
 
#define NS_KEY_RESERVED9   0x0040 /* reserved - must be zero */
 
#define NS_KEY_RESERVED10   0x0020 /* reserved - must be zero */
 
#define NS_KEY_RESERVED11   0x0010 /* reserved - must be zero */
 
#define NS_KEY_SIGNATORYMASK   0x000F /* key can sign RR's of same name */
 
#define NS_KEY_RESERVED_BITMASK
 
#define NS_KEY_RESERVED_BITMASK2   0xFFFF /* no bits defined here */
 
#define NS_ALG_MD5RSA   1 /* MD5 with RSA */
 
#define NS_ALG_DH   2 /* Diffie Hellman KEY */
 
#define NS_ALG_DSA   3 /* DSA KEY */
 
#define NS_ALG_DSS   NS_ALG_DSA
 
#define NS_ALG_EXPIRE_ONLY   253 /* No alg, no security */
 
#define NS_ALG_PRIVATE_OID   254 /* Key begins with OID giving alg */
 
#define NS_KEY_PROT_TLS   1
 
#define NS_KEY_PROT_EMAIL   2
 
#define NS_KEY_PROT_DNSSEC   3
 
#define NS_KEY_PROT_IPSEC   4
 
#define NS_KEY_PROT_ANY   255
 
#define NS_MD5RSA_MIN_BITS   512 /* Size of a mod or exp in bits */
 
#define NS_MD5RSA_MAX_BITS   2552
 
#define NS_MD5RSA_MAX_BYTES   ((NS_MD5RSA_MAX_BITS+7/8)*2+3)
 
#define NS_MD5RSA_MAX_BASE64   (((NS_MD5RSA_MAX_BYTES+2)/3)*4)
 
#define NS_MD5RSA_MIN_SIZE   ((NS_MD5RSA_MIN_BITS+7)/8)
 
#define NS_MD5RSA_MAX_SIZE   ((NS_MD5RSA_MAX_BITS+7)/8)
 
#define NS_DSA_SIG_SIZE   41
 
#define NS_DSA_MIN_SIZE   213
 
#define NS_DSA_MAX_BYTES   405
 
#define NS_SIG_TYPE   0 /* Type flags */
 
#define NS_SIG_ALG   2 /* Algorithm */
 
#define NS_SIG_LABELS   3 /* How many labels in name */
 
#define NS_SIG_OTTL   4 /* Original TTL */
 
#define NS_SIG_EXPIR   8 /* Expiration time */
 
#define NS_SIG_SIGNED   12 /* Signature time */
 
#define NS_SIG_FOOT   16 /* Key footprint */
 
#define NS_SIG_SIGNER   18 /* Domain name of who signed it */
 
#define NS_NXT_BITS   8
 
#define NS_NXT_BIT_SET( n, p)   (p[(n)/NS_NXT_BITS] |= (0x80>>((n)%NS_NXT_BITS)))
 
#define NS_NXT_BIT_CLEAR(n, p)   (p[(n)/NS_NXT_BITS] &= ~(0x80>>((n)%NS_NXT_BITS)))
 
#define NS_NXT_BIT_ISSET(n, p)   (p[(n)/NS_NXT_BITS] & (0x80>>((n)%NS_NXT_BITS)))
 
#define NS_NXT_MAX   127
 
#define NS_GET16(s, cp)
 
#define NS_GET32(l, cp)
 
#define NS_PUT16(s, cp)
 
#define NS_PUT32(l, cp)
 

Typedefs

typedef enum __ns_sect ns_sect
 
typedef struct __ns_msg ns_msg
 
typedef struct __ns_rr ns_rr
 
typedef enum __ns_flag ns_flag
 
typedef enum __ns_opcode ns_opcode
 
typedef enum __ns_rcode ns_rcode
 
typedef enum __ns_update_operation ns_update_operation
 
typedef struct ns_tsig_key ns_tsig_key
 
typedef struct ns_tcp_tsig_state ns_tcp_tsig_state
 
typedef enum __ns_type ns_type
 
typedef enum __ns_class ns_class
 
typedef enum __ns_key_types ns_key_types
 
typedef enum __ns_cert_types ns_cert_types
 

Enumerations

enum  __ns_sect {
  ns_s_qd = 0, ns_s_zn = 0, ns_s_an = 1, ns_s_pr = 1,
  ns_s_ns = 2, ns_s_ud = 2, ns_s_ar = 3, ns_s_max = 4
}
 
enum  __ns_flag {
  ns_f_qr, ns_f_opcode, ns_f_aa, ns_f_tc,
  ns_f_rd, ns_f_ra, ns_f_z, ns_f_ad,
  ns_f_cd, ns_f_rcode, ns_f_max
}
 
enum  __ns_opcode {
  ns_o_query = 0, ns_o_iquery = 1, ns_o_status = 2, ns_o_notify = 4,
  ns_o_update = 5, ns_o_max = 6
}
 
enum  __ns_rcode {
  ns_r_noerror = 0, ns_r_formerr = 1, ns_r_servfail = 2, ns_r_nxdomain = 3,
  ns_r_notimpl = 4, ns_r_refused = 5, ns_r_yxdomain = 6, ns_r_yxrrset = 7,
  ns_r_nxrrset = 8, ns_r_notauth = 9, ns_r_notzone = 10, ns_r_max = 11,
  ns_r_badsig = 16, ns_r_badkey = 17, ns_r_badtime = 18
}
 
enum  __ns_update_operation { ns_uop_delete = 0, ns_uop_add = 1, ns_uop_max = 2 }
 
enum  __ns_type {
  ns_t_invalid = 0, ns_t_a = 1, ns_t_ns = 2, ns_t_md = 3,
  ns_t_mf = 4, ns_t_cname = 5, ns_t_soa = 6, ns_t_mb = 7,
  ns_t_mg = 8, ns_t_mr = 9, ns_t_null = 10, ns_t_wks = 11,
  ns_t_ptr = 12, ns_t_hinfo = 13, ns_t_minfo = 14, ns_t_mx = 15,
  ns_t_txt = 16, ns_t_rp = 17, ns_t_afsdb = 18, ns_t_x25 = 19,
  ns_t_isdn = 20, ns_t_rt = 21, ns_t_nsap = 22, ns_t_nsap_ptr = 23,
  ns_t_sig = 24, ns_t_key = 25, ns_t_px = 26, ns_t_gpos = 27,
  ns_t_aaaa = 28, ns_t_loc = 29, ns_t_nxt = 30, ns_t_eid = 31,
  ns_t_nimloc = 32, ns_t_srv = 33, ns_t_atma = 34, ns_t_naptr = 35,
  ns_t_kx = 36, ns_t_cert = 37, ns_t_a6 = 38, ns_t_dname = 39,
  ns_t_sink = 40, ns_t_opt = 41, ns_t_tsig = 250, ns_t_ixfr = 251,
  ns_t_axfr = 252, ns_t_mailb = 253, ns_t_maila = 254, ns_t_any = 255,
  ns_t_zxfr = 256, ns_t_max = 65536
}
 
enum  __ns_class {
  ns_c_invalid = 0, ns_c_in = 1, ns_c_2 = 2, ns_c_chaos = 3,
  ns_c_hs = 4, ns_c_none = 254, ns_c_any = 255, ns_c_max = 65536
}
 
enum  __ns_key_types { ns_kt_rsa = 1, ns_kt_dh = 2, ns_kt_dsa = 3, ns_kt_private = 254 }
 
enum  __ns_cert_types {
  cert_t_pkix = 1, cert_t_spki = 2, cert_t_pgp = 3, cert_t_url = 253,
  cert_t_oid = 254
}
 

Variables

struct _ns_flagdata _ns_flagdata []
 

Macro Definition Documentation

#define __NAMESER   19991006 /* New interface version stamp. */

Definition at line 68 of file nameser.h.

#define NS_ALG_DH   2 /* Diffie Hellman KEY */

Definition at line 377 of file nameser.h.

#define NS_ALG_DSA   3 /* DSA KEY */

Definition at line 378 of file nameser.h.

#define NS_ALG_DSS   NS_ALG_DSA

Definition at line 379 of file nameser.h.

#define NS_ALG_EXPIRE_ONLY   253 /* No alg, no security */

Definition at line 380 of file nameser.h.

#define NS_ALG_MD5RSA   1 /* MD5 with RSA */

Definition at line 376 of file nameser.h.

#define NS_ALG_PRIVATE_OID   254 /* Key begins with OID giving alg */

Definition at line 381 of file nameser.h.

#define NS_CMPRSFLGS   0xc0 /* Flag bits indicating name compression. */

Definition at line 85 of file nameser.h.

#define NS_DEFAULTPORT   53 /* For both TCP and UDP. */

Definition at line 86 of file nameser.h.

#define NS_DSA_MAX_BYTES   405

Definition at line 403 of file nameser.h.

#define NS_DSA_MIN_SIZE   213

Definition at line 402 of file nameser.h.

#define NS_DSA_SIG_SIZE   41

Definition at line 401 of file nameser.h.

#define NS_GET16 (   s,
  cp 
)
Value:
do { \
register u_int8_t *t_cp = (u_int8_t *)(cp); \
(s) = ((u_int16_t)t_cp[0] << 8) \
| ((u_int16_t)t_cp[1]) \
; \
(cp) += NS_INT16SZ; \
} while (0)
#define NS_INT16SZ
Definition: nameser.h:81

Definition at line 425 of file nameser.h.

#define NS_GET32 (   l,
  cp 
)
Value:
do { \
register u_int8_t *t_cp = (u_int8_t *)(cp); \
(l) = ((u_int32_t)t_cp[0] << 24) \
| ((u_int32_t)t_cp[1] << 16) \
| ((u_int32_t)t_cp[2] << 8) \
| ((u_int32_t)t_cp[3]) \
; \
(cp) += NS_INT32SZ; \
} while (0)
#define NS_INT32SZ
Definition: nameser.h:80

Definition at line 433 of file nameser.h.

#define NS_HFIXEDSZ   12 /* #/bytes of fixed data in header */

Definition at line 77 of file nameser.h.

#define NS_IN6ADDRSZ   16 /* IPv6 T_AAAA */

Definition at line 84 of file nameser.h.

#define NS_INADDRSZ   4 /* IPv4 T_A */

Definition at line 83 of file nameser.h.

#define NS_INT16SZ   2 /* #/bytes of data in a u_int16_t */

Definition at line 81 of file nameser.h.

#define NS_INT32SZ   4 /* #/bytes of data in a u_int32_t */

Definition at line 80 of file nameser.h.

#define NS_INT8SZ   1 /* #/bytes of data in a u_int8_t */

Definition at line 82 of file nameser.h.

#define NS_KEY_EXTENDED_FLAGS   0x1000 /* reserved - must be zero */

Definition at line 353 of file nameser.h.

#define NS_KEY_NAME_ENTITY   0x0200 /* key is assoc. with entity eg host */

Definition at line 358 of file nameser.h.

#define NS_KEY_NAME_RESERVED   0x0300 /* reserved meaning */

Definition at line 360 of file nameser.h.

#define NS_KEY_NAME_TYPE   0x0300 /* these bits determine the type */

Definition at line 356 of file nameser.h.

#define NS_KEY_NAME_USER   0x0000 /* key is assoc. with user */

Definition at line 357 of file nameser.h.

#define NS_KEY_NAME_ZONE   0x0100 /* key is zone key */

Definition at line 359 of file nameser.h.

#define NS_KEY_NO_AUTH   0x8000 /* Key unusable for authentication */

Definition at line 350 of file nameser.h.

#define NS_KEY_NO_CONF   0x4000 /* Key unusable for confidentiality */

Definition at line 351 of file nameser.h.

#define NS_KEY_PROT_ANY   255

Definition at line 389 of file nameser.h.

#define NS_KEY_PROT_DNSSEC   3

Definition at line 387 of file nameser.h.

#define NS_KEY_PROT_EMAIL   2

Definition at line 386 of file nameser.h.

#define NS_KEY_PROT_IPSEC   4

Definition at line 388 of file nameser.h.

#define NS_KEY_PROT_TLS   1

Definition at line 385 of file nameser.h.

#define NS_KEY_RESERVED10   0x0020 /* reserved - must be zero */

Definition at line 363 of file nameser.h.

#define NS_KEY_RESERVED11   0x0010 /* reserved - must be zero */

Definition at line 364 of file nameser.h.

#define NS_KEY_RESERVED2   0x2000 /* Security is *mandatory* if bit=0 */

Definition at line 352 of file nameser.h.

#define NS_KEY_RESERVED4   0x0800 /* reserved - must be zero */

Definition at line 354 of file nameser.h.

#define NS_KEY_RESERVED5   0x0400 /* reserved - must be zero */

Definition at line 355 of file nameser.h.

#define NS_KEY_RESERVED8   0x0080 /* reserved - must be zero */

Definition at line 361 of file nameser.h.

#define NS_KEY_RESERVED9   0x0040 /* reserved - must be zero */

Definition at line 362 of file nameser.h.

#define NS_KEY_RESERVED_BITMASK
Value:
NS_KEY_RESERVED4 | \
NS_KEY_RESERVED5 | \
NS_KEY_RESERVED8 | \
NS_KEY_RESERVED9 | \
NS_KEY_RESERVED10 | \
#define NS_KEY_RESERVED11
Definition: nameser.h:364
#define NS_KEY_RESERVED2
Definition: nameser.h:352

Definition at line 366 of file nameser.h.

#define NS_KEY_RESERVED_BITMASK2   0xFFFF /* no bits defined here */

Definition at line 373 of file nameser.h.

#define NS_KEY_SIGNATORYMASK   0x000F /* key can sign RR's of same name */

Definition at line 365 of file nameser.h.

#define NS_KEY_TYPE_AUTH_CONF   0x0000 /* Key usable for both */

Definition at line 345 of file nameser.h.

#define NS_KEY_TYPE_AUTH_ONLY   0x4000 /* Key usable for authentication */

Definition at line 347 of file nameser.h.

#define NS_KEY_TYPE_CONF_ONLY   0x8000 /* Key usable for confidentiality */

Definition at line 346 of file nameser.h.

#define NS_KEY_TYPE_NO_KEY   0xC000 /* No key usable for either; no key */

Definition at line 348 of file nameser.h.

#define NS_KEY_TYPEMASK   0xC000 /* Mask for "type" bits */

Definition at line 344 of file nameser.h.

#define NS_MAXCDNAME   255 /* maximum compressed domain name */

Definition at line 75 of file nameser.h.

#define NS_MAXDNAME   1025 /* maximum domain name */

Definition at line 74 of file nameser.h.

#define NS_MAXLABEL   63 /* maximum length of domain label */

Definition at line 76 of file nameser.h.

#define NS_MD5RSA_MAX_BASE64   (((NS_MD5RSA_MAX_BYTES+2)/3)*4)

Definition at line 397 of file nameser.h.

#define NS_MD5RSA_MAX_BITS   2552

Definition at line 393 of file nameser.h.

#define NS_MD5RSA_MAX_BYTES   ((NS_MD5RSA_MAX_BITS+7/8)*2+3)

Definition at line 395 of file nameser.h.

#define NS_MD5RSA_MAX_SIZE   ((NS_MD5RSA_MAX_BITS+7)/8)

Definition at line 399 of file nameser.h.

#define NS_MD5RSA_MIN_BITS   512 /* Size of a mod or exp in bits */

Definition at line 392 of file nameser.h.

#define NS_MD5RSA_MIN_SIZE   ((NS_MD5RSA_MIN_BITS+7)/8)

Definition at line 398 of file nameser.h.

#define ns_msg_base (   handle)    ((handle)._msg + 0)

Definition at line 127 of file nameser.h.

#define ns_msg_count (   handle,
  section 
)    ((handle)._counts[section] + 0)

Definition at line 130 of file nameser.h.

#define ns_msg_end (   handle)    ((handle)._eom + 0)

Definition at line 128 of file nameser.h.

#define ns_msg_getflag (   handle,
  flag 
)
Value:
( \
((handle)._flags & _ns_flagdata[flag].mask) \
>> _ns_flagdata[flag].shift \
)

Definition at line 122 of file nameser.h.

#define ns_msg_id (   handle)    ((handle)._id + 0)

Definition at line 126 of file nameser.h.

#define ns_msg_size (   handle)    ((handle)._eom - (handle)._msg)

Definition at line 129 of file nameser.h.

#define NS_NXT_BIT_CLEAR (   n,
 
)    (p[(n)/NS_NXT_BITS] &= ~(0x80>>((n)%NS_NXT_BITS)))

Definition at line 418 of file nameser.h.

#define NS_NXT_BIT_ISSET (   n,
 
)    (p[(n)/NS_NXT_BITS] & (0x80>>((n)%NS_NXT_BITS)))

Definition at line 419 of file nameser.h.

#define NS_NXT_BIT_SET (   n,
 
)    (p[(n)/NS_NXT_BITS] |= (0x80>>((n)%NS_NXT_BITS)))

Definition at line 417 of file nameser.h.

#define NS_NXT_BITS   8

Definition at line 416 of file nameser.h.

#define NS_NXT_MAX   127

Definition at line 420 of file nameser.h.

#define NS_PACKETSZ   512 /* maximum packet size */

Definition at line 73 of file nameser.h.

#define NS_PUT16 (   s,
  cp 
)
Value:
do { \
register u_int16_t t_s = (u_int16_t)(s); \
register u_int8_t *t_cp = (u_int8_t *)(cp); \
*t_cp++ = t_s >> 8; \
*t_cp = t_s; \
(cp) += NS_INT16SZ; \
} while (0)
#define NS_INT16SZ
Definition: nameser.h:81

Definition at line 443 of file nameser.h.

#define NS_PUT32 (   l,
  cp 
)
Value:
do { \
register u_int32_t t_l = (u_int32_t)(l); \
register u_int8_t *t_cp = (u_int8_t *)(cp); \
*t_cp++ = t_l >> 24; \
*t_cp++ = t_l >> 16; \
*t_cp++ = t_l >> 8; \
*t_cp = t_l; \
(cp) += NS_INT32SZ; \
} while (0)
#define NS_INT32SZ
Definition: nameser.h:80

Definition at line 451 of file nameser.h.

#define NS_QFIXEDSZ   4 /* #/bytes of fixed data in query */

Definition at line 78 of file nameser.h.

#define ns_rr_class (   rr)    ((ns_class)((rr).rr_class + 0))

Definition at line 147 of file nameser.h.

#define ns_rr_name (   rr)    (((rr).name[0] != '\0') ? (rr).name : ".")

Definition at line 145 of file nameser.h.

#define ns_rr_rdata (   rr)    ((rr).rdata + 0)

Definition at line 150 of file nameser.h.

#define ns_rr_rdlen (   rr)    ((rr).rdlength + 0)

Definition at line 149 of file nameser.h.

#define ns_rr_ttl (   rr)    ((rr).ttl + 0)

Definition at line 148 of file nameser.h.

#define ns_rr_type (   rr)    ((ns_type)((rr).type + 0))

Definition at line 146 of file nameser.h.

#define NS_RRFIXEDSZ   10 /* #/bytes of fixed data in r record */

Definition at line 79 of file nameser.h.

#define NS_SIG_ALG   2 /* Algorithm */

Definition at line 407 of file nameser.h.

#define NS_SIG_EXPIR   8 /* Expiration time */

Definition at line 410 of file nameser.h.

#define NS_SIG_FOOT   16 /* Key footprint */

Definition at line 412 of file nameser.h.

#define NS_SIG_LABELS   3 /* How many labels in name */

Definition at line 408 of file nameser.h.

#define NS_SIG_OTTL   4 /* Original TTL */

Definition at line 409 of file nameser.h.

#define NS_SIG_SIGNED   12 /* Signature time */

Definition at line 411 of file nameser.h.

#define NS_SIG_SIGNER   18 /* Domain name of who signed it */

Definition at line 413 of file nameser.h.

#define NS_SIG_TYPE   0 /* Type flags */

Definition at line 406 of file nameser.h.

#define ns_t_mrr_p (   t)    ((t) == ns_t_tsig || (t) == ns_t_opt)

Definition at line 304 of file nameser.h.

#define ns_t_qt_p (   t)
Value:
(ns_t_xfr_p(t) || (t) == ns_t_any || \
(t) == ns_t_mailb || (t) == ns_t_maila)
#define ns_t_xfr_p(t)
Definition: nameser.h:308

Definition at line 301 of file nameser.h.

#define ns_t_rr_p (   t)    (!ns_t_qt_p(t) && !ns_t_mrr_p(t))

Definition at line 306 of file nameser.h.

#define ns_t_udp_p (   t)    ((t) != ns_t_axfr && (t) != ns_t_zxfr)

Definition at line 307 of file nameser.h.

#define ns_t_xfr_p (   t)
Value:
((t) == ns_t_axfr || (t) == ns_t_ixfr || \
(t) == ns_t_zxfr)

Definition at line 308 of file nameser.h.

#define NS_TSIG_ALG_HMAC_MD5   "HMAC-MD5.SIG-ALG.REG.INT"

Definition at line 238 of file nameser.h.

#define NS_TSIG_ERROR_FORMERR   -12

Definition at line 242 of file nameser.h.

#define NS_TSIG_ERROR_NO_SPACE   -11

Definition at line 241 of file nameser.h.

#define NS_TSIG_ERROR_NO_TSIG   -10

Definition at line 240 of file nameser.h.

#define NS_TSIG_FUDGE   300

Definition at line 236 of file nameser.h.

#define NS_TSIG_TCP_COUNT   100

Definition at line 237 of file nameser.h.

Typedef Documentation

typedef enum __ns_class ns_class
typedef enum __ns_flag ns_flag
typedef struct __ns_msg ns_msg
typedef enum __ns_opcode ns_opcode
typedef enum __ns_rcode ns_rcode
typedef struct __ns_rr ns_rr
typedef enum __ns_sect ns_sect

Definition at line 234 of file nameser.h.

typedef struct ns_tsig_key ns_tsig_key

Definition at line 222 of file nameser.h.

typedef enum __ns_type ns_type

Enumeration Type Documentation

Enumerator
cert_t_pkix 
cert_t_spki 
cert_t_pgp 
cert_t_url 
cert_t_oid 

Definition at line 335 of file nameser.h.

enum __ns_class
Enumerator
ns_c_invalid 
ns_c_in 
ns_c_2 
ns_c_chaos 
ns_c_hs 
ns_c_none 
ns_c_any 
ns_c_max 

Definition at line 314 of file nameser.h.

enum __ns_flag
Enumerator
ns_f_qr 
ns_f_opcode 
ns_f_aa 
ns_f_tc 
ns_f_rd 
ns_f_ra 
ns_f_z 
ns_f_ad 
ns_f_cd 
ns_f_rcode 
ns_f_max 

Definition at line 157 of file nameser.h.

Enumerator
ns_kt_rsa 
ns_kt_dh 
ns_kt_dsa 
ns_kt_private 

Definition at line 328 of file nameser.h.

Enumerator
ns_o_query 
ns_o_iquery 
ns_o_status 
ns_o_notify 
ns_o_update 
ns_o_max 

Definition at line 174 of file nameser.h.

enum __ns_rcode
Enumerator
ns_r_noerror 
ns_r_formerr 
ns_r_servfail 
ns_r_nxdomain 
ns_r_notimpl 
ns_r_refused 
ns_r_yxdomain 
ns_r_yxrrset 
ns_r_nxrrset 
ns_r_notauth 
ns_r_notzone 
ns_r_max 
ns_r_badsig 
ns_r_badkey 
ns_r_badtime 

Definition at line 187 of file nameser.h.

enum __ns_sect
Enumerator
ns_s_qd 
ns_s_zn 
ns_s_an 
ns_s_pr 
ns_s_ns 
ns_s_ud 
ns_s_ar 
ns_s_max 

Definition at line 92 of file nameser.h.

enum __ns_type
Enumerator
ns_t_invalid 
ns_t_a 
ns_t_ns 
ns_t_md 
ns_t_mf 
ns_t_cname 
ns_t_soa 
ns_t_mb 
ns_t_mg 
ns_t_mr 
ns_t_null 
ns_t_wks 
ns_t_ptr 
ns_t_hinfo 
ns_t_minfo 
ns_t_mx 
ns_t_txt 
ns_t_rp 
ns_t_afsdb 
ns_t_x25 
ns_t_isdn 
ns_t_rt 
ns_t_nsap 
ns_t_nsap_ptr 
ns_t_sig 
ns_t_key 
ns_t_px 
ns_t_gpos 
ns_t_aaaa 
ns_t_loc 
ns_t_nxt 
ns_t_eid 
ns_t_nimloc 
ns_t_srv 
ns_t_atma 
ns_t_naptr 
ns_t_kx 
ns_t_cert 
ns_t_a6 
ns_t_dname 
ns_t_sink 
ns_t_opt 
ns_t_tsig 
ns_t_ixfr 
ns_t_axfr 
ns_t_mailb 
ns_t_maila 
ns_t_any 
ns_t_zxfr 
ns_t_max 

Definition at line 247 of file nameser.h.

Enumerator
ns_uop_delete 
ns_uop_add 
ns_uop_max 

Definition at line 208 of file nameser.h.

Variable Documentation