]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
fix dns assertion; remove unused variables
authorRuss Combs <rucombs@cisco.com>
Wed, 1 Apr 2015 17:52:53 +0000 (13:52 -0400)
committerRuss Combs <rucombs@cisco.com>
Wed, 1 Apr 2015 17:52:53 +0000 (13:52 -0400)
ChangeLog
src/service_inspectors/dns/dns.cc

index b2575dafee0356d95f26300317f7c3eb70ae5389..713542745fbd9073639b3ece249297d38ee3eba3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Pending - build 145
+
+-- fix dns assertion; remove unused variables
+
 15/03/31 - build 144
 
 -- reworked autotools generation of api_options.h
index c55c7d181aa729c8f6a9f5ad33c917cc460c126b..1d50920bb52a683684381acb2f672aa0dc8492b2 100644 (file)
@@ -438,7 +438,6 @@ static uint16_t ParseDNSQuestion(const unsigned char* data,
 }
 
 uint16_t ParseDNSAnswer(const unsigned char* data,
-    uint16_t /*data_size*/,
     uint16_t bytes_unused,
     DNSData* dnsSessionData)
 {
@@ -691,8 +690,7 @@ uint16_t SkipDNSRData(const unsigned char* data,
     return bytes_unused;
 }
 
-uint16_t ParseDNSRData(Packet*,
-    const unsigned char* data,
+uint16_t ParseDNSRData(const unsigned char* data,
     uint16_t bytes_unused,
     DNSData* dnsSessionData)
 {
@@ -841,8 +839,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
         case DNS_RESP_STATE_ANS_RR: /* ANSWERS section */
             for (i=dnsSessionData->curr_rec; i<dnsSessionData->hdr.answers; i++)
             {
-                bytes_unused = ParseDNSAnswer(data, p->dsize,
-                    bytes_unused, dnsSessionData);
+                bytes_unused = ParseDNSAnswer(data, bytes_unused, dnsSessionData);
 
                 if (bytes_unused == 0)
                 {
@@ -869,7 +866,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
                 case DNS_RESP_STATE_RR_RDATA_MID:
                     /* Data now points to the beginning of the RDATA */
                     data = p->data + (p->dsize - bytes_unused);
-                    bytes_unused = ParseDNSRData(p, data, bytes_unused, dnsSessionData);
+                    bytes_unused = ParseDNSRData(data, bytes_unused, dnsSessionData);
                     if (dnsSessionData->curr_rec_state != DNS_RESP_STATE_RR_COMPLETE)
                     {
                         /* Out of data, pick up on the next packet */
@@ -897,8 +894,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
         case DNS_RESP_STATE_AUTH_RR: /* AUTHORITIES section */
             for (i=dnsSessionData->curr_rec; i<dnsSessionData->hdr.authorities; i++)
             {
-                bytes_unused = ParseDNSAnswer(data, p->dsize,
-                    bytes_unused, dnsSessionData);
+                bytes_unused = ParseDNSAnswer(data, bytes_unused, dnsSessionData);
 
                 if (bytes_unused == 0)
                 {
@@ -925,7 +921,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
                 case DNS_RESP_STATE_RR_RDATA_MID:
                     /* Data now points to the beginning of the RDATA */
                     data = p->data + (p->dsize - bytes_unused);
-                    bytes_unused = ParseDNSRData(p, data, bytes_unused, dnsSessionData);
+                    bytes_unused = ParseDNSRData(data, bytes_unused, dnsSessionData);
                     if (dnsSessionData->curr_rec_state != DNS_RESP_STATE_RR_COMPLETE)
                     {
                         /* Out of data, pick up on the next packet */
@@ -953,8 +949,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
         case DNS_RESP_STATE_ADD_RR: /* ADDITIONALS section */
             for (i=dnsSessionData->curr_rec; i<dnsSessionData->hdr.authorities; i++)
             {
-                bytes_unused = ParseDNSAnswer(data, p->dsize,
-                    bytes_unused, dnsSessionData);
+                bytes_unused = ParseDNSAnswer(data, bytes_unused, dnsSessionData);
 
                 if (bytes_unused == 0)
                 {
@@ -981,7 +976,7 @@ void ParseDNSResponseMessage(Packet* p, DNSData* dnsSessionData)
                 case DNS_RESP_STATE_RR_RDATA_MID:
                     /* Data now points to the beginning of the RDATA */
                     data = p->data + (p->dsize - bytes_unused);
-                    bytes_unused = ParseDNSRData(p, data, bytes_unused, dnsSessionData);
+                    bytes_unused = ParseDNSRData(data, bytes_unused, dnsSessionData);
                     if (dnsSessionData->curr_rec_state != DNS_RESP_STATE_RR_COMPLETE)
                     {
                         /* Out of data, pick up on the next packet */
@@ -1101,7 +1096,7 @@ void Dns::show(SnortConfig*)
 void Dns::eval(Packet* p)
 {
     // precondition - what we registered for
-    assert(p->is_udp() && p->is_tcp() && p->dsize && p->data);
+    assert((p->is_udp() || p->is_tcp()) && p->dsize && p->data);
 
     ++dnsstats.total_packets;
     snort_dns(p);