summaryrefslogtreecommitdiff
path: root/extras/udev-acl
diff options
context:
space:
mode:
authorMartin Pitt <martin.pitt@ubuntu.com>2010-03-04 00:48:59 +0100
committerMartin Pitt <martin.pitt@ubuntu.com>2010-03-04 00:48:59 +0100
commit5c3ebbf35a2c101e0212c7066f0d65e457fcf40c (patch)
tree627a071d4a127a4dc1007f359d8aae862e017169 /extras/udev-acl
parent3c4b1738a9d591d7ddce361ea184b76b253c4e87 (diff)
udev-acl: Correctly handle ENV{ACL_MANAGE}==0
When a custom rule sets ACL_MANAGE to 0 to disable ACL management for a particular device, handle this as "disabled", by explicitly checking against "1" instead of "nonempty". Thanks to RafaƂ Rzepecki for pointing this out.
Diffstat (limited to 'extras/udev-acl')
-rw-r--r--extras/udev-acl/70-acl.rules2
-rw-r--r--extras/udev-acl/udev-acl.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/extras/udev-acl/70-acl.rules b/extras/udev-acl/70-acl.rules
index 8380f53eb3..874667c5b1 100644
--- a/extras/udev-acl/70-acl.rules
+++ b/extras/udev-acl/70-acl.rules
@@ -69,7 +69,7 @@ SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c02", ENV{ACL_MANAG
ENV{COLOR_MEASUREMENT_DEVICE}=="*?", ENV{ACL_MANAGE}="1"
# apply ACL for all locally logged in users
-LABEL="acl_apply", ENV{ACL_MANAGE}=="?*", TEST=="/var/run/ConsoleKit/database", \
+LABEL="acl_apply", ENV{ACL_MANAGE}=="1", TEST=="/var/run/ConsoleKit/database", \
RUN+="udev-acl --action=$env{ACTION} --device=$env{DEVNAME}"
LABEL="acl_end"
diff --git a/extras/udev-acl/udev-acl.c b/extras/udev-acl/udev-acl.c
index e670ce707f..c070fccd17 100644
--- a/extras/udev-acl/udev-acl.c
+++ b/extras/udev-acl/udev-acl.c
@@ -289,7 +289,7 @@ static void apply_acl_to_devices(uid_t uid, int add)
/* iterate over all devices tagged with ACL_SET */
udev = udev_new();
enumerate = udev_enumerate_new(udev);
- udev_enumerate_add_match_property(enumerate, "ACL_MANAGE", "*");
+ udev_enumerate_add_match_property(enumerate, "ACL_MANAGE", "1");
udev_enumerate_scan_devices(enumerate);
udev_list_entry_foreach(list_entry, udev_enumerate_get_list_entry(enumerate)) {
struct udev_device *device;