On Tue, Sep 04, 2012 at 11:37:30AM -0600, Eric Blake wrote: > On 09/04/2012 11:23 AM, Jasper Lievisse Adriaanse wrote: > > On Tue, Sep 04, 2012 at 11:08:30AM -0600, Eric Blake wrote: > >> [adding gnulib] > >> > >> Ouch. The POSIX definition of <net/if.h> doesn't include any interface > >> that needs to use struct sockaddr. Which OpenBSD extension function is > >> triggering this warning? According to POSIX, this .c file should compile: > >> > >> #define _POSIX_C_SOURCE 200809L > >> #include <net/if.h> > >> #include <sys/socket.h> > >> struct if_nameindex i; > >> > > > That snippet of example code does not compile on OpenBSD: > > > > In file included from foo.c:2: > > /usr/include/net/if.h:112: error: expected specifier-qualifier-list before 'u_int' > > > > > Could you please reference where POSIX states it should, so this can hopefully > > get fixed in OpenBSD. > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/net_if.h.html#tag_13_30 > doesn't mention any prerequisite headers for <net/if.h>. Furthermore, > looking at each of the functions in that header, none of them call out a > prerequisite: > http://pubs.opengroup.org/onlinepubs/9699919799/functions/if_freenameindex.html# > http://pubs.opengroup.org/onlinepubs/9699919799/functions/if_indextoname.html# > http://pubs.opengroup.org/onlinepubs/9699919799/functions/if_nameindex.html# > http://pubs.opengroup.org/onlinepubs/9699919799/functions/if_nametoindex.html# > > If a header cannot be used in isolation, then POSIX would call out > multiple headers. For comparison, here's a case where POSIX 2008 _does_ > call out multiple headers: > http://pubs.opengroup.org/onlinepubs/9699919799/functions/creat.html > > creat() cannot use the S_IRUSR and other constants for its mode_t > argument unless you also include <sys/stat.h>, since <fcntl.h> was not > required to be self-contained on that front (there's talk underway about > getting that fixed in the next version of POSIX, but that's another > story... http://austingroupbugs.net/view.php?id=591) > > -- > Eric Blake eblake@xxxxxxxxxx +1-919-301-3266 > Libvirt virtualization library http://libvirt.org A diff for the OpenBSD header file has been created and is currently being tested. So this should be fixed pretty soon (and in time for OpenBSD 5.3). -- Cheers, Jasper "Stay Hungry. Stay Foolish" -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list