[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 3/9] sockets: pull code for testing IP availa
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] [PATCH v5 3/9] sockets: pull code for testing IP availability out of specific test |
Date: |
Mon, 12 Mar 2018 19:18:24 +0000 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Mon, Mar 12, 2018 at 01:08:44PM -0500, Eric Blake wrote:
> On 03/12/2018 12:46 PM, Daniel P. Berrangé wrote:
> > On Mon, Mar 12, 2018 at 12:49:33PM +0000, Daniel P. Berrangé wrote:
> > > From: "Daniel P. Berrange" <address@hidden>
> > >
> > > The test-io-channel-socket.c file has some useful helper functions for
> > > checking if a specific IP protocol is available. Other tests need to
> > > perform similar kinds of checks to avoid running tests that will fail
> > > due to missing IP protocols.
> > >
> > > Reviewed-by: Marc-André Lureau <address@hidden>
> > > Signed-off-by: Daniel P. Berrange <address@hidden>
> > > ---
>
> > > + if (socket_can_bind("::1") < 0) {
> > > + if (errno != EADDRNOTAVAIL) {
> > > + return -1;
> > > + }
> > > + } else {
> > > + *has_ipv6 = true;
> > > + }
> > > +
> >
> > Sigh, I should have kept the new code identical to the old code,
> > rather than trying to improve it, as this is in fact broken. The
> > socket_can_bind() is mistakenly returning '0' when EADDRNOTAVAIL
> > is set, so we always set the has_ipv4|6 vars to true.
> >
> > It needs this squashed in:
>
> The squash makes sense; with that, you can keep the R-b I added on the
> series (I guess that shows I only read the code, not tried to run the
> testsuite with the code applied, or I might have found this too).
Even if you had run the testsuite (like I did), you would not have seen
the bug unless your host has IPv6 disabled *entirely*. Fortunately
Travis hits that scenario which is how I noticed when I sent my branch
through Travis prior to generating a pull request :-)
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [Qemu-devel] [PATCH v5 0/9] Enable passing pre-opened chardev socket FD, Daniel P . Berrangé, 2018/03/12
- [Qemu-devel] [PATCH v5 1/9] char: don't silently skip tn3270 protocol init when TLS is enabled, Daniel P . Berrangé, 2018/03/12
- [Qemu-devel] [PATCH v5 7/9] sockets: allow SocketAddress 'fd' to reference numeric file descriptors, Daniel P . Berrangé, 2018/03/12
- [Qemu-devel] [PATCH v5 4/9] sockets: strengthen test suite IP protocol availability checks, Daniel P . Berrangé, 2018/03/12
- [Qemu-devel] [PATCH v5 2/9] cutils: add qemu_strtoi & qemu_strtoui parsers for int/unsigned int types, Daniel P . Berrangé, 2018/03/12
- [Qemu-devel] [PATCH v5 9/9] char: allow passing pre-opened socket file descriptor at startup, Daniel P . Berrangé, 2018/03/12
- Re: [Qemu-devel] [PATCH v5 0/9] Enable passing pre-opened chardev socket FD, Eric Blake, 2018/03/12
- Re: [Qemu-devel] [PATCH v5 0/9] Enable passing pre-opened chardev socket FD, Eric Blake, 2018/03/12
- Re: [Qemu-devel] [PATCH v5 0/9] Enable passing pre-opened chardev socket FD, no-reply, 2018/03/12