[avahi] Packet too short or invalid while reading known answer record
Kevyn-Alexandre Paré
kapare at rogue-research.com
Mon Jul 14 15:06:30 PDT 2014
I'm receiving this log, with Avahi 0.6.31, when my nexus 5 is on the network.:
avahi-core/server.c: Packet too short or invalid while reading known
answer record. (Maybe a UTF-8
This specific packet is causing it:
sudo tcpdump -i eth0 port 5353
15:03:30.494078 IP 192.168.1.239.mdns > 224.0.0.251.mdns: 0 [1a] PTR
(QM)? _googlecast._tcp.local. (59)
So from server.c it try to avahi_dns_packet_consume_record fail and log this.
610 if (!legacy_unicast) {
611
612 /* Known Answer Suppression */
613 for (n = avahi_dns_packet_get_field(p,
AVAHI_DNS_FIELD_ANCOUNT); n > 0; n --) {
614 AvahiRecord *record;
615 int unique = 0;
616
617 if (!(record = avahi_dns_packet_consume_record(p, &unique))) {
618 avahi_log_warn(__FILE__": Packet too short or
invalid while reading known answer record. (Maybe a UTF-8 problem?)");
619 goto fail;
620 }
621
622
avahi_response_scheduler_suppress(i->response_scheduler, record, a);
623 avahi_record_list_drop(s->record_list, record);
624 avahi_cache_stop_poof(i->cache, record, a);
625
626 avahi_record_unref(record);
627 }
I'm not sure if this could help:
sudo tcpdump -n host 192.168.1.211 -X
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
18:03:30.188312 IP 192.168.1.211.5353 > 224.0.0.251.5353: 0 PTR (QU)?
_googlecast._tcp.local. (40)
0x0000: 4500 0044 0000 4000 0111 d632 c0a8 01d3 E..D.. at ....2....
0x0010: e000 00fb 14e9 14e9 0030 682c 0000 0000 .........0h,....
0x0020: 0001 0000 0000 0000 0b5f 676f 6f67 6c65 ........._google
0x0030: 6361 7374 045f 7463 7005 6c6f 6361 6c00 cast._tcp.local.
0x0040: 000c 8001 ....
Anybody have seen this or is able to tell me what's wrong with these packets?
BR,
-KA
More information about the avahi
mailing list