libspf2 1.2.11
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
arpa_nameser.h File Reference
#include <sys/param.h>
Include dependency graph for arpa_nameser.h:
This graph shows which files directly or indirectly include this file:

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 __P(x)   x
 
#define dn_skipname   __dn_skipname
 
#define __NAMESER   19991006 /* New interface version stamp. */
 
#define NS_PACKETSZ   512 /* default UDP packet size */
 
#define NS_MAXDNAME   1025 /* maximum domain name */
 
#define NS_MAXMSG   65535 /* maximum message size */
 
#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_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   4096
 
#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_OPT_DNSSEC_OK   0x8000U
 
#define NS_GET16(s, cp)
 
#define NS_GET32(l, cp)
 
#define NS_PUT16(s, cp)
 
#define NS_PUT32(l, cp)
 
#define ns_msg_getflag   __ns_msg_getflag
 
#define ns_get16   __ns_get16
 
#define ns_get32   __ns_get32
 
#define ns_put16   __ns_put16
 
#define ns_put32   __ns_put32
 
#define ns_initparse   __ns_initparse
 
#define ns_skiprr   __ns_skiprr
 
#define ns_parserr   __ns_parserr
 
#define ns_sprintrr   __ns_sprintrr
 
#define ns_sprintrrf   __ns_sprintrrf
 
#define ns_format_ttl   __ns_format_ttl
 
#define ns_parse_ttl   __ns_parse_ttl
 
#define ns_datetosecs   __ns_datetosecs
 
#define ns_name_ntol   __ns_name_ntol
 
#define ns_name_ntop   __ns_name_ntop
 
#define ns_name_pton   __ns_name_pton
 
#define ns_name_unpack   __ns_name_unpack
 
#define ns_name_pack   __ns_name_pack
 
#define ns_name_compress   __ns_name_compress
 
#define ns_name_uncompress   __ns_name_uncompress
 
#define ns_name_skip   __ns_name_skip
 
#define ns_name_rollback   __ns_name_rollback
 
#define ns_sign   __ns_sign
 
#define ns_sign2   __ns_sign2
 
#define ns_sign_tcp   __ns_sign_tcp
 
#define ns_sign_tcp2   __ns_sign_tcp2
 
#define ns_sign_tcp_init   __ns_sign_tcp_init
 
#define ns_find_tsig   __ns_find_tsig
 
#define ns_verify   __ns_verify
 
#define ns_verify_tcp   __ns_verify_tcp
 
#define ns_verify_tcp_init   __ns_verify_tcp_init
 
#define ns_samedomain   __ns_samedomain
 
#define ns_subdomain   __ns_subdomain
 
#define ns_makecanon   __ns_makecanon
 
#define ns_samename   __ns_samename
 

Typedefs

typedef unsigned char u_int8_t
 
typedef unsigned short u_int16_t
 
typedef unsigned int u_int32_t
 

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_badvers = 16 , 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_apl = 42 , ns_t_tkey = 249 ,
  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
}
 

Functions

int dn_skipname __P ((const u_char *, const u_char *))
 
int ns_msg_getflag __P ((ns_msg, int))
 
u_int ns_get16 __P ((const u_char *))
 
void ns_put16 __P ((u_int, u_char *))
 
void ns_put32 __P ((u_long, u_char *))
 
int ns_initparse __P ((const u_char *, int, ns_msg *))
 
int ns_skiprr __P ((const u_char *, const u_char *, ns_sect, int))
 
int ns_parserr __P ((ns_msg *, ns_sect, int, ns_rr *))
 
int ns_sprintrr __P ((const ns_msg *, const ns_rr *, const char *, const char *, char *, size_t))
 
int ns_sprintrrf __P ((const u_char *, size_t, const char *, ns_class, ns_type, u_long, const u_char *, size_t, const char *, const char *, char *, size_t))
 
int ns_format_ttl __P ((u_long, char *, size_t))
 
int ns_parse_ttl __P ((const char *, u_long *))
 
u_int32_t ns_datetosecs __P ((const char *cp, int *errp))
 
int ns_name_ntol __P ((const u_char *, u_char *, size_t))
 
int ns_name_ntop __P ((const u_char *, char *, size_t))
 
int ns_name_pton __P ((const char *, u_char *, size_t))
 
