mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-02-16 09:57:26 +03:00
Merge pull request #11100 from abogdanenko/udev-test-check-perm
udev-test: check if permitted to create block device nodes
This commit is contained in:
commit
b2c9e8e187
@ -113,9 +113,11 @@ static int run(int argc, char *argv[]) {
|
||||
|
||||
(void) mkdir_parents_label(devname, 0755);
|
||||
(void) sd_device_get_devnum(dev, &devnum);
|
||||
assert_se(mknod(devname, mode, devnum) == 0);
|
||||
if (mknod(devname, mode, devnum) < 0)
|
||||
return log_error_errno(errno, "mknod() failed for '%s': %m", devname);
|
||||
} else {
|
||||
assert_se(unlink(devname) == 0);
|
||||
if (unlink(devname) < 0)
|
||||
return log_error_errno(errno, "unlink('%s') failed: %m", devname);
|
||||
(void) rmdir_parents(devname, "/");
|
||||
}
|
||||
}
|
||||
|
@ -1554,6 +1554,14 @@ sub udev_setup {
|
||||
return 0;
|
||||
}
|
||||
|
||||
# check if we are permitted to create block device nodes
|
||||
my $block_device_filename = $udev_dev . "/sda";
|
||||
if (system("mknod", $block_device_filename, "b", "8", "0")) {
|
||||
warn "unable to create $block_device_filename";
|
||||
return 0;
|
||||
}
|
||||
unlink $block_device_filename;
|
||||
|
||||
system("cp", "-r", "test/sys/", $udev_sys) && die "unable to copy test/sys";
|
||||
|
||||
system("rm", "-rf", "$udev_run");
|
||||
|
Loading…
x
Reference in New Issue
Block a user