dns: add names for common types

Add names for SRV, NAPTR, DS, RRSIG, NSEC, NSEC3 types.
pull/978/head
Victor Julien 12 years ago
parent 0bbec75764
commit 5e87257845

@ -32,23 +32,33 @@
#define DNS_MAX_SIZE 256 #define DNS_MAX_SIZE 256
#define DNS_RECORD_TYPE_A 0x0001 #define DNS_RECORD_TYPE_A 1
#define DNS_RECORD_TYPE_NS 0x0002 #define DNS_RECORD_TYPE_NS 2
#define DNS_RECORD_TYPE_CNAME 0x0005 #define DNS_RECORD_TYPE_CNAME 5
#define DNS_RECORD_TYPE_SOA 0x0006 #define DNS_RECORD_TYPE_SOA 6
#define DNS_RECORD_TYPE_TXT 0x0010 #define DNS_RECORD_TYPE_PTR 12
#define DNS_RECORD_TYPE_MX 15
#define DNS_RECORD_TYPE_TXT 16
#define DNS_RECORD_TYPE_PTR 0x000c #define DNS_RECORD_TYPE_AAAA 28
#define DNS_RECORD_TYPE_MX 0x000f
#define DNS_RECORD_TYPE_AAAA 0x001c #define DNS_RECORD_TYPE_SRV 33
#define DNS_RECORD_TYPE_ANY 0x00ff #define DNS_RECORD_TYPE_NAPTR 35
#define DNS_RECORD_TYPE_TKEY 0x00f9 #define DNS_RECORD_TYPE_DS 43
#define DNS_RECORD_TYPE_TSIG 0x00fa /**< XXX correct? */
#define DNS_RECORD_TYPE_RRSIG 46
#define DNS_RECORD_TYPE_NSEC 47
#define DNS_RECORD_TYPE_NSEC3 50
#define DNS_RECORD_TYPE_TKEY 249
#define DNS_RECORD_TYPE_TSIG 250
#define DNS_RECORD_TYPE_ANY 255
enum { enum {
DNS_DECODER_EVENT_UNSOLLICITED_RESPONSE, DNS_DECODER_EVENT_UNSOLLICITED_RESPONSE,

@ -71,30 +71,60 @@ typedef struct LogDnsLogThread_ {
} LogDnsLogThread; } LogDnsLogThread;
static void CreateTypeString(uint16_t type, char *str, size_t str_size) { static void CreateTypeString(uint16_t type, char *str, size_t str_size) {
if (type == DNS_RECORD_TYPE_A) { switch (type) {
snprintf(str, str_size, "A"); case DNS_RECORD_TYPE_A:
} else if (type == DNS_RECORD_TYPE_NS) { snprintf(str, str_size, "A");
snprintf(str, str_size, "NS"); break;
} else if (type == DNS_RECORD_TYPE_AAAA) { case DNS_RECORD_TYPE_NS:
snprintf(str, str_size, "AAAA"); snprintf(str, str_size, "NS");
} else if (type == DNS_RECORD_TYPE_TXT) { break;
snprintf(str, str_size, "TXT"); case DNS_RECORD_TYPE_AAAA:
} else if (type == DNS_RECORD_TYPE_CNAME) { snprintf(str, str_size, "AAAA");
snprintf(str, str_size, "CNAME"); break;
} else if (type == DNS_RECORD_TYPE_SOA) { case DNS_RECORD_TYPE_TXT:
snprintf(str, str_size, "SOA"); snprintf(str, str_size, "TXT");
} else if (type == DNS_RECORD_TYPE_MX) { break;
snprintf(str, str_size, "MX"); case DNS_RECORD_TYPE_CNAME:
} else if (type == DNS_RECORD_TYPE_PTR) { snprintf(str, str_size, "CNAME");
snprintf(str, str_size, "PTR"); break;
} else if (type == DNS_RECORD_TYPE_ANY) { case DNS_RECORD_TYPE_SOA:
snprintf(str, str_size, "ANY"); snprintf(str, str_size, "SOA");
} else if (type == DNS_RECORD_TYPE_TKEY) { break;
snprintf(str, str_size, "TKEY"); case DNS_RECORD_TYPE_MX:
} else if (type == DNS_RECORD_TYPE_TSIG) { snprintf(str, str_size, "MX");
snprintf(str, str_size, "TSIG"); break;
} else { case DNS_RECORD_TYPE_PTR:
snprintf(str, str_size, "%04x/%u", type, type); snprintf(str, str_size, "PTR");
break;
case DNS_RECORD_TYPE_ANY:
snprintf(str, str_size, "ANY");
break;
case DNS_RECORD_TYPE_TKEY:
snprintf(str, str_size, "TKEY");
break;
case DNS_RECORD_TYPE_TSIG:
snprintf(str, str_size, "TSIG");
break;
case DNS_RECORD_TYPE_SRV:
snprintf(str, str_size, "SRV");
break;
case DNS_RECORD_TYPE_NAPTR:
snprintf(str, str_size, "NAPTR");
break;
case DNS_RECORD_TYPE_DS:
snprintf(str, str_size, "DS");
break;
case DNS_RECORD_TYPE_RRSIG:
snprintf(str, str_size, "RRSIG");
break;
case DNS_RECORD_TYPE_NSEC:
snprintf(str, str_size, "NSEC");
break;
case DNS_RECORD_TYPE_NSEC3:
snprintf(str, str_size, "NSEC3");
break;
default:
snprintf(str, str_size, "%04x/%u", type, type);
} }
} }

Loading…
Cancel
Save