int ns_name_unpack __P ((const u_char *, const u_char *, const u_char *, u_char *, size_t))
 
int ns_name_pack __P ((const u_char *, u_char *, int, const u_char **, const u_char **))
 
int ns_name_uncompress __P ((const u_char *, const u_char *, const u_char *, char *, size_t))
 
int ns_name_compress __P ((const char *, u_char *, size_t, const u_char **, const u_char **))
 
int ns_name_skip __P ((const u_char **, const u_char *))
 
void ns_name_rollback __P ((const u_char *, const u_char **, const u_char **))
 
int ns_sign __P ((u_char *, int *, int, int, void *, const u_char *, int, u_char *, int *, time_t))
 
int ns_sign2 __P ((u_char *, int *, int, int, void *, const u_char *, int, u_char *, int *, time_t, u_char **, u_char **))
 
int ns_sign_tcp __P ((u_char *, int *, int, int, ns_tcp_tsig_state *, int))
 
int ns_sign_tcp2 __P ((u_char *, int *, int, int, ns_tcp_tsig_state *, int, u_char **, u_char **))
 
int ns_sign_tcp_init __P ((void *, const u_char *, int, ns_tcp_tsig_state *))
 
u_char *ns_find_tsig __P ((u_char *, u_char *))
 
int ns_verify __P ((u_char *, int *, void *, const u_char *, int, u_char *, int *, time_t *, int))
 
int ns_verify_tcp __P ((u_char *, int *, ns_tcp_tsig_state *, int))
 
int ns_samedomain __P ((const char *, const char *))
 
int ns_makecanon __P ((const char *, char *, size_t))
 

Variables

struct _ns_flagdata _ns_flagdata []
 

Macro Definition Documentation

◆ __NAMESER

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

Definition at line 121 of file arpa_nameser.h.

◆ __P

#define __P (   x)    x

Definition at line 59 of file arpa_nameser.h.

◆ dn_skipname

#define dn_skipname   __dn_skipname

Definition at line 67 of file arpa_nameser.h.

◆ NS_ALG_DH

#define NS_ALG_DH   2 /* Diffie Hellman KEY */

Definition at line 432 of file arpa_nameser.h.

◆ NS_ALG_DSA

#define NS_ALG_DSA   3 /* DSA KEY */

Definition at line 433 of file arpa_nameser.h.

◆ NS_ALG_DSS

#define NS_ALG_DSS   NS_ALG_DSA

Definition at line 434 of file arpa_nameser.h.

◆ NS_ALG_EXPIRE_ONLY

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

Definition at line 435 of file arpa_nameser.h.

◆ NS_ALG_MD5RSA

#define NS_ALG_MD5RSA   1 /* MD5 with RSA */

Definition at line 431 of file arpa_nameser.h.

◆ NS_ALG_PRIVATE_OID

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

Definition at line 436 of file arpa_nameser.h.

◆ NS_CMPRSFLGS

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

Definition at line 139 of file arpa_nameser.h.

◆ ns_datetosecs

#define ns_datetosecs   __ns_datetosecs

Definition at line 536 of file arpa_nameser.h.

◆ NS_DEFAULTPORT

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

Definition at line 140 of file arpa_nameser.h.

◆ NS_DSA_MAX_BYTES

#define NS_DSA_MAX_BYTES   405

Definition at line 458 of file arpa_nameser.h.

◆ NS_DSA_MIN_SIZE

#define NS_DSA_MIN_SIZE   213

Definition at line 457 of file arpa_nameser.h.

◆ NS_DSA_SIG_SIZE

#define NS_DSA_SIG_SIZE   41

Definition at line 456 of file arpa_nameser.h.

◆ ns_find_tsig

#define ns_find_tsig   __ns_find_tsig

Definition at line 551 of file arpa_nameser.h.

◆ ns_format_ttl

#define ns_format_ttl   __ns_format_ttl

Definition at line 534 of file arpa_nameser.h.

◆ NS_GET16

#define NS_GET16 (   s,
  cp 
)
Value:
do { \
register const u_char *t_cp = (const u_char *)(cp); \
(s) = ((u_int16_t)t_cp[0] << 8) \
| ((u_int16_t)t_cp[1]) \
; \
(cp) += NS_INT16SZ; \
} while (0)
#define NS_INT16SZ
unsigned short u_int16_t

