summaryrefslogtreecommitdiff
path: root/udev.c
diff options
context:
space:
mode:
authorkay.sievers@vrfy.org <kay.sievers@vrfy.org>2004-02-26 19:40:32 -0800
committerGreg KH <gregkh@suse.de>2005-04-26 21:32:30 -0700
commite964c2c05d3d6e2bdb21b3461ed7a4e85315cbc1 (patch)
tree942e0b9c0bdd90ec7d0f0c98abf94ba7c75159af /udev.c
parent831f800da34ddb449aecae925cd1f154f20b1eed (diff)
[PATCH] udev - safer string handling - part three
Here we truncate our input strings from the environment to our defined limit. It's a bit theroretical but better check for it. It cleans up some magic length definitions and removes the code duplication in udev, udevtest and udevsend. udevd needs to be killed after installation, cause the message size is changed with this patch. Should we do this with the 'make install', like we do with the '.udevdb'?
Diffstat (limited to 'udev.c')
-rw-r--r--udev.c30
1 files changed, 2 insertions, 28 deletions
diff --git a/udev.c b/udev.c
index 1c65f2e59c..4486707f42 100644
--- a/udev.c
+++ b/udev.c
@@ -43,7 +43,7 @@ char **main_envp;
unsigned char logname[42];
void log_message (int level, const char *format, ...)
{
- va_list args;
+ va_list args;
if (!udev_log)
return;
@@ -67,30 +67,6 @@ static void sig_handler(int signum)
}
}
-static inline char *get_action(void)
-{
- char *action;
-
- action = getenv("ACTION");
- return action;
-}
-
-static inline char *get_devpath(void)
-{
- char *devpath;
-
- devpath = getenv("DEVPATH");
- return devpath;
-}
-
-static inline char *get_seqnum(void)
-{
- char *seqnum;
-
- seqnum = getenv("SEQNUM");
- return seqnum;
-}
-
static char *subsystem_blacklist[] = {
"net",
"scsi_host",
@@ -130,7 +106,7 @@ static int udev_hotplug(int argc, char **argv)
}
/* skip blacklisted subsystems */
- subsystem = argv[1];
+ subsystem = get_subsystem(argv[1]);
if (!subsystem) {
dbg("no subsystem?");
goto exit;
@@ -200,5 +176,3 @@ int main(int argc, char **argv, char **envp)
return udev_hotplug(argc, argv);
}
-
-