From 78854520ebecfd24d5c80a266d6779bd1e069016 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 1 Jan 2015 19:02:40 +0100 Subject: modprobe: revert checking for /, stop doing basename() on modprobe args function old new delta process_module 726 719 -7 filename2modname 81 67 -14 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-21) Total: -21 bytes Signed-off-by: Denys Vlasenko --- modutils/modprobe-small.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modutils/modprobe-small.c') diff --git a/modutils/modprobe-small.c b/modutils/modprobe-small.c index b7990bff1..dafe91ed7 100644 --- a/modutils/modprobe-small.c +++ b/modutils/modprobe-small.c @@ -149,9 +149,13 @@ static void replace(char *s, char what, char with) static char *filename2modname(const char *filename, char *modname) { int i; - char *from; + const char *from; - from = bb_get_last_path_component_nostrip(filename); + // Disabled since otherwise "modprobe dir/name" would work + // as if it is "modprobe name". It is unclear why + // 'basenamization' was here in the first place. + //from = bb_get_last_path_component_nostrip(filename); + from = filename; for (i = 0; i < (MODULE_NAME_LEN-1) && from[i] != '\0' && from[i] != '.'; i++) modname[i] = (from[i] == '-') ? '_' : from[i]; modname[i] = '\0'; -- cgit v1.2.3