#include <ldns/packet.h>
/* The length of the header */
-#define HEADER_SIZE 12
+#define LDNS_HEADER_SIZE 12
/* First octet of flags */
-#define RD_MASK 0x01U
-#define RD_SHIFT 0
-#define RD(wirebuf) (*(wirebuf+2) & RD_MASK)
-#define RD_SET(wirebuf) (*(wirebuf+2) |= RD_MASK)
-#define RD_CLR(wirebuf) (*(wirebuf+2) &= ~RD_MASK)
-
-#define TC_MASK 0x02U
-#define TC_SHIFT 1
-#define TC(wirebuf) (*(wirebuf+2) & TC_MASK)
-#define TC_SET(wirebuf) (*(wirebuf+2) |= TC_MASK)
-#define TC_CLR(wirebuf) (*(wirebuf+2) &= ~TC_MASK)
-
-#define AA_MASK 0x04U
-#define AA_SHIFT 2
-#define AA(wirebuf) (*(wirebuf+2) & AA_MASK)
-#define AA_SET(wirebuf) (*(wirebuf+2) |= AA_MASK)
-#define AA_CLR(wirebuf) (*(wirebuf+2) &= ~AA_MASK)
-
-#define OPCODE_MASK 0x78U
-#define OPCODE_SHIFT 3
-#define OPCODE(wirebuf) ((*(wirebuf+2) & OPCODE_MASK) >> OPCODE_SHIFT)
-#define OPCODE_SET(wirebuf, opcode) \
- (*(wirebuf+2) = ((*(wirebuf+2)) & ~OPCODE_MASK) | ((opcode) << OPCODE_SHIFT))
-
-#define QR_MASK 0x80U
-#define QR_SHIFT 7
-#define QR(wirebuf) (*(wirebuf+2) & QR_MASK)
-#define QR_SET(wirebuf) (*(wirebuf+2) |= QR_MASK)
-#define QR_CLR(wirebuf) (*(wirebuf+2) &= ~QR_MASK)
+#define LDNS_RD_MASK 0x01U
+#define LDNS_RD_SHIFT 0
+#define LDNS_RD_WIRE(wirebuf) (*(wirebuf+2) & LDNS_RD_MASK)
+#define LDNS_RD_SET(wirebuf) (*(wirebuf+2) |= LDNS_RD_MASK)
+#define LDNS_RD_CLR(wirebuf) (*(wirebuf+2) &= ~LDNS_RD_MASK)
+
+#define LDNS_TC_MASK 0x02U
+#define LDNS_TC_SHIFT 1
+#define LDNS_TC_WIRE(wirebuf) (*(wirebuf+2) & LDNS_TC_MASK)
+#define LDNS_TC_SET(wirebuf) (*(wirebuf+2) |= LDNS_TC_MASK)
+#define LDNS_TC_CLR(wirebuf) (*(wirebuf+2) &= ~LDNS_TC_MASK)
+
+#define LDNS_AA_MASK 0x04U
+#define LDNS_AA_SHIFT 2
+#define LDNS_AA_WIRE(wirebuf) (*(wirebuf+2) & LDNS_AA_MASK)
+#define LDNS_AA_SET(wirebuf) (*(wirebuf+2) |= LDNS_AA_MASK)
+#define LDNS_AA_CLR(wirebuf) (*(wirebuf+2) &= ~LDNS_AA_MASK)
+
+#define LDNS_OPCODE_MASK 0x78U
+#define LDNS_OPCODE_SHIFT 3
+#define LDNS_OPCODE_WIRE(wirebuf) ((*(wirebuf+2) & LDNS_OPCODE_MASK) >> LDNS_OPCODE_SHIFT)
+#define LDNS_OPCODE_SET(wirebuf, opcode) \
+ (*(wirebuf+2) = ((*(wirebuf+2)) & ~LDNS_OPCODE_MASK) | ((opcode) << LDNS_OPCODE_SHIFT))
+
+#define LDNS_QR_MASK 0x80U
+#define LDNS_QR_SHIFT 7
+#define LDNS_QR_WIRE(wirebuf) (*(wirebuf+2) & LDNS_QR_MASK)
+#define LDNS_QR_SET(wirebuf) (*(wirebuf+2) |= LDNS_QR_MASK)
+#define LDNS_QR_CLR(wirebuf) (*(wirebuf+2) &= ~LDNS_QR_MASK)
/* Second octet of flags */
-#define RCODE_MASK 0x0fU
-#define RCODE_SHIFT 0
-#define RCODE(wirebuf) (*(wirebuf+3) & RCODE_MASK)
-#define RCODE_SET(wirebuf, rcode) \
- (*(wirebuf+3) = ((*(wirebuf+3)) & ~RCODE_MASK) | (rcode))
-
-#define CD_MASK 0x10U
-#define CD_SHIFT 4
-#define CD(wirebuf) (*(wirebuf+3) & CD_MASK)
-#define CD_SET(wirebuf) (*(wirebuf+3) |= CD_MASK)
-#define CD_CLR(wirebuf) (*(wirebuf+3) &= ~CD_MASK)
-
-#define AD_MASK 0x20U
-#define AD_SHIFT 5
-#define AD(wirebuf) (*(wirebuf+3) & AD_MASK)
-#define AD_SET(wirebuf) (*(wirebuf+3) |= AD_MASK)
-#define AD_CLR(wirebuf) (*(wirebuf+3) &= ~AD_MASK)
-
-#define Z_MASK 0x40U
-#define Z_SHIFT 6
-#define Z(wirebuf) (*(wirebuf+3) & Z_MASK)
-#define Z_SET(wirebuf) (*(wirebuf+3) |= Z_MASK)
-#define Z_CLR(wirebuf) (*(wirebuf+3) &= ~Z_MASK)
-
-#define RA_MASK 0x80U
-#define RA_SHIFT 7
-#define RA(wirebuf) (*(wirebuf+3) & RA_MASK)
-#define RA_SET(wirebuf) (*(wirebuf+3) |= RA_MASK)
-#define RA_CLR(wirebuf) (*(wirebuf+3) &= ~RA_MASK)
+#define LDNS_RCODE_MASK 0x0fU
+#define LDNS_RCODE_SHIFT 0
+#define LDNS_RCODE_WIRE(wirebuf) (*(wirebuf+3) & LDNS_RCODE_MASK)
+#define LDNS_RCODE_SET(wirebuf, rcode) \
+ (*(wirebuf+3) = ((*(wirebuf+3)) & ~LDNS_RCODE_MASK) | (rcode))
+
+#define LDNS_CD_MASK 0x10U
+#define LDNS_CD_SHIFT 4
+#define LDNS_CD_WIRE(wirebuf) (*(wirebuf+3) & LDNS_CD_MASK)
+#define LDNS_CD_SET(wirebuf) (*(wirebuf+3) |= LDNS_CD_MASK)
+#define LDNS_CD_CLR(wirebuf) (*(wirebuf+3) &= ~LDNS_CD_MASK)
+
+#define LDNS_AD_MASK 0x20U
+#define LDNS_AD_SHIFT 5
+#define LDNS_AD_WIRE(wirebuf) (*(wirebuf+3) & LDNS_AD_MASK)
+#define LDNS_AD_SET(wirebuf) (*(wirebuf+3) |= LDNS_AD_MASK)
+#define LDNS_AD_CLR(wirebuf) (*(wirebuf+3) &= ~LDNS_AD_MASK)
+
+#define LDNS_Z_MASK 0x40U
+#define LDNS_Z_SHIFT 6
+#define LDNS_Z_WIRE(wirebuf) (*(wirebuf+3) & LDNS_Z_MASK)
+#define LDNS_Z_SET(wirebuf) (*(wirebuf+3) |= LDNS_Z_MASK)
+#define LDNS_Z_CLR(wirebuf) (*(wirebuf+3) &= ~LDNS_Z_MASK)
+
+#define LDNS_RA_MASK 0x80U
+#define LDNS_RA_SHIFT 7
+#define LDNS_RA_WIRE(wirebuf) (*(wirebuf+3) & LDNS_RA_MASK)
+#define LDNS_RA_SET(wirebuf) (*(wirebuf+3) |= LDNS_RA_MASK)
+#define LDNS_RA_CLR(wirebuf) (*(wirebuf+3) &= ~LDNS_RA_MASK)
/* Query ID */
-#define ID(wirebuf) (read_uint16(wirebuf))
+#define LDNS_ID_WIRE(wirebuf) (read_uint16(wirebuf))
/* Counter of the question section */
-#define QDCOUNT_OFF 4
+#define LDNS_QDCOUNT_OFF 4
/*
#define QDCOUNT(wirebuf) (ntohs(*(uint16_t *)(wirebuf+QDCOUNT_OFF)))
*/
-#define QDCOUNT(wirebuf) (read_uint16(wirebuf+QDCOUNT_OFF))
+#define LDNS_QDCOUNT(wirebuf) (read_uint16(wirebuf+LDNS_QDCOUNT_OFF))
/* Counter of the answer section */
-#define ANCOUNT_OFF 6
-#define ANCOUNT(wirebuf) (read_uint16(wirebuf+ANCOUNT_OFF))
+#define LDNS_ANCOUNT_OFF 6
+#define LDNS_ANCOUNT(wirebuf) (read_uint16(wirebuf+LDNS_ANCOUNT_OFF))
/* Counter of the authority section */
-#define NSCOUNT_OFF 8
-#define NSCOUNT(wirebuf) (read_uint16(wirebuf+NSCOUNT_OFF))
+#define LDNS_NSCOUNT_OFF 8
+#define LDNS_NSCOUNT(wirebuf) (read_uint16(wirebuf+LDNS_NSCOUNT_OFF))
/* Counter of the additional section */
-#define ARCOUNT_OFF 10
-#define ARCOUNT(wirebuf) (read_uint16(wirebuf+ARCOUNT_OFF))
+#define LDNS_ARCOUNT_OFF 10
+#define LDNS_ARCOUNT(wirebuf) (read_uint16(wirebuf+LDNS_ARCOUNT_OFF))
/**
* converts the data on the uint8_t bytearray (in wire format) to a DNS packet.
size_t max,
size_t *pos)
{
- if (*pos + HEADER_SIZE > max) {
+ if (*pos + LDNS_HEADER_SIZE > max) {
return LDNS_STATUS_PACKET_OVERFLOW;
} else {
- ldns_pkt_set_id(packet, ID(wire));
- ldns_pkt_set_qr(packet, QR(wire));
- ldns_pkt_set_opcode(packet, OPCODE(wire));
- ldns_pkt_set_aa(packet, AA(wire));
- ldns_pkt_set_tc(packet, TC(wire));
- ldns_pkt_set_rd(packet, RD(wire));
- ldns_pkt_set_ra(packet, RA(wire));
- ldns_pkt_set_ad(packet, AD(wire));
- ldns_pkt_set_cd(packet, CD(wire));
- ldns_pkt_set_rcode(packet, RCODE(wire));
-
- ldns_pkt_set_qdcount(packet, QDCOUNT(wire));
- ldns_pkt_set_ancount(packet, ANCOUNT(wire));
- ldns_pkt_set_nscount(packet, NSCOUNT(wire));
- ldns_pkt_set_arcount(packet, ARCOUNT(wire));
-
- *pos += HEADER_SIZE;
+ ldns_pkt_set_id(packet, LDNS_ID_WIRE(wire));
+ ldns_pkt_set_qr(packet, LDNS_QR_WIRE(wire));
+ ldns_pkt_set_opcode(packet, LDNS_OPCODE_WIRE(wire));
+ ldns_pkt_set_aa(packet, LDNS_AA_WIRE(wire));
+ ldns_pkt_set_tc(packet, LDNS_TC_WIRE(wire));
+ ldns_pkt_set_rd(packet, LDNS_RD_WIRE(wire));
+ ldns_pkt_set_ra(packet, LDNS_RA_WIRE(wire));
+ ldns_pkt_set_ad(packet, LDNS_AD_WIRE(wire));
+ ldns_pkt_set_cd(packet, LDNS_CD_WIRE(wire));
+ ldns_pkt_set_rcode(packet, LDNS_RCODE_WIRE(wire));
+
+ ldns_pkt_set_qdcount(packet, LDNS_QDCOUNT(wire));
+ ldns_pkt_set_ancount(packet, LDNS_ANCOUNT(wire));
+ ldns_pkt_set_nscount(packet, LDNS_NSCOUNT(wire));
+ ldns_pkt_set_arcount(packet, LDNS_ARCOUNT(wire));
+
+ *pos += LDNS_HEADER_SIZE;
return LDNS_STATUS_OK;
}