#\\
KERNEL="ttyUSB0", \\
-NAME="visor"
+ NAME="visor"
EOF
},
exp_perms => "5000:100:0777",
conf => <<EOF
KERNEL="ttyUSB[0-9]*", NAME="ttyUSB%n", OWNER="5000", GROUP="100", MODE="0777"
+EOF
+ },
+ {
+ desc => "permissions only rule",
+ subsys => "tty",
+ devpath => "/class/tty/ttyUSB0",
+ exp_name => "ttyUSB0",
+ exp_perms => "5000:100:0777",
+ conf => <<EOF
+KERNEL="ttyUSB[0-9]*", OWNER="5000", GROUP="100", MODE="0777"
+KERNEL="ttyUSX[0-9]*", OWNER="5001", GROUP="101", MODE="0444"
+KERNEL="ttyUSB[0-9]*", NAME="ttyUSB%n"
+EOF
+ },
+ {
+ desc => "multiple permissions only rule",
+ subsys => "tty",
+ devpath => "/class/tty/ttyUSB0",
+ exp_name => "ttyUSB0",
+ exp_perms => "3000:4000:0777",
+ conf => <<EOF
+SUBSYSTEM="tty", OWNER="3000"
+SUBSYSTEM="tty", GROUP="4000"
+SUBSYSTEM="tty", MODE="0777"
+KERNEL="ttyUSX[0-9]*", OWNER="5001", GROUP="101", MODE="0444"
+KERNEL="ttyUSB[0-9]*", NAME="ttyUSB%n"
+EOF
+ },
+ {
+ desc => "permissions only rule with override at NAME rule",
+ subsys => "tty",
+ devpath => "/class/tty/ttyUSB0",
+ exp_name => "ttyUSB0",
+ exp_perms => "3000:8000:0777",
+ conf => <<EOF
+SUBSYSTEM="tty", OWNER="3000"
+SUBSYSTEM="tty", GROUP="4000"
+SUBSYSTEM="tty", MODE="0777"
+KERNEL="ttyUSX[0-9]*", OWNER="5001", GROUP="101", MODE="0444"
+KERNEL="ttyUSB[0-9]*", NAME="ttyUSB%n", GROUP="8000"
EOF
},
{
conf => <<EOF
BUS="scsi", KERNEL="sda", NAME="should_not_match", DRIVER="sd-wrong"
BUS="scsi", KERNEL="sda", NAME="node", DRIVER="sd"
+EOF
+ },
+ {
+ desc => "temporary node creation test",
+ subsys => "block",
+ devpath => "/block/sda",
+ exp_name => "sda",
+ conf => <<EOF
+BUS="scsi", KERNEL="sda", PROGRAM="/usr/bin/test -b %N" NAME="%N"
+EOF
+ },
+ {
+ desc => "devpath substitution test",
+ subsys => "block",
+ devpath => "/block/sda",
+ exp_name => "sda",
+ conf => <<EOF
+BUS="scsi", KERNEL="sda", PROGRAM="/bin/echo %p", RESULT="/block/sda" NAME="%k"
EOF
},
);
print CONF "udev_root=\"$udev_root\"\n";
print CONF "udev_db=\"$udev_db\"\n";
print CONF "udev_rules=\"$conf_tmp\"\n";
-print CONF "default_mode=\"0660\"\n";
-print CONF "default_owner=\"root\"\n";
-print CONF "default_group=\"root\"\n";
close CONF;
my $test_num = 1;