222 lines
9.0 KiB
C
222 lines
9.0 KiB
C
/* This file was automatically generated by Epilogue Technology's
|
|
* network datastructure layout tool.
|
|
*
|
|
* DO NOT MODIFY THIS FILE BY HAND.
|
|
*
|
|
* Source file information:
|
|
* Id: dns.ldb,v 1.7 1998/02/25 15:21:40 sra Exp
|
|
*/
|
|
|
|
#ifndef EPILOGUE_LAYOUT_DNS_H
|
|
#define EPILOGUE_LAYOUT_DNS_H
|
|
|
|
#ifndef EPILOGUE_INSTALL_H
|
|
#include <wrn/wm/common/install.h>
|
|
#endif
|
|
#ifndef EPILOGUE_TYPES_H
|
|
#include <wrn/wm/common/types.h>
|
|
#endif
|
|
#ifndef EPILOGUE_LAYOUT_LDBGLUE_H
|
|
#include <wrn/wm/util/layout/ldbglue.h>
|
|
#endif
|
|
|
|
/* Definitions for DNS_SOA */
|
|
|
|
#define SIZEOF_DNS_SOA (20)
|
|
#define PTR_DNS_SOA_SERIAL(_P_)\
|
|
((GLUE_CAST_PTR(_P_)))
|
|
#define GET_DNS_SOA_SERIAL(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_)))
|
|
#define SET_DNS_SOA_SERIAL(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_)), GLUE_CAST32(_V_))
|
|
#define PTR_DNS_SOA_REFRESH(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(4))
|
|
#define GET_DNS_SOA_REFRESH(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_))+(4))
|
|
#define SET_DNS_SOA_REFRESH(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_))+(4), GLUE_CAST32(_V_))
|
|
#define PTR_DNS_SOA_RETRY(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(8))
|
|
#define GET_DNS_SOA_RETRY(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_))+(8))
|
|
#define SET_DNS_SOA_RETRY(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_))+(8), GLUE_CAST32(_V_))
|
|
#define PTR_DNS_SOA_EXPIRE(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(12))
|
|
#define GET_DNS_SOA_EXPIRE(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_))+(12))
|
|
#define SET_DNS_SOA_EXPIRE(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_))+(12), GLUE_CAST32(_V_))
|
|
#define PTR_DNS_SOA_MINIMUM(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(16))
|
|
#define GET_DNS_SOA_MINIMUM(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_))+(16))
|
|
#define SET_DNS_SOA_MINIMUM(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_))+(16), GLUE_CAST32(_V_))
|
|
|
|
/* Definitions for DNS_RR */
|
|
|
|
#define SIZEOF_DNS_RR (10)
|
|
#define PTR_DNS_RR_TYPE(_P_)\
|
|
((GLUE_CAST_PTR(_P_)))
|
|
#define GET_DNS_RR_TYPE(_P_)\
|
|
GLUE_GU16((GLUE_CAST_PTR(_P_)))
|
|
#define SET_DNS_RR_TYPE(_P_, _V_)\
|
|
GLUE_SU16((GLUE_CAST_PTR(_P_)), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_RR_CLASS(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(2))
|
|
#define GET_DNS_RR_CLASS(_P_)\
|
|
GLUE_GU16((GLUE_CAST_PTR(_P_))+(2))
|
|
#define SET_DNS_RR_CLASS(_P_, _V_)\
|
|
GLUE_SU16((GLUE_CAST_PTR(_P_))+(2), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_RR_TTL(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(4))
|
|
#define GET_DNS_RR_TTL(_P_)\
|
|
GLUE_GB32((GLUE_CAST_PTR(_P_))+(4))
|
|
#define SET_DNS_RR_TTL(_P_, _V_)\
|
|
GLUE_SB32((GLUE_CAST_PTR(_P_))+(4), GLUE_CAST32(_V_))
|
|
#define PTR_DNS_RR_RDLENGTH(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(8))
|
|
#define GET_DNS_RR_RDLENGTH(_P_)\
|
|
GLUE_GB16((GLUE_CAST_PTR(_P_))+(8))
|
|
#define SET_DNS_RR_RDLENGTH(_P_, _V_)\
|
|
GLUE_SB16((GLUE_CAST_PTR(_P_))+(8), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_RR_RDATA(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(10))
|
|
#define SIZEOF_DNS_RR_RDATA (0)
|
|
#define PTR_DNS_RR_RDATA_ELT(_P_, _X0_)\
|
|
((GLUE_CAST_PTR(_P_))+(10)+(_X0_))
|
|
#define GET_DNS_RR_RDATA_ELT(_P_, _X0_)\
|
|
GLUE_GB08((GLUE_CAST_PTR(_P_))+(10)+(_X0_))
|
|
#define SET_DNS_RR_RDATA_ELT(_P_, _X0_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(10)+(_X0_), GLUE_CAST08(_V_))
|
|
|
|
/* Definitions for DNS_HEADER */
|
|
|
|
#define SIZEOF_DNS_HEADER (12)
|
|
#define PTR_DNS_HEADER_ID(_P_)\
|
|
((GLUE_CAST_PTR(_P_)))
|
|
#define GET_DNS_HEADER_ID(_P_)\
|
|
GLUE_GU16((GLUE_CAST_PTR(_P_)))
|
|
#define SET_DNS_HEADER_ID(_P_, _V_)\
|
|
GLUE_SU16((GLUE_CAST_PTR(_P_)), GLUE_CAST16(_V_))
|
|
/* Can't define PTR_DNS_HEADER_QR because:
|
|
Size 1 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_QR(_P_)\
|
|
(GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & GLUE_CAST08(0x80L))
|
|
#define SET_DNS_HEADER_QR(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(2), ((_V_) ? GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) | GLUE_CAST08(0x80L) : GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & ~GLUE_CAST08(0x80L)))
|
|
/* Can't define PTR_DNS_HEADER_OPCODE because:
|
|
Size 4 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_OPCODE(_P_)\
|
|
GLUE_CAST08((GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & GLUE_CAST08(0x78L)) >> 3)
|
|
#define SET_DNS_HEADER_OPCODE(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(2), (GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & ~GLUE_CAST08(0x78L)) | ((GLUE_CAST08(_V_) << 3) & GLUE_CAST08(0x78L)))
|
|
#define DNS_HEADER_OPCODE_is_QUERY GLUE_CAST08(0L)
|
|
#define DNS_HEADER_OPCODE_is_IQUERY GLUE_CAST08(1L)
|
|
#define DNS_HEADER_OPCODE_is_STATUS GLUE_CAST08(2L)
|
|
/* Can't define PTR_DNS_HEADER_AA because:
|
|
Size 1 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_AA(_P_)\
|
|
(GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & GLUE_CAST08(0x4L))
|
|
#define SET_DNS_HEADER_AA(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(2), ((_V_) ? GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) | GLUE_CAST08(0x4L) : GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & ~GLUE_CAST08(0x4L)))
|
|
/* Can't define PTR_DNS_HEADER_TC because:
|
|
Size 1 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_TC(_P_)\
|
|
(GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & GLUE_CAST08(0x2L))
|
|
#define SET_DNS_HEADER_TC(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(2), ((_V_) ? GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) | GLUE_CAST08(0x2L) : GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & ~GLUE_CAST08(0x2L)))
|
|
/* Can't define PTR_DNS_HEADER_RD because:
|
|
Size 1 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_RD(_P_)\
|
|
(GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & GLUE_CAST08(0x1L))
|
|
#define SET_DNS_HEADER_RD(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(2), ((_V_) ? GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) | GLUE_CAST08(0x1L) : GLUE_GB08((GLUE_CAST_PTR(_P_))+(2)) & ~GLUE_CAST08(0x1L)))
|
|
/* Can't define PTR_DNS_HEADER_RA because:
|
|
Size 1 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_RA(_P_)\
|
|
(GLUE_GB08((GLUE_CAST_PTR(_P_))+(3)) & GLUE_CAST08(0x80L))
|
|
#define SET_DNS_HEADER_RA(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(3), ((_V_) ? GLUE_GB08((GLUE_CAST_PTR(_P_))+(3)) | GLUE_CAST08(0x80L) : GLUE_GB08((GLUE_CAST_PTR(_P_))+(3)) & ~GLUE_CAST08(0x80L)))
|
|
/* Can't define PTR_DNS_HEADER_RCODE because:
|
|
Size 4 is not a multiple of 8. */
|
|
#define GET_DNS_HEADER_RCODE(_P_)\
|
|
GLUE_CAST08(GLUE_GB08((GLUE_CAST_PTR(_P_))+(3)) & GLUE_CAST08(0xFL))
|
|
#define SET_DNS_HEADER_RCODE(_P_, _V_)\
|
|
GLUE_SB08((GLUE_CAST_PTR(_P_))+(3), (GLUE_GB08((GLUE_CAST_PTR(_P_))+(3)) & ~GLUE_CAST08(0xFL)) | (GLUE_CAST08(_V_) & GLUE_CAST08(0xFL)))
|
|
#define DNS_HEADER_RCODE_is_NO_ERROR GLUE_CAST08(0L)
|
|
#define DNS_HEADER_RCODE_is_FORMAT_ERROR GLUE_CAST08(1L)
|
|
#define DNS_HEADER_RCODE_is_SERVER_FAILURE GLUE_CAST08(2L)
|
|
#define DNS_HEADER_RCODE_is_NAME_ERROR GLUE_CAST08(3L)
|
|
#define DNS_HEADER_RCODE_is_NOT_IMPLEMENTED GLUE_CAST08(4L)
|
|
#define DNS_HEADER_RCODE_is_REFUSED GLUE_CAST08(5L)
|
|
#define PTR_DNS_HEADER_QDCOUNT(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(4))
|
|
#define GET_DNS_HEADER_QDCOUNT(_P_)\
|
|
GLUE_GB16((GLUE_CAST_PTR(_P_))+(4))
|
|
#define SET_DNS_HEADER_QDCOUNT(_P_, _V_)\
|
|
GLUE_SB16((GLUE_CAST_PTR(_P_))+(4), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_HEADER_ANCOUNT(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(6))
|
|
#define GET_DNS_HEADER_ANCOUNT(_P_)\
|
|
GLUE_GB16((GLUE_CAST_PTR(_P_))+(6))
|
|
#define SET_DNS_HEADER_ANCOUNT(_P_, _V_)\
|
|
GLUE_SB16((GLUE_CAST_PTR(_P_))+(6), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_HEADER_NSCOUNT(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(8))
|
|
#define GET_DNS_HEADER_NSCOUNT(_P_)\
|
|
GLUE_GB16((GLUE_CAST_PTR(_P_))+(8))
|
|
#define SET_DNS_HEADER_NSCOUNT(_P_, _V_)\
|
|
GLUE_SB16((GLUE_CAST_PTR(_P_))+(8), GLUE_CAST16(_V_))
|
|
#define PTR_DNS_HEADER_ARCOUNT(_P_)\
|
|
((GLUE_CAST_PTR(_P_))+(10))
|
|
#define GET_DNS_HEADER_ARCOUNT(_P_)\
|
|
GLUE_GB16((GLUE_CAST_PTR(_P_))+(10))
|
|
#define SET_DNS_HEADER_ARCOUNT(_P_, _V_)\
|
|
GLUE_SB16((GLUE_CAST_PTR(_P_))+(10), GLUE_CAST16(_V_))
|
|
|
|
/* Definitions for DNS_CLASS */
|
|
|
|
#define SIZEOF_DNS_CLASS (2)
|
|
#define GET_DNS_CLASS(_P_)\
|
|
GLUE_GU16((GLUE_CAST_PTR(_P_)))
|
|
#define SET_DNS_CLASS(_P_, _V_)\
|
|
GLUE_SU16((GLUE_CAST_PTR(_P_)), GLUE_CAST16(_V_))
|
|
#define DNS_CLASS_is_IN GLUE_OPAQUE16(GLUE_CAST16(1L))
|
|
#define DNS_CLASS_is_CS GLUE_OPAQUE16(GLUE_CAST16(2L))
|
|
#define DNS_CLASS_is_CH GLUE_OPAQUE16(GLUE_CAST16(3L))
|
|
#define DNS_CLASS_is_HS GLUE_OPAQUE16(GLUE_CAST16(4L))
|
|
#define DNS_CLASS_is_WILD GLUE_OPAQUE16(GLUE_CAST16(255L))
|
|
|
|
/* Definitions for DNS_TYPE */
|
|
|
|
#define SIZEOF_DNS_TYPE (2)
|
|
#define GET_DNS_TYPE(_P_)\
|
|
GLUE_GU16((GLUE_CAST_PTR(_P_)))
|
|
#define SET_DNS_TYPE(_P_, _V_)\
|
|
GLUE_SU16((GLUE_CAST_PTR(_P_)), GLUE_CAST16(_V_))
|
|
#define DNS_TYPE_is_A GLUE_OPAQUE16(GLUE_CAST16(1L))
|
|
#define DNS_TYPE_is_NS GLUE_OPAQUE16(GLUE_CAST16(2L))
|
|
#define DNS_TYPE_is_MD GLUE_OPAQUE16(GLUE_CAST16(3L))
|
|
#define DNS_TYPE_is_MF GLUE_OPAQUE16(GLUE_CAST16(4L))
|
|
#define DNS_TYPE_is_CNAME GLUE_OPAQUE16(GLUE_CAST16(5L))
|
|
#define DNS_TYPE_is_SOA GLUE_OPAQUE16(GLUE_CAST16(6L))
|
|
#define DNS_TYPE_is_MB GLUE_OPAQUE16(GLUE_CAST16(7L))
|
|
#define DNS_TYPE_is_MG GLUE_OPAQUE16(GLUE_CAST16(8L))
|
|
#define DNS_TYPE_is_MR GLUE_OPAQUE16(GLUE_CAST16(9L))
|
|
#define DNS_TYPE_is_NULL GLUE_OPAQUE16(GLUE_CAST16(10L))
|
|
#define DNS_TYPE_is_WKS GLUE_OPAQUE16(GLUE_CAST16(11L))
|
|
#define DNS_TYPE_is_PTR GLUE_OPAQUE16(GLUE_CAST16(12L))
|
|
#define DNS_TYPE_is_HINFO GLUE_OPAQUE16(GLUE_CAST16(13L))
|
|
#define DNS_TYPE_is_MINFO GLUE_OPAQUE16(GLUE_CAST16(14L))
|
|
#define DNS_TYPE_is_MX GLUE_OPAQUE16(GLUE_CAST16(15L))
|
|
#define DNS_TYPE_is_TXT GLUE_OPAQUE16(GLUE_CAST16(16L))
|
|
#define DNS_TYPE_is_AAAA GLUE_OPAQUE16(GLUE_CAST16(28L))
|
|
#define DNS_TYPE_is_AXFR GLUE_OPAQUE16(GLUE_CAST16(252L))
|
|
#define DNS_TYPE_is_MAILB GLUE_OPAQUE16(GLUE_CAST16(253L))
|
|
#define DNS_TYPE_is_MAILA GLUE_OPAQUE16(GLUE_CAST16(254L))
|
|
#define DNS_TYPE_is_WILD GLUE_OPAQUE16(GLUE_CAST16(255L))
|
|
|
|
#endif /* EPILOGUE_LAYOUT_DNS_H */
|