]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
dns: simply skips zero-sized dns requests/responses
authorPhilippe Antoine <contact@catenacyber.fr>
Wed, 26 Aug 2020 08:52:54 +0000 (10:52 +0200)
committerVictor Julien <victor@inliniac.net>
Mon, 31 Aug 2020 13:52:57 +0000 (15:52 +0200)
rust/src/dns/dns.rs

index fda3a6b8c31900c5b6c51e25bc806af643b96ce2..ff2284c760429ea933d8925bd4ca57159c441b75 100644 (file)
@@ -564,6 +564,9 @@ impl DNSState {
                 } else {
                     return AppLayerResult::err();
                 }
+            } else if size == 0 {
+                cur_i = &cur_i[2..];
+                consumed += 2;
             } else {
                 SCLogDebug!("[request]Not enough DNS traffic to parse. Returning {}/{}",
                             consumed as u32, (size + 2) as u32);
@@ -608,6 +611,9 @@ impl DNSState {
                 } else {
                     return AppLayerResult::err();
                 }
+            } else if size == 0 {
+                cur_i = &cur_i[2..];
+                consumed += 2;
             } else  {
                 SCLogDebug!("[response]Not enough DNS traffic to parse. Returning {}/{}",
                     consumed as u32, (cur_i.len() - consumed) as u32);