2011/6/23 Stefan Berger <stefanb(a)linux.vnet.ibm.com>:
This patch fixes the compilation of netlink.c and interface.c on
those
systems missing either libnl or that have an older linux/if_link.h
include file not supporting macvtap or VF_PORTS.
WITH_MACVTAP is '1' if newer include files were detected, '0' otherwise.
IFLA_PORT_MAX is defined in linux/if_link.h if yet more functionality is
supported.
Signed-off-by: Stefan Berger <stefanb(a)linux.vnet.ibm.com>
You're sending this from a different Email address than your usual
one, which makes make syntax-check unhappy.
Index: libvirt-acl/src/util/netlink.c
===================================================================
--- libvirt-acl.orig/src/util/netlink.c
+++ libvirt-acl/src/util/netlink.c
@@ -55,7 +55,7 @@
* Returns 0 on success, -1 on error. In case of error, no response
* buffer will be returned.
*/
-#if __linux__
+#if defined(__linux__) && WITH_MACVTAP
You could use HAVE_LIBNL here instead of WITH_MACVTAP, I think.
int nlComm(struct nl_msg *nl_msg,
unsigned char **respbuf, unsigned int *respbuflen,
int nl_pid)
@@ -143,7 +143,11 @@ int nlComm(struct nl_msg *nl_msg ATTRIBU
int nl_pid ATTRIBUTE_UNUSED)
{
netlinkError(VIR_ERR_INTERNAL_ERROR, "%s",
+# if defined(__linux__) && !defined(HAVE_LIBNL)
+ _("nlComm is not supported since libnl was not available"));
+# else
_("nlComm is not supported on non-linux platforms"));
+# endif
return -1;
}
This fixes the problem for me as it restores the original conditionals
from before the refactoring.
ACK to the series, feel free to pick what ever version of 1/2 you like.
--
Matthias Bolte
http://photron.blogspot.com