* fix broken Sockets=syslog-ng.socket packaging
Features:
+
+* understand https://bugzilla.redhat.com/show_bug.cgi?id=672194
+
* possibly set timezone offset from systemd at init instead
of calling hwclock
assert(udev);
- if (!seat)
+ if (isempty(seat))
seat = "seat0";
e = udev_enumerate_new(udev);
if (r < 0)
goto finish;
- if (!streq(seat, "seat0")) {
- r = udev_enumerate_add_match_tag(e, seat);
- 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;
}
- sn = udev_device_get_property_value(d, "SEAT");
- if (!sn)
+ sn = udev_device_get_property_value(d, "ID_SEAT");
+ if (isempty(sn))
sn = "seat0";
if (!streq(seat, sn)) {
goto finish;
}
+ log_debug("Fixing up %s for seat %s...", node, sn);
+
r = devnode_acl(node, flush, del, old_uid, add, new_uid);
udev_device_unref(d);
* trigger based on libudev if available
* enumerate recursively with libudev when triggering
* use sysfs in device hash table, not sysname, when fb driver is fixed
+ * fix ACL enumeration as soon as libudev can properly handle two match tags when enumerating
*
* non-local X11 server
* reboot/shutdown halt management
}
path = argv[1];
- seat = argc >= 3 ? argv[2] : "seat0";
+ seat = argc < 3 || isempty(argv[2]) ? "seat0" : argv[2];
p = strappend("/run/systemd/seats/", seat);
if (!p) {