\fBATTRS\fR\.
.RE
.PP
-\fB$driver\fR, \fB%d\fR
+\fB$driver\fR
.RS 4
The driver name of the device matched while searching the devpath upwards for
\fBSUBSYSTEMS\fR,
The node name of the parent device\.
.RE
.PP
+\fB$name\fR
+.RS 4
+The name of the device node\. The value is only set if an earlier rule assigned a value, or during a remove events\.
+.RE
+.PP
\fB$root\fR, \fB%r\fR
.RS 4
The udev_root value\.
</varlistentry>
<varlistentry>
- <term><option>$driver</option>, <option>%d</option></term>
+ <term><option>$driver</option></term>
<listitem>
<para>The driver name of the device matched while searching the devpath upwards for
<option>SUBSYSTEMS</option>, <option>KERNELS</option>, <option>DRIVERS</option> and <option>ATTRS</option>.
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><option>$name</option></term>
+ <listitem>
+ <para>The name of the device node. The value is only set if an earlier
+ rule assigned a value, or during a remove events.</para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term><option>$root</option>, <option>%r</option></term>
<listitem>
SUBST_ATTR,
SUBST_PARENT,
SUBST_TEMP_NODE,
+ SUBST_NAME,
SUBST_ROOT,
SUBST_SYS,
SUBST_ENV,
{ .name = "sysfs", .fmt = 's', .type = SUBST_ATTR },
{ .name = "parent", .fmt = 'P', .type = SUBST_PARENT },
{ .name = "tempnode", .fmt = 'N', .type = SUBST_TEMP_NODE },
+ { .name = "name", .fmt = 'D', .type = SUBST_NAME },
{ .name = "root", .fmt = 'r', .type = SUBST_ROOT },
{ .name = "sys", .fmt = 'S', .type = SUBST_SYS },
{ .name = "env", .fmt = 'E', .type = SUBST_ENV },
strlcat(string, udev->tmp_node, maxsize);
dbg("substitute temporary device node name '%s'", udev->tmp_node);
break;
+ case SUBST_NAME:
+ strlcat(string, udev->name, maxsize);
+ dbg("substitute udev->name '%s'", udev->name);
+ break;
case SUBST_ROOT:
strlcat(string, udev_root, maxsize);
dbg("substitute udev_root '%s'", udev_root);
}
}
- /* check runing-queue for still running events */
+ /* check run queue for still running events */
list_for_each_entry(loop_msg, &running_list, node) {
if (limit && childs_count++ > limit) {
dbg("%llu, maximum number (%i) of childs reached", msg->seqnum, childs_count);