summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/hardened-patches/hardened-patches-2.6-5.6/2005_modules_off-2.6.3.patch')
-rw-r--r--src/kernel/hardened-patches/hardened-patches-2.6-5.6/2005_modules_off-2.6.3.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/src/kernel/hardened-patches/hardened-patches-2.6-5.6/2005_modules_off-2.6.3.patch b/src/kernel/hardened-patches/hardened-patches-2.6-5.6/2005_modules_off-2.6.3.patch
deleted file mode 100644
index 73d9f8c411..0000000000
--- a/src/kernel/hardened-patches/hardened-patches-2.6-5.6/2005_modules_off-2.6.3.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-diff -uprN -X dontdiff linux-2.6.3-vanilla/fs/proc/proc_misc.c modules_off/linux-2.6.3-modules_off/fs/proc/proc_misc.c
---- linux-2.6.3-vanilla/fs/proc/proc_misc.c 2004-02-18 04:57:16.000000000 +0100
-+++ modules_off/linux-2.6.3-modules_off/fs/proc/proc_misc.c 2004-03-09 19:10:10.016286832 +0100
-@@ -70,6 +70,7 @@ extern int get_locks_status (char *, cha
- #ifdef CONFIG_SGI_DS1286
- extern int get_ds1286_status(char *);
- #endif
-+extern int module_loading_enabled;
-
- static int proc_calc_metrics(char *page, char **start, off_t off,
- int count, int *eof, int len)
-@@ -334,9 +335,31 @@ static int modules_open(struct inode *in
- {
- return seq_open(file, &modules_op);
- }
-+
-+static int modules_write(struct file *file, const char __user *buf,
-+ size_t count, loff_t *ppos)
-+{
-+ char tmp[4];
-+
-+ if (!count)
-+ return -EINVAL;
-+ if (count > 4)
-+ count = 4;
-+ if (copy_from_user(&tmp[0], buf, count))
-+ return -EFAULT;
-+ if (tmp[0]=='o') {
-+ printk(KERN_INFO "Disabled module (un)loading\n");
-+ module_loading_enabled = 0;
-+ }
-+
-+ return count;
-+
-+}
-+
- static struct file_operations proc_modules_operations = {
- .open = modules_open,
- .read = seq_read,
-+ .write = modules_write,
- .llseek = seq_lseek,
- .release = seq_release,
- };
-diff -uprN -X dontdiff linux-2.6.3-vanilla/kernel/module.c modules_off/linux-2.6.3-modules_off/kernel/module.c
---- linux-2.6.3-vanilla/kernel/module.c 2004-02-18 04:58:48.000000000 +0100
-+++ modules_off/linux-2.6.3-modules_off/kernel/module.c 2004-03-09 18:47:10.709973264 +0100
-@@ -53,6 +53,8 @@
- #define symbol_is(literal, string) \
- (strcmp(MODULE_SYMBOL_PREFIX literal, (string)) == 0)
-
-+int module_loading_enabled = 1;
-+
- /* Protects module list */
- static spinlock_t modlist_lock = SPIN_LOCK_UNLOCKED;
-
-@@ -667,6 +669,9 @@ sys_delete_module(const char __user *nam
-
- if (!capable(CAP_SYS_MODULE))
- return -EPERM;
-+
-+ if (!module_loading_enabled)
-+ return -ENOSYS;
-
- if (strncpy_from_user(name, name_user, MODULE_NAME_LEN-1) < 0)
- return -EFAULT;
-@@ -1720,6 +1725,9 @@ sys_init_module(void __user *umod,
- /* Must have permission */
- if (!capable(CAP_SYS_MODULE))
- return -EPERM;
-+
-+ if (!module_loading_enabled)
-+ return -ENOSYS;
-
- /* Only one module load at a time, please */
- if (down_interruptible(&module_mutex) != 0)