X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fudev%2Fudev-builtin-uaccess.c;h=99bb91ae57cacafd9e1739ca453b99ca397ad3f7;hb=ea79e73b8a8fa72fb959a0604f642f97e200a803;hp=662bac9e0b27fed2c6c759d16c7a86545c5e7876;hpb=f274ece0f76b5709408821e317e87aef76123db6;p=elogind.git diff --git a/src/udev/udev-builtin-uaccess.c b/src/udev/udev-builtin-uaccess.c index 662bac9e0..99bb91ae5 100644 --- a/src/udev/udev-builtin-uaccess.c +++ b/src/udev/udev-builtin-uaccess.c @@ -20,36 +20,23 @@ #include #include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include +#include "systemd/sd-login.h" #include "logind-acl.h" #include "udev.h" #include "util.h" -static int builtin_uaccess(struct udev_device *dev, int argc, char *argv[], bool test) -{ +static int builtin_uaccess(struct udev_device *dev, int argc, char *argv[], bool test) { int r; const char *path = NULL, *seat; bool changed_acl = false; uid_t uid; - log_set_target(LOG_TARGET_AUTO); - log_parse_environment(); - log_open(); - umask(0022); /* don't muck around with ACLs when the system is not running systemd */ - if (!sd_booted()) + if (!logind_running()) return 0; path = udev_device_get_devnode(dev); @@ -69,7 +56,7 @@ static int builtin_uaccess(struct udev_device *dev, int argc, char *argv[], bool r = devnode_acl(path, true, false, 0, true, uid); if (r < 0) { - log_error("Failed to apply ACL on %s: %s", path, strerror(-r)); + log_error_errno(r, "Failed to apply ACL on %s: %m", path); goto finish; } @@ -83,7 +70,7 @@ finish: /* Better be safe than sorry and reset ACL */ k = devnode_acl(path, true, false, 0, false, 0); if (k < 0) { - log_error("Failed to apply ACL on %s: %s", path, strerror(-k)); + log_error_errno(k, "Failed to apply ACL on %s: %m", path); if (r >= 0) r = k; } @@ -95,5 +82,5 @@ finish: const struct udev_builtin udev_builtin_uaccess = { .name = "uaccess", .cmd = builtin_uaccess, - .help = "manage device node user ACL", + .help = "Manage device node user ACL", };