udns_resolver.c:916: dns_submit_dn: Assertion `q->dnsq_origdnl0 > 0' failed.
Iñaki Baz Castillo
ibc at aliax.net
Tue Jul 5 18:03:11 MSD 2011
2011/7/5 Iñaki Baz Castillo <ibc at aliax.net>:
> Ok, I've captured a trace and the DNS query sent by udns is wrong (I
> attach the full capture exported from wireshark to txt):
>
> Source: 192.168.1.16 (192.168.1.16)
> Destination: 8.8.8.8 (8.8.8.8)
> User Datagram Protocol, Src Port: 56776 (56776), Dst Port: domain (53)
> Source port: 56776 (56776)
> Destination port: domain (53)
> Length: 133
> Checksum: 0xe83e [validation disabled]
> [Good Checksum: False]
> [Bad Checksum: False]
> Domain Name System (query)
> Transaction ID: 0x4a9f
> Flags: 0x0100 (Standard query)
> 0... .... .... .... = Response: Message is a query
> .000 0... .... .... = Opcode: Standard query (0)
> .... ..0. .... .... = Truncated: Message is not truncated
> .... ...1 .... .... = Recursion desired: Do query recursively
> .... .... .0.. .... = Z: reserved (0)
> .... .... ...0 .... = Non-authenticated data: Unacceptable
> Questions: 1
> Answer RRs: 0
> Authority RRs: 0
> Additional RRs: 1
> Queries
> <Unknown extended label>: type Unknown (40891), class Unknown (0)
> Name: <Unknown extended label>
> Type: Unknown (40891)
> Class: Unknown (0x0000)
> Additional records
> <Root>: type Unused, class Unknown (43378)
> Name: <Root>
> Type: Unused (unused)
> Class: Unknown (0xa972)
> Time to live: 19181 days, 4 hours, 20 minutes, 15 seconds
> Data length: 0
>
>
> The DNS replies "0010 = Reply code: Server failure (2)". Note that I'm
> using DNS server 8.8.8.8 (Google) in this case, without using unbound.
The above trace occurs in udns async mode (in my code). If I query any
other kind of DNS record but SRV, I get BADQUERY error.
I've also tryed your sync code with a DNS A query:
if (dns_resolve_a4(NULL, argv[i], 0) == NULL)
then:
~# ./a.out ".a _"
.a _: malformed query
So it behaves different in SRV and other records, and also in sync and
async mode (in sync mode SRV for ".a _" produces "nodata" error while
in async mode generates a malformed DNS request and shown in my
previous trace).
--
Iñaki Baz Castillo
<ibc at aliax.net>
More information about the udns
mailing list