make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size
Subsystems (3)
PATCH 1/1 make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size
Make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size and change it to 128, so that extensive patterns such as '/local/cores/%e-%h-%s-%t-%p.core' won't result in truncated filename generation.
fs/exec.c +1 -3
@@ -60,7 +60,7 @@#endif int core_uses_pid; -char core_pattern[128 ] ="core" ; +char core_pattern[CORENAME_MAX_SIZE ] ="core" ;int suid_dumpable =0 ;EXPORT_SYMBOL (suid_dumpable);
@@ -1264,8 +1264,6 @@ int set_binfmt(struct linux_binfmt *new)EXPORT_SYMBOL (set_binfmt); -#define CORENAME_MAX_SIZE 64 -/* format_corename will inspect the pattern parameter, and output a * name into corename, which must have space for at least * CORENAME_MAX_SIZE bytes plus one byte for the zero terminator.
include/linux/binfmts.h +2 -0
@@ -17,6 +17,8 @@ struct pt_regs;#ifdef __KERNEL__ +#define CORENAME_MAX_SIZE 128 +/* * This structure is used to hold the arguments that are used when loading binaries. */
kernel/sysctl.c +1 -1
@@ -227,7 +227,7 @@ static ctl_table kern_table[] = { .ctl_name = KERN_CORE_PATTERN, .procname = "core_pattern", .data = core_pattern, - .maxlen = 128, + .maxlen = CORENAME_MAX_SIZE, .mode = 0644, .proc_handler = &proc_dostring, .strategy = &sysctl_string,
Signature · 3 lines
Dan Aloni XIV LTD, http://www.xivstorage.com da-x (at) monatomic.org, dan (at) xiv.co.il
PATCH 1/1 make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size
Make sysctl/kernel/core_pattern and fs/exec.c agree on maximum core filename size and change it to 128, so that extensive patterns such as '/local/cores/%e-%h-%s-%t-%p.core' won't result in truncated filename generation.
Signed-off-by Dan Aloni <[email protected]>
fs/exec.c +1 -3
@@ -60,7 +60,7 @@#endif int core_uses_pid; -char core_pattern[128 ] ="core" ; +char core_pattern[CORENAME_MAX_SIZE ] ="core" ;int suid_dumpable =0 ;EXPORT_SYMBOL (suid_dumpable);
@@ -1264,8 +1264,6 @@ int set_binfmt(struct linux_binfmt *new)EXPORT_SYMBOL (set_binfmt); -#define CORENAME_MAX_SIZE 64 -/* format_corename will inspect the pattern parameter, and output a * name into corename, which must have space for at least * CORENAME_MAX_SIZE bytes plus one byte for the zero terminator.
include/linux/binfmts.h +2 -0
@@ -17,6 +17,8 @@ struct pt_regs;#ifdef __KERNEL__ +#define CORENAME_MAX_SIZE 128 +/* * This structure is used to hold the arguments that are used when loading binaries. */
kernel/sysctl.c +1 -1
@@ -227,7 +227,7 @@ static ctl_table kern_table[] = { .ctl_name = KERN_CORE_PATTERN, .procname = "core_pattern", .data = core_pattern, - .maxlen = 128, + .maxlen = CORENAME_MAX_SIZE, .mode = 0644, .proc_handler = &proc_dostring, .strategy = &sysctl_string,
Signature · 3 lines
Dan Aloni XIV LTD, http://www.xivstorage.com da-x (at) monatomic.org, dan (at) xiv.co.il