Definition at line 485 of file arpa_nameser.h.

◆ ns_get16

#define ns_get16   __ns_get16

Definition at line 525 of file arpa_nameser.h.

◆ NS_GET32

#define NS_GET32 (   l,
  cp 
)
Value:
do { \
register const u_char *t_cp = (const u_char *)(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
unsigned int u_int32_t

Definition at line 493 of file arpa_nameser.h.

◆ ns_get32

#define ns_get32   __ns_get32

Definition at line 526 of file arpa_nameser.h.

◆ NS_HFIXEDSZ

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

Definition at line 131 of file arpa_nameser.h.

◆ NS_IN6ADDRSZ

#define NS_IN6ADDRSZ   16 /* IPv6 T_AAAA */

Definition at line 138 of file arpa_nameser.h.

◆ NS_INADDRSZ

#define NS_INADDRSZ   4 /* IPv4 T_A */

Definition at line 137 of file arpa_nameser.h.

◆ ns_initparse

#define ns_initparse   __ns_initparse

Definition at line 529 of file arpa_nameser.h.

◆ NS_INT16SZ

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

Definition at line 135 of file arpa_nameser.h.

◆ NS_INT32SZ

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

Definition at line 134 of file arpa_nameser.h.

◆ NS_INT8SZ

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

Definition at line 136 of file arpa_nameser.h.

◆ NS_KEY_EXTENDED_FLAGS

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

Definition at line 408 of file arpa_nameser.h.

◆ NS_KEY_NAME_ENTITY

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

Definition at line 413 of file arpa_nameser.h.

◆ NS_KEY_NAME_RESERVED

#define NS_KEY_NAME_RESERVED   0x0300 /* reserved meaning */

Definition at line 415 of file arpa_nameser.h.

◆ NS_KEY_NAME_TYPE

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

Definition at line 411 of file arpa_nameser.h.

◆ NS_KEY_NAME_USER

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

Definition at line 412 of file arpa_nameser.h.

◆ NS_KEY_NAME_ZONE

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

Definition at line 414 of file arpa_nameser.h.

◆ NS_KEY_NO_AUTH

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

Definition at line 405 of file arpa_nameser.h.

◆ NS_KEY_NO_CONF

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

Definition at line 406 of file arpa_nameser.h.

◆ NS_KEY_PROT_ANY

#define NS_KEY_PROT_ANY   255

Definition at line 444 of file arpa_nameser.h.

◆ NS_KEY_PROT_DNSSEC

#define NS_KEY_PROT_DNSSEC   3

Definition at line 442 of file arpa_nameser.h.

◆ NS_KEY_PROT_EMAIL

#define NS_KEY_PROT_EMAIL   2

Definition at line 441 of file arpa_nameser.h.

◆ NS_KEY_PROT_IPSEC

#define NS_KEY_PROT_IPSEC   4

Definition at line 443 of file arpa_nameser.h.

◆ NS_KEY_PROT_TLS

#define NS_KEY_PROT_TLS   1

Definition at line 440 of file arpa_nameser.h.

◆ NS_KEY_RESERVED10

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

Definition at line 418 of file arpa_nameser.h.

◆ NS_KEY_RESERVED11

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

Definition at line 419 of file arpa_nameser.h.

◆ NS_KEY_RESERVED2

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

Definition at line 407 of file arpa_nameser.h.

◆ NS_KEY_RESERVED4

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

Definition at line 409 of file arpa_nameser.h.

◆ NS_KEY_RESERVED5

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

Definition at line 410 of file arpa_nameser.h.

◆ NS_KEY_RESERVED8

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

Definition at line 416 of file arpa_nameser.h.

◆ NS_KEY_RESERVED9

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

Definition at line 417 of file arpa_nameser.h.

◆ NS_KEY_RESERVED_BITMASK

#define NS_KEY_RESERVED_BITMASK
Value:
#define NS_KEY_RESERVED8
#define NS_KEY_RESERVED10
#define NS_KEY_RESERVED2
#define NS_KEY_RESERVED9
#define NS_KEY_RESERVED11
#define NS_KEY_RESERVED5
#define NS_KEY_RESERVED4

Definition at line 421 of file arpa_nameser.h.

◆ NS_KEY_RESERVED_BITMASK2

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

Definition at line 428 of file arpa_nameser.h.

◆ NS_KEY_SIGNATORYMASK

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

Definition at line 420 of file arpa_nameser.h.

◆ NS_KEY_TYPE_AUTH_CONF

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

Definition at line 400 of file arpa_nameser.h.

◆ NS_KEY_TYPE_AUTH_ONLY

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

Definition at line 402 of file arpa_nameser.h.

◆ NS_KEY_TYPE_CONF_ONLY

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

Definition at line 401 of file arpa_nameser.h.

◆ NS_KEY_TYPE_NO_KEY

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

Definition at line 403 of file arpa_nameser.h.

◆ NS_KEY_TYPEMASK

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

Definition at line 399 of file arpa_nameser.h.

◆ ns_makecanon

#define ns_makecanon   __ns_makecanon

Definition at line 557 of file arpa_nameser.h.

◆ NS_MAXCDNAME

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

Definition at line 129 of file arpa_nameser.h.

◆ NS_MAXDNAME

#define NS_MAXDNAME   1025 /* maximum domain name */

Definition at line 127 of file arpa_nameser.h.

◆ NS_MAXLABEL

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

Definition at line 130 of file arpa_nameser.h.

◆ NS_MAXMSG

#define NS_MAXMSG   65535 /* maximum message size */

Definition at line 128 of file arpa_nameser.h.

◆ NS_MD5RSA_MAX_BASE64

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

Definition at line 452 of file arpa_nameser.h.

◆ NS_MD5RSA_MAX_BITS

#define NS_MD5RSA_MAX_BITS   4096

Definition at line 448 of file arpa_nameser.h.

◆ NS_MD5RSA_MAX_BYTES

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

Definition at line 450 of file arpa_nameser.h.

◆ NS_MD5RSA_MAX_SIZE

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

Definition at line 454 of file arpa_nameser.h.

◆ NS_MD5RSA_MIN_BITS

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

Definition at line 447 of file arpa_nameser.h.

◆ NS_MD5RSA_MIN_SIZE

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

Definition at line 453 of file arpa_nameser.h.

◆ ns_msg_base

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

Definition at line 178 of file arpa_nameser.h.

◆ ns_msg_count

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

Definition at line 181 of file arpa_nameser.h.

◆ ns_msg_end

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

Definition at line 179 of file arpa_nameser.h.

◆ ns_msg_getflag

#define ns_msg_getflag   __ns_msg_getflag

Definition at line 524 of file arpa_nameser.h.

◆ ns_msg_id

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

Definition at line 177 of file arpa_nameser.h.

◆ ns_msg_size

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

Definition at line 180 of file arpa_nameser.h.

◆ ns_name_compress

#define ns_name_compress   __ns_name_compress

Definition at line 542 of file arpa_nameser.h.

◆ ns_name_ntol

#define ns_name_ntol   __ns_name_ntol

Definition at line 537 of file arpa_nameser.h.

◆ ns_name_ntop

#define ns_name_ntop   __ns_name_ntop

Definition at line 538 of file arpa_nameser.h.

◆ ns_name_pack

#define ns_name_pack   __ns_name_pack

Definition at line 541 of file arpa_nameser.h.

◆ ns_name_pton

#define ns_name_pton   __ns_name_pton

Definition at line 539 of file arpa_nameser.h.

◆ ns_name_rollback

#define ns_name_rollback   __ns_name_rollback

Definition at line 545 of file arpa_nameser.h.

◆ ns_name_skip

#define ns_name_skip   __ns_name_skip

Definition at line 544 of file arpa_nameser.h.

◆ ns_name_uncompress

#define ns_name_uncompress   __ns_name_uncompress

Definition at line 543 of file arpa_nameser.h.

◆ ns_name_unpack

#define ns_name_unpack   __ns_name_unpack

Definition at line 540 of file arpa_nameser.h.

◆ NS_NXT_BIT_CLEAR

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

Definition at line 473 of file arpa_nameser.h.

◆ NS_NXT_BIT_ISSET

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

Definition at line 474 of file arpa_nameser.h.

◆ NS_NXT_BIT_SET

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

Definition at line 472 of file arpa_nameser.h.

◆ NS_NXT_BITS

#define NS_NXT_BITS   8

Definition at line 471 of file arpa_nameser.h.

◆ NS_NXT_MAX

#define NS_NXT_MAX   127

Definition at line 475 of file arpa_nameser.h.

◆ NS_OPT_DNSSEC_OK

#define NS_OPT_DNSSEC_OK   0x8000U

Definition at line 480 of file arpa_nameser.h.

◆ NS_PACKETSZ

#define NS_PACKETSZ   512 /* default UDP packet size */

Definition at line 126 of file arpa_nameser.h.

◆ ns_parse_ttl

#define ns_parse_ttl   __ns_parse_ttl

Definition at line 535 of file arpa_nameser.h.

◆ ns_parserr

#define ns_parserr   __ns_parserr

Definition at line 531 of file arpa_nameser.h.

◆ NS_PUT16

#define NS_PUT16 (   s,
  cp 
)
Value:
do { \
register u_int16_t t_s = (u_int16_t)(s); \
register u_char *t_cp = (u_char *)(cp); \
*t_cp++ = t_s >> 8; \
*t_cp = t_s; \
(cp) += NS_INT16SZ; \
} while (0)
unsigned short u_int16_t

Definition at line 503 of file arpa_nameser.h.

◆ ns_put16

#define ns_put16   __ns_put16

Definition at line 527 of file arpa_nameser.h.

◆ NS_PUT32

#define NS_PUT32 (   l,
  cp 
)
Value:
do { \
register u_int32_t t_l = (u_int32_t)(l); \
register u_char *t_cp = (u_char *)(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)
unsigned int u_int32_t

Definition at line 511 of file arpa_nameser.h.

◆ ns_put32

#define ns_put32   __ns_put32

Definition at line 528 of file arpa_nameser.h.

◆ NS_QFIXEDSZ

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

Definition at line 132 of file arpa_nameser.h.

◆ ns_rr_class

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

Definition at line 198 of file arpa_nameser.h.

◆ ns_rr_name

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

Definition at line 196 of file arpa_nameser.h.

◆ ns_rr_rdata

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

Definition at line 201 of file arpa_nameser.h.

◆ ns_rr_rdlen

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

Definition at line 200 of file arpa_nameser.h.

◆ ns_rr_ttl

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

Definition at line 199 of file arpa_nameser.h.

◆ ns_rr_type

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

Definition at line 197 of file arpa_nameser.h.

◆ NS_RRFIXEDSZ

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

Definition at line 133 of file arpa_nameser.h.

◆ ns_samedomain

#define ns_samedomain   __ns_samedomain

Definition at line 555 of file arpa_nameser.h.

◆ ns_samename

#define ns_samename   __ns_samename

Definition at line 558 of file arpa_nameser.h.

◆ NS_SIG_ALG

#define NS_SIG_ALG   2 /* Algorithm */

Definition at line 462 of file arpa_nameser.h.

◆ NS_SIG_EXPIR

#define NS_SIG_EXPIR   8 /* Expiration time */

Definition at line 465 of file arpa_nameser.h.

◆ NS_SIG_FOOT

#define NS_SIG_FOOT   16 /* Key footprint */

Definition at line 467 of file arpa_nameser.h.

◆ NS_SIG_LABELS

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

Definition at line 463 of file arpa_nameser.h.

◆ NS_SIG_OTTL

#define NS_SIG_OTTL   4 /* Original TTL */

Definition at line 464 of file arpa_nameser.h.

◆ NS_SIG_SIGNED

#define NS_SIG_SIGNED   12 /* Signature time */

Definition at line 466 of file arpa_nameser.h.

◆ NS_SIG_SIGNER

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

Definition at line 468 of file arpa_nameser.h.

◆ NS_SIG_TYPE

#define NS_SIG_TYPE   0 /* Type flags */

Definition at line 461 of file arpa_nameser.h.

◆ ns_sign

#define ns_sign   __ns_sign

Definition at line 546 of file arpa_nameser.h.

◆ ns_sign2

#define ns_sign2   __ns_sign2

Definition at line 547 of file arpa_nameser.h.

◆ ns_sign_tcp

#define ns_sign_tcp   __ns_sign_tcp

Definition at line 548 of file arpa_nameser.h.

◆ ns_sign_tcp2

#define ns_sign_tcp2   __ns_sign_tcp2

Definition at line 549 of file arpa_nameser.h.

◆ ns_sign_tcp_init

#define ns_sign_tcp_init   __ns_sign_tcp_init

Definition at line 550 of file arpa_nameser.h.

◆ ns_skiprr

#define ns_skiprr   __ns_skiprr

Definition at line 530 of file arpa_nameser.h.

◆ ns_sprintrr

#define ns_sprintrr   __ns_sprintrr

Definition at line 532 of file arpa_nameser.h.

◆ ns_sprintrrf

#define ns_sprintrrf   __ns_sprintrrf

Definition at line 533 of file arpa_nameser.h.

◆ ns_subdomain

#define ns_subdomain   __ns_subdomain

Definition at line 556 of file arpa_nameser.h.

◆ ns_t_mrr_p

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

Definition at line 359 of file arpa_nameser.h.

◆ ns_t_qt_p

#define ns_t_qt_p (   t)
Value:
(ns_t_xfr_p(t) || (t) == ns_t_any || \
(t) == ns_t_mailb || (t) == ns_t_maila)
@ ns_t_any
@ ns_t_maila
@ ns_t_mailb
#define ns_t_xfr_p(t)

Definition at line 356 of file arpa_nameser.h.

◆ ns_t_rr_p

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

Definition at line 361 of file arpa_nameser.h.

◆ ns_t_udp_p

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

Definition at line 362 of file arpa_nameser.h.

◆ ns_t_xfr_p

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

Definition at line 363 of file arpa_nameser.h.

◆ NS_TSIG_ALG_HMAC_MD5

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

Definition at line 291 of file arpa_nameser.h.

◆ NS_TSIG_ERROR_FORMERR

#define NS_TSIG_ERROR_FORMERR   -12

Definition at line 295 of file arpa_nameser.h.

◆ NS_TSIG_ERROR_NO_SPACE

#define NS_TSIG_ERROR_NO_SPACE   -11

Definition at line 294 of file arpa_nameser.h.

◆ NS_TSIG_ERROR_NO_TSIG

#define NS_TSIG_ERROR_NO_TSIG   -10

Definition at line 293 of file arpa_nameser.h.

◆ NS_TSIG_FUDGE

#define NS_TSIG_FUDGE   300

Definition at line 289 of file arpa_nameser.h.

◆ NS_TSIG_TCP_COUNT

#define NS_TSIG_TCP_COUNT   100

Definition at line 290 of file arpa_nameser.h.

◆ ns_verify

#define ns_verify   __ns_verify

Definition at line 552 of file arpa_nameser.h.

◆ ns_verify_tcp

#define ns_verify_tcp   __ns_verify_tcp

Definition at line 553 of file arpa_nameser.h.

◆ ns_verify_tcp_init

#define ns_verify_tcp_init   __ns_verify_tcp_init

Definition at line 554 of file arpa_nameser.h.

Typedef Documentation

◆ u_int16_t

typedef unsigned short u_int16_t

Definition at line 91 of file arpa_nameser.h.

◆ u_int32_t

typedef unsigned int u_int32_t

Definition at line 99 of file arpa_nameser.h.

◆ u_int8_t

typedef unsigned char u_int8_t

Definition at line 83 of file arpa_nameser.h.

Enumeration Type Documentation

◆ ns_cert_types

Enumerator
cert_t_pkix 
cert_t_spki 
cert_t_pgp 
cert_t_url 
cert_t_oid 

Definition at line 390 of file arpa_nameser.h.

◆ ns_class

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 369 of file arpa_nameser.h.

◆ ns_flag

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 208 of file arpa_nameser.h.

◆ ns_key_types

Enumerator
ns_kt_rsa 
ns_kt_dh 
ns_kt_dsa 
ns_kt_private 

Definition at line 383 of file arpa_nameser.h.

◆ ns_opcode

enum ns_opcode
Enumerator
ns_o_query 
ns_o_iquery 
ns_o_status 
ns_o_notify 
ns_o_update 
ns_o_max 

Definition at line 225 of file arpa_nameser.h.

◆ ns_rcode

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_badvers 
ns_r_badsig 
ns_r_badkey 
ns_r_badtime 

Definition at line 238 of file arpa_nameser.h.

◆ ns_sect

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 146 of file arpa_nameser.h.

◆ ns_type

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_apl 
ns_t_tkey 
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 300 of file arpa_nameser.h.

◆ ns_update_operation

Enumerator
ns_uop_delete 
ns_uop_add 
ns_uop_max 

Definition at line 261 of file arpa_nameser.h.

Function Documentation

◆ __P() [1/32]

int ns_makecanon __P ( (const char *, char *, size_t)  )

◆ __P() [2/32]

int ns_samename __P ( (const char *, const char *)  )

◆ __P() [3/32]

int ns_name_pton __P ( (const char *, u_char *, size_t)  )

◆ __P() [4/32]

int ns_name_compress __P ( (const char *, u_char *, size_t, const u_char **, const u_char **)  )

◆ __P() [5/32]

int ns_parse_ttl __P ( (const char *, u_long *)  )

◆ __P() [6/32]

u_int32_t ns_datetosecs __P ( (const char *cp, int *errp)  )

◆ __P() [7/32]

int ns_sprintrr __P ( (const ns_msg *, const ns_rr *, const char *, const char *, char *, size_t)  )

◆ __P() [8/32]

u_long ns_get32 __P ( (const u_char *)  )

◆ __P() [9/32]

int ns_name_skip __P ( (const u_char **, const u_char *)  )

◆ __P() [10/32]

int ns_name_ntop __P ( (const u_char *, char *, size_t)  )

◆ __P() [11/32]

int dn_skipname __P ( (const u_char *, const u_char *)  )

◆ __P() [12/32]

void ns_name_rollback __P ( (const u_char *, const u_char **, const u_char **)  )

◆ __P() [13/32]

int ns_name_uncompress __P ( (const u_char *, const u_char *, const u_char *, char *, size_t)  )

◆ __P() [14/32]

int ns_name_unpack __P ( (const u_char *, const u_char *, const u_char *, u_char *, size_t)  )

◆ __P() [15/32]

int ns_skiprr __P ( (const u_char *, const u_char *, ns_sect, int)  )

◆ __P() [16/32]

int ns_initparse __P ( (const u_char *, int, ns_msg *)  )

◆ __P() [17/32]

int ns_sprintrrf __P ( (const u_char *, size_t, const char *, ns_class, ns_type, u_long, const u_char *, size_t, const char *, const char *, char *, size_t)  )

◆ __P() [18/32]

int ns_name_pack __P ( (const u_char *, u_char *, int, const u_char **, const u_char **)  )

◆ __P() [19/32]

int ns_name_ntol __P ( (const u_char *, u_char *, size_t)  )

◆ __P() [20/32]

int ns_parserr __P ( (ns_msg *, ns_sect, int, ns_rr *)  )

◆ __P() [21/32]

int ns_msg_getflag __P ( (ns_msg, int)  )

◆ __P() [22/32]

int ns_sign_tcp __P ( (u_char *, int *, int, int, ns_tcp_tsig_state *, int)  )

◆ __P() [23/32]

int ns_sign_tcp2 __P ( (u_char *, int *, int, int, ns_tcp_tsig_state *, int, u_char **, u_char **)  )

◆ __P() [24/32]

int ns_sign __P ( (u_char *, int *, int, int, void *, const u_char *, int, u_char *, int *, time_t)  )

◆ __P() [25/32]

int ns_sign2 __P ( (u_char *, int *, int, int, void *, const u_char *, int, u_char *, int *, time_t, u_char **, u_char **)  )

◆ __P() [26/32]

int ns_verify_tcp __P ( (u_char *, int *, ns_tcp_tsig_state *, int)  )

◆ __P() [27/32]

int ns_verify __P ( (u_char *, int *, void *, const u_char *, int, u_char *, int *, time_t *, int)  )

◆ __P() [28/32]

u_char *ns_find_tsig __P ( (u_char *, u_char *)  )

◆ __P() [29/32]

void ns_put16 __P ( (u_int, u_char *)  )

◆ __P() [30/32]

int ns_format_ttl __P ( (u_long, char *, size_t)  )

◆ __P() [31/32]

void ns_put32 __P ( (u_long, u_char *)  )

◆ __P() [32/32]

int ns_verify_tcp_init __P ( (void *, const u_char *, int, ns_tcp_tsig_state *)  )

Variable Documentation

◆ _ns_flagdata

struct _ns_flagdata _ns_flagdata[]
extern

Definition at line 56 of file __ns_initparse.c.