AC_PATH_PROG([DNSMASQ], [dnsmasq], [dnsmasq], [$LIBVIRT_SBIN_PATH])
AC_PATH_PROG([RADVD], [radvd], [radvd], [$LIBVIRT_SBIN_PATH])
AC_PATH_PROG([TC], [tc], [tc], [$LIBVIRT_SBIN_PATH])
- AC_PATH_PROG([UDEVADM], [udevadm], [], [$LIBVIRT_SBIN_PATH])
+ AC_PATH_PROG([UDEVADM], [udevadm], [udevadm], [$LIBVIRT_SBIN_PATH])
AC_PATH_PROG([MODPROBE], [modprobe], [modprobe], [$LIBVIRT_SBIN_PATH])
AC_PATH_PROG([RMMOD], [rmmod], [rmmod], [$LIBVIRT_SBIN_PATH])
AC_PATH_PROG([MMCTL], [mm-ctl], [mm-ctl], [$LIBVIRT_SBIN_PATH])
[Location or name of the mm-ctl program])
AC_DEFINE_UNQUOTED([OVSVSCTL], ["$OVSVSCTL"],
[Location or name of the ovs-vsctl program])
-
- if test -n "$UDEVADM"; then
- AC_DEFINE_UNQUOTED([UDEVADM], ["$UDEVADM"],
- [Location or name of the udevadm program])
- fi
+ AC_DEFINE_UNQUOTED([UDEVADM], ["$UDEVADM"],
+ [Location or name of the udevadm program])
if test -n "$MODPROBE"; then
AC_DEFINE_UNQUOTED([MODPROBE], ["$MODPROBE"],
[Location or name of the modprobe program])
#endif
-#if defined(UDEVADM)
void virWaitForDevices(void)
{
- const char *const settleprog[] = { UDEVADM, "settle", NULL };
+ VIR_AUTOPTR(virCommand) cmd = NULL;
+ VIR_AUTOFREE(char *) udev = NULL;
int exitstatus;
- if (access(settleprog[0], X_OK) != 0)
+ if (!(udev = virFindFileInPath(UDEVADM)))
+ return;
+
+ if (!(cmd = virCommandNewArgList(udev, "settle", NULL)))
return;
/*
* NOTE: we ignore errors here; this is just to make sure that any device
* nodes that are being created finish before we try to scan them.
*/
- ignore_value(virRun(settleprog, &exitstatus));
+ ignore_value(virCommandRun(cmd, &exitstatus));
}
-#else
-void virWaitForDevices(void)
-{}
-#endif
#if WITH_DEVMAPPER
bool