diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-09-01 09:24:15 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-09-02 08:30:51 +0900 |
commit | 2f48561e0db3cd63f65e9311b4d69282b4ac605d (patch) | |
tree | 8acd5469ee08ce32ff7fa24875405f6759457b57 /src/udev/udev-event.c | |
parent | b881ce16b9ccae4c3089c82e2ea1781cd9773a4f (diff) | |
download | systemd-2f48561e0db3cd63f65e9311b4d69282b4ac605d.tar.gz |
udev-node: split out permission handling from udev_node_add()
And then merge udev_node_add() and udev_node_update_old_links().
Diffstat (limited to 'src/udev/udev-event.c')
-rw-r--r-- | src/udev/udev-event.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c index 3dfdff7112..3f0e11d509 100644 --- a/src/udev/udev-event.c +++ b/src/udev/udev-event.c @@ -893,9 +893,6 @@ static int update_devnode(UdevEvent *event) { if (r < 0) return log_device_error_errno(dev, r, "Failed to get devnum: %m"); - /* remove/update possible left-over symlinks from old database entry */ - (void) udev_node_update_old_links(dev, event->dev_db_clone); - if (!uid_is_valid(event->uid)) { r = device_get_devnode_uid(dev, &event->uid); if (r < 0 && r != -ENOENT) @@ -919,7 +916,11 @@ static int update_devnode(UdevEvent *event) { bool apply_mac = device_for_action(dev, SD_DEVICE_ADD); - return udev_node_add(dev, apply_mac, event->mode, event->uid, event->gid, event->seclabel_list); + r = udev_node_apply_permissions(dev, apply_mac, event->mode, event->uid, event->gid, event->seclabel_list); + if (r < 0) + return log_device_error_errno(dev, r, "Failed to apply devnode permissions: %m"); + + return udev_node_update(dev, event->dev_db_clone); } static int event_execute_rules_on_remove( |