acl: two tag matching is not going to be available in libudev

This commit is contained in:
Lennart Poettering 2011-07-08 21:44:22 +02:00
parent a4c279f874
commit 7b3afbac4d
3 changed files with 9 additions and 8 deletions

2
TODO
View File

@ -20,6 +20,8 @@ F15 External:
Features:
* Remove kill_mode parameter to kill bus calls
* Fix nspawn to not read-only mount /selinux on the host system
* make sure people don't leave processes around after ExecStartPre=

View File

@ -229,18 +229,16 @@ int devnode_acl_all(struct udev *udev,
if (!e)
return -ENOMEM;
/* We can only match by one tag in libudev. We choose
* "uaccess" for that. If we could match for two tags here we
* could add the seat name as second match tag, but this would
* be hardly optimizable in libudev, and hence checking the
* second tag manually in our loop is a good solution. */
r = udev_enumerate_add_match_tag(e, "uaccess");
if (r < 0)
goto finish;
/* FIXME: when libudev is able to handle multiple match tags
* properly, optimize the search here a bit */
/* if (!streq(seat, "seat0")) { */
/* r = udev_enumerate_add_match_tag(e, seat); */
/* if (r < 0) */
/* goto finish; */
/* } */
r = udev_enumerate_scan_devices(e);
if (r < 0)
goto finish;

View File

@ -541,6 +541,7 @@ static bool device_has_tag(struct udev_device *d, const char *tag) {
assert(d);
assert(tag);
/* FIXME */
udev_device_get_is_initialized(d);
first = udev_device_get_tags_list_entry(d);