diff options
author | Roman Bogorodskiy <bogorodskiy@gmail.com> | 2014-10-29 21:20:47 +0300 |
---|---|---|
committer | Roman Bogorodskiy <bogorodskiy@gmail.com> | 2014-10-30 07:59:39 +0300 |
commit | 00fa136d0b8c7e859f9eb140f9a0500cd3def1e0 (patch) | |
tree | 7ae3704124aa4176a55a89e16b62b77e46c71a62 | |
parent | 9babbaa5fe38a433cef759a930e49d8291f040a8 (diff) | |
download | libvirt-00fa136d0b8c7e859f9eb140f9a0500cd3def1e0.tar.gz |
virnetdev: stub virNetDev{Add,Del}Multi on FreeBSD
Currently, build fails on FreeBSD because its struct ifreq does not
have ifr_hwaddr member. In order to fix that, check if this member
is present, otherwise fall back to the stub version of the
virNetDev{Add,Del}Multi functions.
-rw-r--r-- | configure.ac | 3 | ||||
-rw-r--r-- | src/util/virnetdev.c | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac index f7b02ff80e..31c5fa28bd 100644 --- a/configure.ac +++ b/configure.ac @@ -2694,7 +2694,8 @@ AC_SUBST([ws_plugindir]) # Check for Linux vs. BSD ifreq members AC_CHECK_MEMBERS([struct ifreq.ifr_newname, struct ifreq.ifr_ifindex, - struct ifreq.ifr_index], + struct ifreq.ifr_index, + struct ifreq.ifr_hwaddr], [], [], [#include <sys/socket.h> #include <net/if.h> diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c index 0c9c1f907d..6da3371d55 100644 --- a/src/util/virnetdev.c +++ b/src/util/virnetdev.c @@ -1975,7 +1975,8 @@ virNetDevGetLinkInfo(const char *ifname, #endif /* defined(__linux__) */ -#if defined(SIOCADDMULTI) && defined(HAVE_STRUCT_IFREQ) +#if defined(SIOCADDMULTI) && defined(HAVE_STRUCT_IFREQ) && \ + defined(HAVE_STRUCT_IFREQ_IFR_HWADDR) /** * virNetDevAddMulti: * @ifname: interface name to which to add multicast MAC address @@ -2023,7 +2024,8 @@ int virNetDevAddMulti(const char *ifname ATTRIBUTE_UNUSED, } #endif -#if defined(SIOCDELMULTI) && defined(HAVE_STRUCT_IFREQ) +#if defined(SIOCDELMULTI) && defined(HAVE_STRUCT_IFREQ) && \ + defined(HAVE_STRUCT_IFREQ_IFR_HWADDR) /** * virNetDevDelMulti: * @ifname: interface name from which to delete the multicast MAC address |