chiark / gitweb /
rules: mount fuse filesystem only 'add'
[elogind.git] / udev / udevadm-monitor.c
index f3a72cf17e3d283a4d2a5ced43d06934567a4995..9b8bf4eccf50c31b84ef61a3903c014a083aa9e3 100644 (file)
@@ -24,6 +24,7 @@
 #include <errno.h>
 #include <signal.h>
 #include <getopt.h>
+#include <time.h>
 #include <sys/time.h>
 #include <sys/socket.h>
 #include <sys/un.h>
@@ -43,13 +44,12 @@ static void sig_handler(int signum)
 
 static void print_device(struct udev_device *device, const char *source, int prop)
 {
-       struct timeval tv;
-       struct timezone tz;
+       struct timespec ts;
 
-       gettimeofday(&tv, &tz);
+       clock_gettime(CLOCK_MONOTONIC, &ts);
        printf("%-6s[%llu.%06u] %-8s %s (%s)\n",
               source,
-              (unsigned long long) tv.tv_sec, (unsigned int) tv.tv_usec,
+              (unsigned long long) ts.tv_sec, (unsigned int) ts.tv_nsec/1000,
               udev_device_get_action(device),
               udev_device_get_devpath(device),
               udev_device_get_subsystem(device));
@@ -137,6 +137,9 @@ int udevadm_monitor(struct udev *udev, int argc, char *argv[])
                               "  --tag-match=<tag>                       filter events by tag\n"
                               "  --help\n\n");
                        goto out;
+               default:
+                       rc = 1;
+                       goto out;
                }
        }