umask(0022);
- r = mkdir_p("/var/lib/backlight", 0755);
+ r = mkdir_p("/var/lib/systemd/backlight", 0755);
if (r < 0) {
log_error("Failed to create backlight directory: %s", strerror(-r));
goto finish;
errno = 0;
device = udev_device_new_from_subsystem_sysname(udev, "backlight", argv[2]);
+ if (!device)
+ device = udev_device_new_from_subsystem_sysname(udev, "leds", argv[2]);
if (!device) {
if (errno != 0) {
- log_error("Failed to get backlight device: %m");
+ log_error("Failed to get backlight device '%s': %m", argv[2]);
r = -errno;
} else
r = log_oom();
goto finish;
}
- if (!streq_ptr(udev_device_get_subsystem(device), "backlight")) {
+ if (!streq_ptr(udev_device_get_subsystem(device), "backlight") &&
+ !streq_ptr(udev_device_get_subsystem(device), "leds")) {
log_error("Not a backlight device: %s", argv[2]);
r = -ENODEV;
goto finish;
}
- saved = strappend("/var/lib/backlight/", udev_device_get_sysname(device));
+ saved = strappend("/var/lib/systemd/backlight/", udev_device_get_sysname(device));
if (!saved) {
r = log_oom();
goto finish;