diff --git a/src/Makefile.am b/src/Makefile.am index 30df68f794..9ab7c24afb 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1400,7 +1400,7 @@ endif ! WITH_DRIVER_MODULES libvirt_driver_interface_la_CFLAGS = \ -I$(top_srcdir)/src/access \ -I$(top_srcdir)/src/conf \ - $(AM_CFLAGS) + $(AM_CFLAGS) $(LIBNL_CFLAGS) libvirt_driver_interface_la_LDFLAGS = $(AM_LDFLAGS) libvirt_driver_interface_la_LIBADD = if WITH_NETCF diff --git a/src/interface/interface_backend_udev.c b/src/interface/interface_backend_udev.c index c5353ea2cf..ecb1b2a35f 100644 --- a/src/interface/interface_backend_udev.c +++ b/src/interface/interface_backend_udev.c @@ -34,6 +34,7 @@ #include "viralloc.h" #include "virstring.h" #include "viraccessapicheck.h" +#include "virnetdev.h" #define VIR_FROM_THIS VIR_FROM_INTERFACE @@ -1059,6 +1060,10 @@ udevGetIfaceDef(struct udev *udev, const char *name) udev_device_get_sysattr_value(dev, "address")) < 0) goto error; + /* Link state and speed */ + if (virNetDevGetLinkInfo(ifacedef->name, &ifacedef->lnk) < 0) + goto error; + /* MTU */ mtu_str = udev_device_get_sysattr_value(dev, "mtu"); if (virStrToLong_ui(mtu_str, NULL, 10, &mtu) < 0) {