From 47e76de56a372796260b06a55f0be7765ee2f54f Mon Sep 17 00:00:00 2001 From: Matt Johnston Date: Mon, 12 Feb 2007 10:43:44 +0000 Subject: Disable core dumps --HG-- extra : convert_revision : ba8ebf724630561c6b9285247be7574a33853a17 --- cli-main.c | 2 ++ dbutil.c | 6 ++++++ dbutil.h | 1 + includes.h | 1 + svr-main.c | 2 ++ 5 files changed, 12 insertions(+) diff --git a/cli-main.c b/cli-main.c index 3f767c9..68cf023 100644 --- a/cli-main.c +++ b/cli-main.c @@ -47,6 +47,8 @@ int main(int argc, char ** argv) { _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 --git a/dbutil.c b/dbutil.c index f06b8bf..4559ba9 100644 --- a/dbutil.c +++ b/dbutil.c @@ -693,3 +693,9 @@ void setnonblocking(int fd) { } TRACE(("leave setnonblocking")) } + +void disallow_core() { + struct rlimit lim; + lim.rlim_cur = lim.rlim_max = 0; + setrlimit(RLIMIT_CORE, &lim); +} diff --git a/dbutil.h b/dbutil.h index d74e17e..856978d 100644 --- a/dbutil.h +++ b/dbutil.h @@ -63,6 +63,7 @@ void * m_realloc(void* ptr, size_t size); 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 --git a/includes.h b/includes.h index 1fcf634..017de66 100644 --- a/includes.h +++ b/includes.h @@ -38,6 +38,7 @@ #include #include #include +#include #include #include diff --git a/svr-main.c b/svr-main.c index e228acf..ddf5445 100644 --- a/svr-main.c +++ b/svr-main.c @@ -52,6 +52,8 @@ int main(int argc, char ** argv) _dropbear_exit = svr_dropbear_exit; _dropbear_log = svr_dropbear_log; + disallow_core(); + /* get commandline options */ svr_getopts(argc, argv); -- cgit v1.2.3