diff options
Diffstat (limited to 'source/a/module-init-tools/modprobe.ignore_some_suffixes.diff')
-rw-r--r-- | source/a/module-init-tools/modprobe.ignore_some_suffixes.diff | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/source/a/module-init-tools/modprobe.ignore_some_suffixes.diff b/source/a/module-init-tools/modprobe.ignore_some_suffixes.diff deleted file mode 100644 index 5517502b..00000000 --- a/source/a/module-init-tools/modprobe.ignore_some_suffixes.diff +++ /dev/null @@ -1,41 +0,0 @@ -diff -Nur module-init-tools-3.12.orig//modprobe.c module-init-tools-3.12/modprobe.c ---- module-init-tools-3.12.orig//modprobe.c 2010-05-04 00:19:27.000000000 -0500 -+++ module-init-tools-3.12/modprobe.c 2010-06-08 04:32:46.655088739 -0500 -@@ -38,6 +38,7 @@ - #include <asm/unistd.h> - #include <sys/wait.h> - #include <syslog.h> -+#include <regex.h> - - #include "util.h" - #include "elfops.h" -@@ -789,6 +790,20 @@ - return strsep(string, delim); - } - -+/* Let's exclude a few file extensions */ -+static int valid_file_name(const char *filename) -+{ -+ static regex_t *re = NULL; -+ -+ if (!re) { -+ re = NOFAIL(malloc(sizeof(regex_t))); -+ if (regcomp(re, "(^(\\.|\\.\\.)|\\.(new|orig|bak)$)", -+ REG_EXTENDED|REG_NOSUB) != 0) -+ fatal("regcomp failed: %s\n", strerror(errno)); -+ } -+ return regexec(re, filename, 0, NULL, 0); -+} -+ - static int parse_config_scan(const char *filename, - struct modprobe_conf *conf, - int dump_only, -@@ -1066,6 +1081,8 @@ - while ((i = readdir(dir)) != NULL) { - size_t len; - -+ if (!valid_file_name(i->d_name)) -+ continue; - if (i->d_name[0] == '.') - continue; - if (!config_filter(i->d_name)) |