]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/test/test-udev.c
Merge pull request #11827 from keszybz/pkgconfig-variables
[thirdparty/systemd.git] / src / test / test-udev.c
index 3d5bc3ac0b3a59fcb1f835631496d7d504724ec6..ab31f5a2f1bbaa25c363aa97068bac51550eb70f 100644 (file)
@@ -11,6 +11,7 @@
 #include <sys/signalfd.h>
 #include <unistd.h>
 
+#include "build.h"
 #include "device-private.h"
 #include "fs-util.h"
 #include "log.h"
@@ -55,8 +56,8 @@ static int fake_filesystems(void) {
 }
 
 static int run(int argc, char *argv[]) {
-        _cleanup_(udev_rules_unrefp) struct udev_rules *rules = NULL;
-        _cleanup_(udev_event_freep) struct udev_event *event = NULL;
+        _cleanup_(udev_rules_freep) UdevRules *rules = NULL;
+        _cleanup_(udev_event_freep) UdevEvent *event = NULL;
         _cleanup_(sd_device_unrefp) sd_device *dev = NULL;
         const char *devpath, *devname, *action;
         int r;
@@ -81,13 +82,13 @@ static int run(int argc, char *argv[]) {
                 return 0;
         }
 
-        log_debug("version %s", PACKAGE_VERSION);
+        log_debug("version %s", GIT_VERSION);
         mac_selinux_init();
 
         action = argv[1];
         devpath = argv[2];
 
-        rules = udev_rules_new(RESOLVE_NAME_EARLY);
+        assert_se(udev_rules_new(&rules, RESOLVE_NAME_EARLY) == 0);
 
         const char *syspath = strjoina("/sys", devpath);
         r = device_new_from_synthetic_event(&dev, syspath, action);
@@ -113,9 +114,11 @@ static int run(int argc, char *argv[]) {
 
                         (void) mkdir_parents_label(devname, 0755);
                         (void) sd_device_get_devnum(dev, &devnum);
-                        assert_se(mknod(devname, mode, devnum) == 0);
+                        if (mknod(devname, mode, devnum) < 0)
+                                return log_error_errno(errno, "mknod() failed for '%s': %m", devname);
                 } else {
-                        assert_se(unlink(devname) == 0);
+                        if (unlink(devname) < 0)
+                                return log_error_errno(errno, "unlink('%s') failed: %m", devname);
                         (void) rmdir_parents(devname, "/");
                 }
         }