chiark / gitweb /
[PATCH] trivial cleanups and change some comments
authorkay.sievers@vrfy.org <kay.sievers@vrfy.org>
Mon, 29 Nov 2004 01:15:55 +0000 (02:15 +0100)
committerGreg KH <gregkh@suse.de>
Wed, 27 Apr 2005 06:00:29 +0000 (23:00 -0700)
udev.c
udev.h

diff --git a/udev.c b/udev.c
index 847cc5dade49bdf177082e5f8a4ae88110e70c9d..ca79bb4ec0e37812770ceaea2b76acf901d9e438 100644 (file)
--- a/udev.c
+++ b/udev.c
@@ -111,17 +111,22 @@ int main(int argc, char *argv[], char *envp[])
        act.sa_handler = (void (*) (int))sig_handler;
        sigemptyset (&act.sa_mask);
        act.sa_flags = 0;
-       /* alarm must not restart syscalls*/
        sigaction(SIGALRM, &act, NULL);
        sigaction(SIGINT, &act, NULL);
        sigaction(SIGTERM, &act, NULL);
 
-       /* trigger timeout to interrupt blocking syscalls */
+       /* trigger timeout to prevent hanging processes */
        alarm(ALARM_TIMEOUT);
 
+       action = getenv("ACTION");
+       devpath = getenv("DEVPATH");
+       subsystem = getenv("SUBSYSTEM");
+       /* older kernels passed the SUBSYSTEM only as argument */
+       if (!subsystem && argc == 2)
+               subsystem = argv[1];
        udev_init_device(&udev, devpath, subsystem);
 
-       if (strstr(argv[0], "udevstart") || (argv[1] != NULL && strstr(argv[1], "udevstart"))) {
+       if (strstr(argv[0], "udevstart") || (argc == 2 && strstr(argv[1], "udevstart"))) {
                dbg("udevstart");
 
                /* disable all logging, as it's much too slow on some facilities */
diff --git a/udev.h b/udev.h
index 2c5270a4c34bd28cee6c8c064d69dc0e9d2e1901..0703b884cfd85b5c75392fa0afbff5d306963913 100644 (file)
--- a/udev.h
+++ b/udev.h
 struct udevice {
        char devpath[DEVPATH_SIZE];
        char subsystem[SUBSYSTEM_SIZE];
+
        char name[NAME_SIZE];
+       char symlink[NAME_SIZE];
        char owner[OWNER_SIZE];
        char group[GROUP_SIZE];
+       mode_t mode;
        char type;
        int major;
        int minor;
-       mode_t mode;
-       char symlink[NAME_SIZE];
+
+       char devname[NAME_SIZE];
        int partitions;
        int ignore_remove;
        int config_line;
@@ -67,7 +70,6 @@ struct udevice {
        char program_result[NAME_SIZE];
        char kernel_number[NAME_SIZE];
        char kernel_name[NAME_SIZE];
-       char devname[NAME_SIZE];
        int test_run;
 };