48 lines
1.5 KiB
Diff
48 lines
1.5 KiB
Diff
--- busybox-1.13.0/modutils/modprobe-small.c Thu Oct 30 08:41:28 2008
|
|
+++ busybox-1.13.0-modprobe/modutils/modprobe-small.c Mon Nov 10 22:19:03 2008
|
|
@@ -600,18 +600,22 @@
|
|
free(deps);
|
|
|
|
/* modprobe -> load it */
|
|
- if (!is_rmmod && (options && !strstr(options, "blacklist"))) {
|
|
- errno = 0;
|
|
- if (load_module(info->pathname, options) != 0) {
|
|
- if (EEXIST != errno) {
|
|
- bb_error_msg("'%s': %s",
|
|
+ if (!is_rmmod) {
|
|
+ if (!options || strstr(options, "blacklist") == NULL) {
|
|
+ errno = 0;
|
|
+ if (load_module(info->pathname, options) != 0) {
|
|
+ if (EEXIST != errno) {
|
|
+ bb_error_msg("'%s': %s",
|
|
info->pathname,
|
|
moderror(errno));
|
|
- } else {
|
|
- dbg1_error_msg("'%s': %s",
|
|
+ } else {
|
|
+ dbg1_error_msg("'%s': %s",
|
|
info->pathname,
|
|
moderror(errno));
|
|
+ }
|
|
}
|
|
+ } else {
|
|
+ dbg1_error_msg("'%s': blacklisted", info->pathname);
|
|
}
|
|
}
|
|
ret:
|
|
--- busybox-1.13.0/modutils/modutils-24.c Thu Oct 30 08:41:28 2008
|
|
+++ busybox-1.13.0-modprobe/modutils/modutils-24.c Wed Nov 12 01:02:54 2008
|
|
@@ -3236,8 +3236,10 @@
|
|
}
|
|
|
|
shnum = f->header.e_shnum;
|
|
- f->sections = xmalloc(sizeof(struct obj_section *) * shnum);
|
|
- memset(f->sections, 0, sizeof(struct obj_section *) * shnum);
|
|
+ /* Growth of ->sections vector will be done by
|
|
+ * xrealloc_vector(..., 2, ...), therefore we must allocate
|
|
+ * at least 2^2 = 4 extra elements here. */
|
|
+ f->sections = xzalloc(sizeof(f->sections[0]) * (shnum + 4));
|
|
|
|
section_headers = alloca(sizeof(ElfW(Shdr)) * shnum);
|
|
fseek(fp, f->header.e_shoff, SEEK_SET);
|