forked from Qortal/Brooklyn
2a709f28fa
* 0day explit mitigation * Memory corruption prevention * Privilege escalation prevention * Buffer over flow prevention * File System corruption defense * Thread escape prevention This may very well be the most intensive inclusion to BrooklynR. This will not be part of an x86 suite nor it will be released as tool kit. The security core toolkit will remain part of kernel base.
47 lines
1.3 KiB
C
47 lines
1.3 KiB
C
#include <linux/kernel.h>
|
|
#include <linux/crash_dump.h>
|
|
#include <linux/init.h>
|
|
#include <linux/errno.h>
|
|
#include <linux/export.h>
|
|
|
|
/*
|
|
* If we have booted due to a crash, max_pfn will be a very low value. We need
|
|
* to know the amount of memory that the previous kernel used.
|
|
*/
|
|
unsigned long saved_max_pfn;
|
|
|
|
/*
|
|
* stores the physical address of elf header of crash image
|
|
*
|
|
* Note: elfcorehdr_addr is not just limited to vmcore. It is also used by
|
|
* is_kdump_kernel() to determine if we are booting after a panic. Hence put
|
|
* it under CONFIG_CRASH_DUMP and not CONFIG_PROC_VMCORE.
|
|
*/
|
|
unsigned long long elfcorehdr_addr = ELFCORE_ADDR_MAX;
|
|
EXPORT_SYMBOL_GPL(elfcorehdr_addr);
|
|
|
|
/*
|
|
* stores the size of elf header of crash image
|
|
*/
|
|
unsigned long long elfcorehdr_size;
|
|
|
|
/*
|
|
* elfcorehdr= specifies the location of elf core header stored by the crashed
|
|
* kernel. This option will be passed by kexec loader to the capture kernel.
|
|
*
|
|
* Syntax: elfcorehdr=[size[KMG]@]offset[KMG]
|
|
*/
|
|
static int __init setup_elfcorehdr(char *arg)
|
|
{
|
|
char *end;
|
|
if (!arg)
|
|
return -EINVAL;
|
|
elfcorehdr_addr = memparse(arg, &end);
|
|
if (*end == '@') {
|
|
elfcorehdr_size = elfcorehdr_addr;
|
|
elfcorehdr_addr = memparse(end + 1, &end);
|
|
}
|
|
return end > arg ? 0 : -EINVAL;
|
|
}
|
|
early_param("elfcorehdr", setup_elfcorehdr);
|