]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-device: introduce tiny wrapper sd_device_trigger()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 20 Feb 2021 06:53:01 +0000 (15:53 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 20 Feb 2021 19:40:23 +0000 (04:40 +0900)
src/libsystemd/libsystemd.sym
src/libsystemd/sd-device/sd-device.c
src/systemd/sd-device.h

index 78454acbc0764a5b15542f584d4edd28045f15d4..74eff7fcf0822ab998ede1b69d975f793f9125a7 100644 (file)
@@ -749,4 +749,5 @@ global:
         sd_device_get_action;
         sd_device_get_seqnum;
         sd_device_new_from_stat_rdev;
+        sd_device_trigger;
 } LIBSYSTEMD_247;
index 28aca4063a47ed00ab3aa2b883d9e03bcc25e44e..1ef7f4d69c540d80af6d09c0e944da70dfec6f97 100644 (file)
@@ -2036,3 +2036,15 @@ _public_ int sd_device_set_sysattr_valuef(sd_device *device, const char *sysattr
 
         return sd_device_set_sysattr_value(device, sysattr, value);
 }
+
+_public_ int sd_device_trigger(sd_device *device, sd_device_action_t action) {
+        const char *s;
+
+        assert_return(device, -EINVAL);
+
+        s = device_action_to_string(action);
+        if (!s)
+                return -EINVAL;
+
+        return sd_device_set_sysattr_value(device, "uevent", s);
+}
index af0e26e2d76dd4db4b5017077e2dc324d9cba25e..310fcaa278a62dae6396c16830e64d631c4679fa 100644 (file)
@@ -99,6 +99,7 @@ int sd_device_get_sysattr_value(sd_device *device, const char *sysattr, const ch
 
 int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, const char *value);
 int sd_device_set_sysattr_valuef(sd_device *device, const char *sysattr, const char *format, ...) _sd_printf_(3, 4);
+int sd_device_trigger(sd_device *device, sd_device_action_t action);
 
 /* device enumerator */