{
uint16_t i;
ldns_status status = LDNS_STATUS_OK;
+ ldns_lookup_table *lt;
char *tmp;
if (!pkt) {
/* add some futher fields */
ldns_buffer_printf(output, ";; Query time: %d msec\n", ldns_pkt_querytime(pkt));
if (ldns_pkt_edns(pkt)) {
+ lt = ldns_lookup_by_id(ldns_edns_flags,
+ (int)ldns_pkt_edns_z(pkt));
+
ldns_buffer_printf(output,
- ";; EDNS: version %u, flags: %u; udp: %u\n",
+ ";; EDNS: version %u, flags: %s; udp: %u\n",
ldns_pkt_edns_version(pkt),
- ldns_pkt_edns_z(pkt),
+ lt->name,
ldns_pkt_edns_udp_size(pkt)
);
if (ldns_pkt_edns_data(pkt)) {
/* if these are used elsewhere */
extern ldns_lookup_table ldns_rcodes[];
extern ldns_lookup_table ldns_opcodes[];
+extern ldns_lookup_table ldns_edns_flags[];
#endif /* _LDNS_DNS_H_ */
* do this as functions to get type checking
*/
+/* TODO defines for 3600 */
+/* convert to and from numerical flag values */
+ldns_lookup_table ldns_edns_flags[] = {
+ { 3600, "do"},
+ { 0, NULL}
+};
/* read */
uint16_t