# HG changeset patch # User Matt Johnston # Date 1171277024 0 # Node ID 1afa503e33f5ab4d440bc9d5e0c8ac032859482d # Parent 7f010e3b18020766e35f96419cdee02eb74e1a43 Disable core dumps diff -r 7f010e3b1802 -r 1afa503e33f5 cli-main.c --- a/cli-main.c Sun Feb 11 10:46:44 2007 +0000 +++ b/cli-main.c Mon Feb 12 10:43:44 2007 +0000 @@ -47,6 +47,8 @@ _dropbear_exit = cli_dropbear_exit; _dropbear_log = cli_dropbear_log; + disallow_core(); + cli_getopts(argc, argv); TRACE(("user='%s' host='%s' port='%s'", cli_opts.username, diff -r 7f010e3b1802 -r 1afa503e33f5 dbutil.c --- a/dbutil.c Sun Feb 11 10:46:44 2007 +0000 +++ b/dbutil.c Mon Feb 12 10:43:44 2007 +0000 @@ -693,3 +693,9 @@ } TRACE(("leave setnonblocking")) } + +void disallow_core() { + struct rlimit lim; + lim.rlim_cur = lim.rlim_max = 0; + setrlimit(RLIMIT_CORE, &lim); +} diff -r 7f010e3b1802 -r 1afa503e33f5 dbutil.h --- a/dbutil.h Sun Feb 11 10:46:44 2007 +0000 +++ b/dbutil.h Mon Feb 12 10:43:44 2007 +0000 @@ -63,6 +63,7 @@ void __m_free(void* ptr); void m_burn(void* data, unsigned int len); void setnonblocking(int fd); +void disallow_core(); /* Used to force mp_ints to be initialised */ #define DEF_MP_INT(X) mp_int X = {0, 0, 0, NULL} diff -r 7f010e3b1802 -r 1afa503e33f5 includes.h --- a/includes.h Sun Feb 11 10:46:44 2007 +0000 +++ b/includes.h Mon Feb 12 10:43:44 2007 +0000 @@ -38,6 +38,7 @@ #include #include #include +#include #include #include diff -r 7f010e3b1802 -r 1afa503e33f5 svr-main.c --- a/svr-main.c Sun Feb 11 10:46:44 2007 +0000 +++ b/svr-main.c Mon Feb 12 10:43:44 2007 +0000 @@ -52,6 +52,8 @@ _dropbear_exit = svr_dropbear_exit; _dropbear_log = svr_dropbear_log; + disallow_core(); + /* get commandline options */ svr_getopts(argc, argv);