|
@@ -1430,9 +1430,9 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
read_unlock(&binfmt_lock);
|
|
read_unlock(&binfmt_lock);
|
|
|
|
+#ifdef CONFIG_MODULES
|
|
if (retval != -ENOEXEC || bprm->mm == NULL) {
|
|
if (retval != -ENOEXEC || bprm->mm == NULL) {
|
|
break;
|
|
break;
|
|
-#ifdef CONFIG_MODULES
|
|
|
|
} else {
|
|
} else {
|
|
#define printable(c) (((c)=='\t') || ((c)=='\n') || (0x20<=(c) && (c)<=0x7e))
|
|
#define printable(c) (((c)=='\t') || ((c)=='\n') || (0x20<=(c) && (c)<=0x7e))
|
|
if (printable(bprm->buf[0]) &&
|
|
if (printable(bprm->buf[0]) &&
|
|
@@ -1443,8 +1443,10 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
|
|
if (try)
|
|
if (try)
|
|
break; /* -ENOEXEC */
|
|
break; /* -ENOEXEC */
|
|
request_module("binfmt-%04x", *(unsigned short *)(&bprm->buf[2]));
|
|
request_module("binfmt-%04x", *(unsigned short *)(&bprm->buf[2]));
|
|
-#endif
|
|
|
|
}
|
|
}
|
|
|
|
+#else
|
|
|
|
+ break;
|
|
|
|
+#endif
|
|
}
|
|
}
|
|
return retval;
|
|
return retval;
|
|
}
|
|
}
|