- if ((b = parse_boolean(expose)) < 0) {
- log_error("Failed to parse SYSTEMD_EXPOSE udev property for device %s: %s", sysfs, expose);
- return 0;
+ if ((r = device_find_escape_name(m, sysfs, &u)) < 0)
+ return r;
+
+ if (r == 0 && dn)
+ if ((r = device_find_escape_name(m, dn, &u)) < 0)
+ return r;
+
+ if (r == 0) {
+ first = udev_device_get_devlinks_list_entry(dev);
+ udev_list_entry_foreach(item, first) {
+ if ((r = device_find_escape_name(m, udev_list_entry_get_name(item), &u)) < 0)
+ return r;
+
+ if (r > 0)
+ break;