+ o handle spaces in SYMLINK+=, do not create multiple links
o use libudev device in udev_rules.c
get rid of udevice, store rule matching state in rule iterator
o rework rules to a match-action list, instead of a rules array
o add DVB variables to kernel, and drop shell script rule
o add watershed extra
- o log warning if /sys/block/ does, but /sys/class/block/ does not exist,
- udev will depend on the non-deprecated sysfs layout in a future release
o DEVTYPE for disks is set by the kernel, they will be removed from
the default rules
o "udevadm control" commands will only accept the --<command> syntax
fd = open("/dev/kmsg", O_WRONLY);
if (fd > 0) {
- const char *str = "<6>udevd version " VERSION " started\n";
-
- write(fd, str, strlen(str));
+ const char *ver_str = "<6>udev: starting version " VERSION "\n";
+ char path[UTIL_PATH_SIZE];
+ struct stat statbuf;
+
+ write(fd, ver_str, strlen(ver_str));
+ util_strlcpy(path, udev_get_sys_path(udev), sizeof(path));
+ util_strlcat(path, "/class/mem/null", sizeof(path));
+ if (lstat(path, &statbuf) == 0) {
+ if (S_ISDIR(statbuf.st_mode)) {
+ const char *depr_str = "<6>udev: deprecated sysfs layout "
+ "(CONFIG_SYSFS_DEPRECATED) is unsupported\n";
+
+ write(fd, depr_str, strlen(depr_str));
+ }
+ }
close(fd);
}