diff options
author | Ingo Oeser <ioe-lkml@rameria.de> | 2008-07-23 01:25:01 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-08-21 10:15:34 -0700 |
commit | 25fdeb3f4468595ab2885687b13515fa848731c2 (patch) | |
tree | 841454db8ff56dfa260cc0a277023815909dbc7a /lib | |
parent | 6a55617ed5d1aa62b850de2cf66f5ede2eef4825 (diff) | |
download | op-kernel-dev-25fdeb3f4468595ab2885687b13515fa848731c2.zip op-kernel-dev-25fdeb3f4468595ab2885687b13515fa848731c2.tar.gz |
kobject: Replace ALL occurrences of '/' with '!' instead of only the first one.
A recent patch from Kay Sievers <kay.sievers@vrfy.org>
replaced the first occurrence of '/' with '!' as needed for block devices.
Now do some cheap defensive coding and replace all of them to avoid future
issues in this area.
Signed-off-by: Ingo Oeser <ioe-lkml@rameria.de>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/kobject.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/kobject.c b/lib/kobject.c index bd732ff..fbf0ae2 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -223,8 +223,7 @@ static int kobject_set_name_vargs(struct kobject *kobj, const char *fmt, return -ENOMEM; /* ewww... some of these buggers have '/' in the name ... */ - s = strchr(kobj->name, '/'); - if (s) + while ((s = strchr(kobj->name, '/'))) s[0] = '!'; kfree(old_name); |