Eric Blake wrote: > On 05/03/2013 07:35 AM, Roman Bogorodskiy wrote: > > - provide virNetDevSetMAC() implementation based on SIOCSIFLLADDR > > ioctl. > > - adjust virNetDevExists() to check for ENXIO error because > > FreeBSD throws it when device doesn't exist > > --- > > configure.ac | 8 ++++++++ > > src/util/virnetdev.c | 41 ++++++++++++++++++++++++++++++++++++++++- > > 2 files changed, 48 insertions(+), 1 deletion(-) > > > > > +++ b/configure.ac > > @@ -2372,6 +2372,14 @@ AC_CHECK_MEMBERS([struct ifreq.ifr_newname, > > #include <net/if.h> > > ]) > > > > +AC_CHECK_DECLS([link_addr], > > Maybe a comment mentioning that this is a BSD interface might help > future readers. > > > +++ b/src/util/virnetdev.c > > @@ -47,6 +47,11 @@ > > # undef HAVE_STRUCT_IFREQ > > #endif > > > > +#ifdef HAVE_DECL_LINK_ADDR > > Fails 'make syntax-check': > > src/util/virnetdev.c:50:#ifdef HAVE_DECL_LINK_ADDR > maint.mk: HAVE_DECL macros are always defined > > s/ifdef/if/ to fix > > > @@ -179,6 +184,40 @@ cleanup: > > VIR_FORCE_CLOSE(fd); > > return ret; > > } > > +#elif defined(SIOCSIFLLADDR) && defined(HAVE_STRUCT_IFREQ) && \ > > + defined(HAVE_DECL_LINK_ADDR) > > Ouch. 'make syntax-check' didn't pick up on this one. You want > s/defined(\(HAVE_DECL_LINK_ADDR\))/\1/, and I have a chore to fix the > syntax-checker to spot this one :) > > ACK, and pushed with this squashed in. > > diff --git i/src/util/virnetdev.c w/src/util/virnetdev.c > index 0527a27..251a66a 100644 > --- i/src/util/virnetdev.c > +++ w/src/util/virnetdev.c > @@ -47,7 +47,7 @@ > # undef HAVE_STRUCT_IFREQ > #endif > > -#ifdef HAVE_DECL_LINK_ADDR > +#if HAVE_DECL_LINK_ADDR > # include <sys/sockio.h> > # include <net/if_dl.h> > #endif > @@ -185,7 +185,7 @@ cleanup: > return ret; > } > #elif defined(SIOCSIFLLADDR) && defined(HAVE_STRUCT_IFREQ) && \ > - defined(HAVE_DECL_LINK_ADDR) > + HAVE_DECL_LINK_ADDR > int virNetDevSetMAC(const char *ifname, > const virMacAddrPtr macaddr) > { Eric, thanks for fixing these stupid errors of mine. Do you run 'syntax-check' on your FreeBSD vm? It fails on libvirt_unmarked_diagnostics for me, like this: maint.mk: found unmarked diagnostic(s) gmake: *** [sc_libvirt_unmarked_diagnostics] Error 1 Full log here: http://people.freebsd.org/~novel/misc/libvirt_syntax_check.txt Roman Bogorodskiy
Attachment:
pgpfizO6lbYO5.pgp
Description: PGP signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list