summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2007-11-09 19:30:12 +0100
committerKay Sievers <kay.sievers@vrfy.org>2007-11-09 19:30:12 +0100
commitd6856b85a1fb022fb2ba7c860290341af8bc75bd (patch)
tree9b1242f6cd407c33da50889061d290e85da7f21a
parent3c52e8d8bb37bfbd67b8a53f9142353b543505f2 (diff)
udevadm: control - allow command to be passed as option
-rw-r--r--TODO4
-rw-r--r--udevadm.828
-rw-r--r--udevadm.xml28
-rw-r--r--udevcontrol.c22
4 files changed, 45 insertions, 37 deletions
diff --git a/TODO b/TODO
index 380de4896c..10c5f9bdcc 100644
--- a/TODO
+++ b/TODO
@@ -11,3 +11,7 @@ udev version:
o remove udevstart
(we rely on the kernel "uevent"-triggers of kernel 2.6.15 and no longer
want to guess event-properties from sysfs like udevstart is doing it)
+
+ o remove man page symlinks for old tool names
+
+ o some day, remove the symlinks to udevadm
diff --git a/udevadm.8 b/udevadm.8
index c07e7c60f0..c9a1178b4d 100644
--- a/udevadm.8
+++ b/udevadm.8
@@ -33,7 +33,7 @@ udevadm - udev management tool
.PP
udevadm expects a command and command specific options\. It controls the runtime behavior of udev, requests kernel events, manages the event queue, and provides simple debugging mechanisms\.
.SH "OPTIONS"
-.SS "udevadm info"
+.SS "udevadm info \fIoptions\fR"
.PP
Queries the udev database for device information stored in the udev database\. It can also query the properties of a device from its sysfs representation to help creating udev rules that match this device\.
.PP
@@ -95,7 +95,7 @@ Print version\.
.RS 4
Print help text\.
.RE
-.SS "udevadm trigger"
+.SS "udevadm trigger [options]"
.PP
Request kernel device uevents, usually used to replay events at system coldplug\.
.PP
@@ -138,7 +138,7 @@ Trigger events for devices with a matching sysfs attribute\. If a value is speci
.RS 4
Do not trigger events for devices with a matching sysfs attribute\. If a value is specified along with the attribute name, the content of the attribute is matched against the given value using shell style pattern matching\. If no value is specified, the existence of the sysfs attribute is checked\. This option can be specified multiple times\.
.RE
-.SS "udevadm settle"
+.SS "udevadm settle [options]"
.PP
Watches the udev event queue, and exits if all current events are handled\.
.PP
@@ -151,11 +151,11 @@ Maximum seconds to wait for the queue to become empty\.
.RS 4
Print help text\.
.RE
-.SS "udevadm control \fIinstruction\fR"
+.SS "udevadm control \fIcommand\fR"
.PP
Modify the internal state of the running udev daemon\.
.PP
-\fBlog_priority=\fR\fB\fIvalue\fR\fR
+\fB\-\-log_priority=\fR\fB\fIvalue\fR\fR
.RS 4
Set the internal log level of udevd\. Valid values are the numerical syslog priorities or their textual representations:
\fBerr\fR,
@@ -164,41 +164,41 @@ and
\fBdebug\fR\.
.RE
.PP
-\fBstop_exec_queue\fR
+\fB\-\-stop_exec_queue\fR
.RS 4
Signal udevd to stop executing new events\. Incoming events will be queued\.
.RE
.PP
-\fBstart_exec_queue\fR
+\fB\-\-start_exec_queue\fR
.RS 4
Signal udevd to enable the execution of events\.
.RE
.PP
-\fBreload_rules\fR
+\fB\-\-reload_rules\fR
.RS 4
Signal udevd to reload the rules from the config\.
.RE
.PP
-\fBenv \fR\fB\fIvar\fR\fR\fB=\fR\fB\fIvalue\fR\fR
+\fB\-\-env \fR\fB\fIvar\fR\fR\fB=\fR\fB\fIvalue\fR\fR
.RS 4
Set global variable\.
.RE
.PP
-\fBmax_childs\fR
+\fB\-\-max_childs\fR
.RS 4
Set the maximum number of events, udevd will handle at the same time\.
.RE
.PP
-\fBmax_childs_running\fR
+\fB\-\-max_childs_running\fR
.RS 4
Set the maximum number of events, which are allowed to run at the same time\.
.RE
.PP
-\fBhelp\fR
+\fB\-\-help\fR
.RS 4
Print help text\.
.RE
-.SS "udevadm monitor"
+.SS "udevadm monitor [options]"
.PP
Listens to the kernel uevents and events sent out by a udev rule and prints the devpath of the event to the console\. It can be used to analyze the event timing, by comparing the timestamps of the kernel uevent and the udev event\.
.PP
@@ -221,7 +221,7 @@ Print the udev event after the rule processing\.
.RS 4
Print help text\.
.RE
-.SS "udevadm test"
+.SS "udevadm test [options] \fIdevpath\fR"
.PP
Simulate a udev event run for the given device, and print out debug output\. Unless forced to, no device node or symlink will be created\.
.PP
diff --git a/udevadm.xml b/udevadm.xml
index 14bc897c11..5a47b734b5 100644
--- a/udevadm.xml
+++ b/udevadm.xml
@@ -57,7 +57,7 @@
<refsect1><title>OPTIONS</title>
- <refsect2><title>udevadm info</title>
+ <refsect2><title>udevadm info <replaceable>options</replaceable></title>
<para>Queries the udev database for device information
stored in the udev database. It can also query the properties
of a device from its sysfs representation to help creating udev
@@ -129,7 +129,7 @@
</variablelist>
</refsect2>
- <refsect2><title>udevadm trigger</title>
+ <refsect2><title>udevadm trigger <optional>options</optional></title>
<para>Request kernel device uevents, usually used to replay events at system coldplug.</para>
<variablelist>
<varlistentry>
@@ -191,7 +191,7 @@
</variablelist>
</refsect2>
- <refsect2><title>udevadm settle</title>
+ <refsect2><title>udevadm settle <optional>options</optional></title>
<para>Watches the udev event queue, and exits if all current events are handled.</para>
<variablelist>
<varlistentry>
@@ -209,11 +209,11 @@
</variablelist>
</refsect2>
- <refsect2><title>udevadm control <replaceable>instruction</replaceable></title>
+ <refsect2><title>udevadm control <replaceable>command</replaceable></title>
<para>Modify the internal state of the running udev daemon.</para>
<variablelist>
<varlistentry>
- <term><option>log_priority=<replaceable>value</replaceable></option></term>
+ <term><option>--log_priority=<replaceable>value</replaceable></option></term>
<listitem>
<para>Set the internal log level of udevd. Valid values are the numerical
syslog priorities or their textual representations: <option>err</option>,
@@ -221,46 +221,46 @@
</listitem>
</varlistentry>
<varlistentry>
- <term><option>stop_exec_queue</option></term>
+ <term><option>--stop_exec_queue</option></term>
<listitem>
<para>Signal udevd to stop executing new events. Incoming events
will be queued.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>start_exec_queue</option></term>
+ <term><option>--start_exec_queue</option></term>
<listitem>
<para>Signal udevd to enable the execution of events.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>reload_rules</option></term>
+ <term><option>--reload_rules</option></term>
<listitem>
<para>Signal udevd to reload the rules from the config.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>env <replaceable>var</replaceable>=<replaceable>value</replaceable></option></term>
+ <term><option>--env <replaceable>var</replaceable>=<replaceable>value</replaceable></option></term>
<listitem>
<para>Set global variable.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>max_childs</option></term>
+ <term><option>--max_childs</option></term>
<listitem>
<para>Set the maximum number of events, udevd will handle at the
same time.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>max_childs_running</option></term>
+ <term><option>--max_childs_running</option></term>
<listitem>
<para>Set the maximum number of events, which are allowed to run at the
same time.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>help</option></term>
+ <term><option>--help</option></term>
<listitem>
<para>Print help text.</para>
</listitem>
@@ -268,7 +268,7 @@
</variablelist>
</refsect2>
- <refsect2><title>udevadm monitor</title>
+ <refsect2><title>udevadm monitor <optional>options</optional></title>
<para>Listens to the kernel uevents and events sent out by a udev rule
and prints the devpath of the event to the console. It can be used to analyze the
event timing, by comparing the timestamps of the kernel uevent and the udev event.
@@ -302,7 +302,7 @@
</variablelist>
</refsect2>
- <refsect2><title>udevadm test</title>
+ <refsect2><title>udevadm test <optional>options</optional> <replaceable>devpath</replaceable></title>
<para>Simulate a udev event run for the given device, and print out debug
output. Unless forced to, no device node or symlink will be created.</para>
<variablelist>
diff --git a/udevcontrol.c b/udevcontrol.c
index 54a0744683..2442a3e0a9 100644
--- a/udevcontrol.c
+++ b/udevcontrol.c
@@ -60,6 +60,10 @@ int udevcontrol(int argc, char *argv[], char *envp[])
strcpy(ctrl_msg.magic, UDEVD_CTRL_MAGIC);
arg = argv[1];
+ /* allow instructions passed as options */
+ if (strncmp(arg, "--", 2) == 0)
+ arg += 2;
+
if (!strcmp(arg, "stop_exec_queue"))
ctrl_msg.type = UDEVD_CTRL_STOP_EXEC_QUEUE;
else if (!strcmp(arg, "start_exec_queue"))
@@ -109,16 +113,16 @@ int udevcontrol(int argc, char *argv[], char *envp[])
ctrl_msg.type = UDEVD_CTRL_ENV;
strlcpy(ctrl_msg.buf, val, sizeof(ctrl_msg.buf));
info("send env '%s'", val);
- } else if (strcmp(arg, "help") == 0 || strcmp(arg, "--help") == 0 || strcmp(arg, "-h") == 0) {
+ } else if (strcmp(arg, "help") == 0 || strcmp(arg, "-h") == 0) {
printf("Usage: udevadm control COMMAND\n"
- " log_priority=<level> set the udev log level for the daemon\n"
- " stop_exec_queue keep udevd from executing events, queue only\n"
- " start_exec_queue execute events, flush queue\n"
- " reload_rules reloads the rules files\n"
- " env <var>=<value> set a global environment variable\n"
- " max_childs=<N> maximum number of childs\n"
- " max_childs_running=<N> maximum number of childs running at the same time\n"
- " help print this help text\n\n");
+ " --log_priority=<level> set the udev log level for the daemon\n"
+ " --stop_exec_queue keep udevd from executing events, queue only\n"
+ " --start_exec_queue execute events, flush queue\n"
+ " --reload_rules reloads the rules files\n"
+ " --env <var>=<value> set a global environment variable\n"
+ " --max_childs=<N> maximum number of childs\n"
+ " --max_childs_running=<N> maximum number of childs running at the same time\n"
+ " --help print this help text\n\n");
goto exit;
} else {
fprintf(stderr, "unrecognized command '%s'\n", arg);