[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ai_flags in calls to getaddrinfo, broader call for reproducibility c
From: |
Robert Pluim |
Subject: |
Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check |
Date: |
Mon, 11 Jan 2021 19:42:02 +0100 |
Robin Tarsiger <rtt@dasyatidae.com> writes:
> Robert Pluim wrote:
>>> There is no _reliable_ way I know of to determine this programmatically,
>>> certainly not without sending some probe queries with a high level of
>>> specific control over them, and I expect that would be a rather hairy
>>> thing to do just for a few tests, and not reasonably maintainable.
>>
>> (require 'dns)
>> (skip-unless (dns-query "google.com" 'AAAA))
>
> Oh, wow, there's _already_ a dns.el in core? Huh. Well, that obviates
> my primary concerns about doing direct DNS probes, provided it works
> and is a reasonable thing to load for the test suite otherwise...
>
>> and then do the network-lookup-address-info tests (although on Windows
>> this depends on DNS over TCP working,
>
> Ergh. I just checked with `dig +tcp` against my crappy ISP CPE and it
> rejects the connection, which seems like anecdata toward that failing
> in a lot of configurations.
>
Yep.
> Do you happen to know OTTOYH _why_ datagram sockets aren't supported
> in Emacs on Windows to start with... ?
>
Because the select implementation on windows does a one-byte readahead
to see if data is available, which breaks UDP. I had a patch at one
point to fix this, but I remember Eli not being very enthusiastic
about it. Iʼve attached what I think is the right version below (my
windows box died, so I can't be sure)
>> and either /etc/resolv.conf or a
>> working nslookup).
> The latter should at least be stock on Windows AFAIK. I'd forgotten that
> it shows the list of resolver addresses too.
Itʼs my least preferred option, it depends on running an external
binary and parsing the output, which is fragile.
Robert
sys_select_improvement.patch
Description: Text Data
- Re: ai_flags in calls to getaddrinfo, (continued)
- Re: ai_flags in calls to getaddrinfo, Eli Zaretskii, 2021/01/03
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robin Tarsiger, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Eli Zaretskii, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Eli Zaretskii, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robin Tarsiger, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robin Tarsiger, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check,
Robert Pluim <=
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Stefan Monnier, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Eli Zaretskii, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Stefan Monnier, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Lars Ingebrigtsen, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Lars Ingebrigtsen, 2021/01/11
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Robert Pluim, 2021/01/12
- Re: ai_flags in calls to getaddrinfo, broader call for reproducibility check, Lars Ingebrigtsen, 2021/01/12