]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
dns: fix name parsing issue leading to events 2189/head
authorVictor Julien <victor@inliniac.net>
Tue, 16 Aug 2016 13:54:43 +0000 (15:54 +0200)
committerVictor Julien <victor@inliniac.net>
Tue, 16 Aug 2016 13:54:43 +0000 (15:54 +0200)
src/app-layer-dns-common.c

index cfb441451bf399d62e2911678102240ca11dd922..0f4595ac2c845d4244fccf0f9fdcabec124d2a62 100644 (file)
@@ -730,7 +730,11 @@ static uint16_t DNSResponseGetNameByOffset(const uint8_t * const input, const ui
         }
         qdata += length;
 
-        if ((uint64_t)((qdata + 1) - input) >= (uint64_t)input_len) {
+        /* if we're at the end of the input data, we're done */
+        if ((uint64_t)((qdata + 1) - input) == (uint64_t)input_len) {
+            break;
+        }
+        else if ((uint64_t)((qdata + 1) - input) > (uint64_t)input_len) {
             SCLogDebug("input buffer too small");
             goto insufficient_data;
         }