#include <rpc/types.h>
#include <rpc/xdr.h>
#include <getopt.h>
-#include <netdb.h>
#include <sys/param.h>
-#include <sys/select.h>
#include <sys/types.h>
-#include <sys/wait.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <signal.h>
+
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+
+#ifdef HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#endif
+
+#ifdef HAVE_PRINTF_H
#include <printf.h>
+#endif
#include "c-ctype.h"
#include "ignore-value.h"
int size = 0, alloc = 0;
char *p, *pend;
- if (strcmp (str, "") == 0)
+ if (STREQ (str, ""))
goto empty_list;
p = str;
void
udev_settle (void)
{
- command (NULL, NULL, "/sbin/udevadm", "settle", NULL);
+ static int which_prog = 0;
+
+ if (which_prog == 0) {
+ if (access ("/sbin/udevsettle", X_OK) == 0)
+ which_prog = 2;
+ else if (access ("/sbin/udevadm", X_OK) == 0)
+ which_prog = 1;
+ else
+ which_prog = 3;
+ }
+
+ switch (which_prog) {
+ case 1:
+ command (NULL, NULL, "/sbin/udevadm", "settle", NULL);
+ break;
+ case 2:
+ command (NULL, NULL, "/sbin/udevsettle", NULL);
+ break;
+ default:
+ ;
+ }
}