diff options
-rw-r--r-- | avahi-core/dns.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/avahi-core/dns.c b/avahi-core/dns.c index e088c95..94a6173 100644 --- a/avahi-core/dns.c +++ b/avahi-core/dns.c @@ -307,13 +307,19 @@ int avahi_dns_packet_check_valid(AvahiDnsPacket *p) { uint16_t flags; assert(p); + printf("size: %d, limit: %d\n",p->size, AVAHI_DNS_PACKET_HEADER_SIZE); + if (p->size < AVAHI_DNS_PACKET_HEADER_SIZE) return -1; + /*checking that OPCODE is zero */ flags = avahi_dns_packet_get_field(p, AVAHI_DNS_FIELD_FLAGS); + printf("flags: %d\n", flags); + + /* disabling check, for it won't allow UPDATE (opcode 5) if (flags & AVAHI_DNS_FLAG_OPCODE) - return -1; + return -1; */ return 0; } |