[dns-operations] Mozilla Firefox and ANY queries
Florian Weimer
fw at deneb.enyo.de
Sun Mar 1 20:32:34 UTC 2015
* Mark Andrews:
> In message <87k2z0vksq.fsf at mid.deneb.enyo.de>, Florian Weimer writes:
>> * Mark Andrews:
>>
>> > getaddrinfo was designed to extended. It wouldn't be hard to add ttl
>> > information to getaddrinfo, just add a ai_ttl to the structure at the
>> > end and define a flag to say whether it is valid.
>>
>> struct addrinfo cannot be extended in this way because its size is
>> part of the ABI, and callers are even encouraged to allocate struct
>> addrinfo objects to pass the hints.
>
> And that is something that can be dealt with by setting a flag bit
> when calling getaddrinfo. As I stated getaddrinfo is designed to be
> extended.
This is doesn't work for an important case, which I mentioned in the
next paragraph:
>> I've already found one Debian package which embeds a struct addrinfo
>> field in the middle of a struct defined in a header file (the shishi
>> Kerberos implementation). Unfortunately, changing struct addrinfo
>> in the way you propose has an extremely high risk of breaking
>> applications.
We don't have the luxury of recompiling the entire world if we change
something in libc. We tried something similar with another
supposedly-extensible struct, and all hell broke lose as a result.
Changing the size of struct addrinfo simply not an option for us.
More information about the dns-operations
mailing list