aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2016-02-12 23:26:51 -0500
committerMike Frysinger <vapier@gentoo.org>2016-02-12 23:26:51 -0500
commit3a5cc989025eefe03fda0552b253a4a8f015a761 (patch)
tree30a9aff158adbf1792a23de9aa229b80ff3c5568
parent43e56639c6739953d5a6686823bcd0d256512ea5 (diff)
downloadbusybox-w32-3a5cc989025eefe03fda0552b253a4a8f015a761.tar.gz
busybox-w32-3a5cc989025eefe03fda0552b253a4a8f015a761.tar.bz2
busybox-w32-3a5cc989025eefe03fda0552b253a4a8f015a761.zip
modprobe: only parse files that end in .conf
This matches behavior with kmod which has been the standard for a long time at this point. URL: https://bugs.busybox.net/8021 Reported-by: Jö <jorrit@jorrit.de> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rw-r--r--modutils/modprobe.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/modutils/modprobe.c b/modutils/modprobe.c
index ec490b74d..997ee3c67 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -220,8 +220,16 @@ static int FAST_FUNC config_file_action(const char *filename,
220 parser_t *p; 220 parser_t *p;
221 struct module_entry *m; 221 struct module_entry *m;
222 int rc = TRUE; 222 int rc = TRUE;
223 const char *base, *ext;
223 224
224 if (bb_basename(filename)[0] == '.') 225 /* Skip files that begin with a ".". */
226 base = bb_basename(filename);
227 if (base[0] == '.')
228 goto error;
229
230 /* Skip files that do not end with a ".conf". */
231 ext = strrchr(base, '.');
232 if (ext == NULL || strcmp(ext + 1, "conf"))
225 goto error; 233 goto error;
226 234
227 p = config_open2(filename, fopen_for_read); 235 p = config_open2(filename, fopen_for_read);