interface_backend_udev: Implement link speed & state

In the previous commit the helper function was prepared, so now
we can wire it up and benefit from it. The Makefile change is
required because we're including virnedev,h which includes
virnetlink.h which tries to include netlink/msg.h. However this
file is not under /usr/include directly but is dependent on libnl
used.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Michal Privoznik 2014-06-05 16:39:18 +02:00
parent 05630cf4e5
commit b2019ee470
2 changed files with 6 additions and 1 deletions

View File

@ -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

View File

@ -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) {