From: maxtors Date: Thu, 28 Apr 2016 10:59:23 +0000 (+0200) Subject: Added more DNS Resource Record Types. X-Git-Tag: suricata-3.1RC1~207 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=387919e203a8f5405b37754666d59bb6d9437bea;p=thirdparty%2Fsuricata.git Added more DNS Resource Record Types. --- diff --git a/src/app-layer-dns-common.c b/src/app-layer-dns-common.c index 664a6e0a93..83105e4cc0 100644 --- a/src/app-layer-dns-common.c +++ b/src/app-layer-dns-common.c @@ -1016,11 +1016,11 @@ void DNSCreateTypeString(uint16_t type, char *str, size_t str_size) case DNS_RECORD_TYPE_NS: snprintf(str, str_size, "NS"); break; - case DNS_RECORD_TYPE_AAAA: - snprintf(str, str_size, "AAAA"); + case DNS_RECORD_TYPE_MD: + snprintf(str, str_size, "MD"); break; - case DNS_RECORD_TYPE_TXT: - snprintf(str, str_size, "TXT"); + case DNS_RECORD_TYPE_MF: + snprintf(str, str_size, "MF"); break; case DNS_RECORD_TYPE_CNAME: snprintf(str, str_size, "CNAME"); @@ -1028,39 +1028,162 @@ void DNSCreateTypeString(uint16_t type, char *str, size_t str_size) case DNS_RECORD_TYPE_SOA: snprintf(str, str_size, "SOA"); break; - case DNS_RECORD_TYPE_MX: - snprintf(str, str_size, "MX"); + case DNS_RECORD_TYPE_MB: + snprintf(str, str_size, "MB"); + break; + case DNS_RECORD_TYPE_MG: + snprintf(str, str_size, "MG"); + break; + case DNS_RECORD_TYPE_MR: + snprintf(str, str_size, "MR"); + break; + case DNS_RECORD_TYPE_NULL: + snprintf(str, str_size, "NULL"); + break; + case DNS_RECORD_TYPE_WKS: + snprintf(str, str_size, "WKS"); break; case DNS_RECORD_TYPE_PTR: snprintf(str, str_size, "PTR"); break; - case DNS_RECORD_TYPE_ANY: - snprintf(str, str_size, "ANY"); + case DNS_RECORD_TYPE_HINFO: + snprintf(str, str_size, "HINFO"); break; - case DNS_RECORD_TYPE_TKEY: - snprintf(str, str_size, "TKEY"); + case DNS_RECORD_TYPE_MINFO: + snprintf(str, str_size, "MINFO"); break; - case DNS_RECORD_TYPE_TSIG: - snprintf(str, str_size, "TSIG"); + case DNS_RECORD_TYPE_MX: + snprintf(str, str_size, "MX"); + break; + case DNS_RECORD_TYPE_TXT: + snprintf(str, str_size, "TXT"); + break; + case DNS_RECORD_TYPE_RP: + snprintf(str, str_size, "RP"); + break; + case DNS_RECORD_TYPE_AFSDB: + snprintf(str, str_size, "AFSDB"); + break; + case DNS_RECORD_TYPE_X25: + snprintf(str, str_size, "X25"); + break; + case DNS_RECORD_TYPE_ISDN: + snprintf(str, str_size, "ISDN"); + break; + case DNS_RECORD_TYPE_RT: + snprintf(str, str_size, "RT"); + break; + case DNS_RECORD_TYPE_NSAP: + snprintf(str, str_size, "NSAP"); + break; + case DNS_RECORD_TYPE_NSAPPTR: + snprintf(str, str_size, "NSAPPTR"); + break; + case DNS_RECORD_TYPE_SIG: + snprintf(str, str_size, "SIG"); + break; + case DNS_RECORD_TYPE_KEY: + snprintf(str, str_size, "KEY"); + break; + case DNS_RECORD_TYPE_PX: + snprintf(str, str_size, "PX"); + break; + case DNS_RECORD_TYPE_GPOS: + snprintf(str, str_size, "GPOS"); + break; + case DNS_RECORD_TYPE_AAAA: + snprintf(str, str_size, "AAAA"); + break; + case DNS_RECORD_TYPE_LOC: + snprintf(str, str_size, "LOC"); + break; + case DNS_RECORD_TYPE_NXT: + snprintf(str, str_size, "NXT"); break; case DNS_RECORD_TYPE_SRV: snprintf(str, str_size, "SRV"); break; + case DNS_RECORD_TYPE_ATMA: + snprintf(str, str_size, "ATMA"); + break; case DNS_RECORD_TYPE_NAPTR: snprintf(str, str_size, "NAPTR"); break; + case DNS_RECORD_TYPE_KX: + snprintf(str, str_size, "KX"); + break; + case DNS_RECORD_TYPE_CERT: + snprintf(str, str_size, "CERT"); + break; + case DNS_RECORD_TYPE_A6: + snprintf(str, str_size, "A6"); + break; + case DNS_RECORD_TYPE_DNAME: + snprintf(str, str_size, "DNAME"); + break; + case DNS_RECORD_TYPE_OPT: + snprintf(str, str_size, "OPT"); + break; + case DNS_RECORD_TYPE_APL: + snprintf(str, str_size, "APL"); + break; case DNS_RECORD_TYPE_DS: snprintf(str, str_size, "DS"); break; + case DNS_RECORD_TYPE_SSHFP: + snprintf(str, str_size, "SSHFP"); + break; + case DNS_RECORD_TYPE_IPSECKEY: + snprintf(str, str_size, "IPSECKEY"); + 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_DNSKEY: + snprintf(str, str_size, "DNSKEY"); + break; + case DNS_RECORD_TYPE_DHCID: + snprintf(str, str_size, "DHCID"); + break; case DNS_RECORD_TYPE_NSEC3: snprintf(str, str_size, "NSEC3"); break; + case DNS_RECORD_TYPE_NSEC3PARAM: + snprintf(str, str_size, "NSEC3PARAM"); + break; + case DNS_RECORD_TYPE_TLSA: + snprintf(str, str_size, "TLSA"); + break; + case DNS_RECORD_TYPE_HIP: + snprintf(str, str_size, "HIP"); + break; + case DNS_RECORD_TYPE_CDS: + snprintf(str, str_size, "CDS"); + break; + case DNS_RECORD_TYPE_CDNSKEY: + snprintf(str, str_size, "CDNSKEY"); + break; + case DNS_RECORD_TYPE_SPF: + snprintf(str, str_size, "SPF"); + 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_MAILA: + snprintf(str, str_size, "MAILA"); + break; + case DNS_RECORD_TYPE_ANY: + snprintf(str, str_size, "ANY"); + break; + case DNS_RECORD_TYPE_URI: + snprintf(str, str_size, "URI"); + break; default: snprintf(str, str_size, "%04x/%u", type, type); } diff --git a/src/app-layer-dns-common.h b/src/app-layer-dns-common.h index c19795268a..df68abcfe7 100644 --- a/src/app-layer-dns-common.h +++ b/src/app-layer-dns-common.h @@ -32,33 +32,66 @@ #define DNS_MAX_SIZE 256 -#define DNS_RECORD_TYPE_A 1 -#define DNS_RECORD_TYPE_NS 2 -#define DNS_RECORD_TYPE_CNAME 5 -#define DNS_RECORD_TYPE_SOA 6 +#define DNS_RECORD_TYPE_A 1 +#define DNS_RECORD_TYPE_NS 2 +#define DNS_RECORD_TYPE_MD 3 // Obsolete +#define DNS_RECORD_TYPE_MF 4 // Obsolete +#define DNS_RECORD_TYPE_CNAME 5 +#define DNS_RECORD_TYPE_SOA 6 +#define DNS_RECORD_TYPE_MB 7 // Experimental +#define DNS_RECORD_TYPE_MG 8 // Experimental +#define DNS_RECORD_TYPE_MR 9 // Experimental +#define DNS_RECORD_TYPE_NULL 10 // Experimental +#define DNS_RECORD_TYPE_WKS 11 +#define DNS_RECORD_TYPE_PTR 12 +#define DNS_RECORD_TYPE_HINFO 13 +#define DNS_RECORD_TYPE_MINFO 14 +#define DNS_RECORD_TYPE_MX 15 +#define DNS_RECORD_TYPE_TXT 16 +#define DNS_RECORD_TYPE_RP 17 +#define DNS_RECORD_TYPE_AFSDB 18 +#define DNS_RECORD_TYPE_X25 19 +#define DNS_RECORD_TYPE_ISDN 20 +#define DNS_RECORD_TYPE_RT 21 +#define DNS_RECORD_TYPE_NSAP 22 +#define DNS_RECORD_TYPE_NSAPPTR 23 +#define DNS_RECORD_TYPE_SIG 24 +#define DNS_RECORD_TYPE_KEY 25 +#define DNS_RECORD_TYPE_PX 26 +#define DNS_RECORD_TYPE_GPOS 27 +#define DNS_RECORD_TYPE_AAAA 28 +#define DNS_RECORD_TYPE_LOC 29 +#define DNS_RECORD_TYPE_NXT 30 // Obosolete +#define DNS_RECORD_TYPE_SRV 33 +#define DNS_RECORD_TYPE_ATMA 34 +#define DNS_RECORD_TYPE_NAPTR 35 +#define DNS_RECORD_TYPE_KX 36 +#define DNS_RECORD_TYPE_CERT 37 +#define DNS_RECORD_TYPE_A6 38 // Obsolete +#define DNS_RECORD_TYPE_DNAME 39 +#define DNS_RECORD_TYPE_OPT 41 +#define DNS_RECORD_TYPE_APL 42 +#define DNS_RECORD_TYPE_DS 43 +#define DNS_RECORD_TYPE_SSHFP 44 +#define DNS_RECORD_TYPE_IPSECKEY 45 +#define DNS_RECORD_TYPE_RRSIG 46 +#define DNS_RECORD_TYPE_NSEC 47 +#define DNS_RECORD_TYPE_DNSKEY 48 +#define DNS_RECORD_TYPE_DHCID 49 +#define DNS_RECORD_TYPE_NSEC3 50 +#define DNS_RECORD_TYPE_NSEC3PARAM 51 +#define DNS_RECORD_TYPE_TLSA 52 +#define DNS_RECORD_TYPE_HIP 55 +#define DNS_RECORD_TYPE_CDS 59 +#define DNS_RECORD_TYPE_CDNSKEY 60 +#define DNS_RECORD_TYPE_SPF 99 // Obsolete +#define DNS_RECORD_TYPE_TKEY 249 +#define DNS_RECORD_TYPE_TSIG 250 +#define DNS_RECORD_TYPE_MAILA 254 // Obsolete +#define DNS_RECORD_TYPE_ANY 255 +#define DNS_RECORD_TYPE_URI 256 -#define DNS_RECORD_TYPE_PTR 12 -#define DNS_RECORD_TYPE_MX 15 -#define DNS_RECORD_TYPE_TXT 16 - -#define DNS_RECORD_TYPE_AAAA 28 - -#define DNS_RECORD_TYPE_SRV 33 - -#define DNS_RECORD_TYPE_NAPTR 35 - -#define DNS_RECORD_TYPE_DS 43 - -#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 #define DNS_RCODE_NOERROR 0 #define DNS_RCODE_FORMERR 1