From 2af003feb21e79b68b048c212bb898b293b75421 Mon Sep 17 00:00:00 2001 From: "kay.sievers@vrfy.org" Date: Mon, 29 Nov 2004 02:15:55 +0100 Subject: [PATCH] [PATCH] trivial cleanups and change some comments --- udev.c | 11 ++++++++--- udev.h | 8 +++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/udev.c b/udev.c index 847cc5dade4..ca79bb4ec0e 100644 --- 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 2c5270a4c34..0703b884cfd 100644 --- a/udev.h +++ b/udev.h @@ -50,14 +50,17 @@ 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; };