diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | platform.c | 10 | ||||
-rw-r--r-- | platform.h | 3 | ||||
-rw-r--r-- | sshd.c | 1 |
4 files changed, 17 insertions, 2 deletions
@@ -1,3 +1,8 @@ +20130922 + - (dtucker) [platform.c platform.h sshd.c] bz#2156: restore Linux oom_adj + setting when handling SIGHUP to maintain behaviour over retart. Patch + from Matthew Ife. + 20130918 - (dtucker) [sshd_config] Trailing whitespace; from jstjohn at purdue edu. @@ -1,4 +1,4 @@ -/* $Id: platform.c,v 1.19 2013/03/12 00:31:05 dtucker Exp $ */ +/* $Id: platform.c,v 1.20 2013/09/22 09:02:40 dtucker Exp $ */ /* * Copyright (c) 2006 Darren Tucker. All rights reserved. @@ -55,6 +55,14 @@ platform_pre_fork(void) } void +platform_pre_restart(void) +{ +#ifdef LINUX_OOM_ADJUST + oom_adjust_restore(); +#endif +} + +void platform_post_fork_parent(pid_t child_pid) { #ifdef USE_SOLARIS_PROCESS_CONTRACTS @@ -1,4 +1,4 @@ -/* $Id: platform.h,v 1.8 2013/03/12 00:31:05 dtucker Exp $ */ +/* $Id: platform.h,v 1.9 2013/09/22 09:02:40 dtucker Exp $ */ /* * Copyright (c) 2006 Darren Tucker. All rights reserved. @@ -22,6 +22,7 @@ void platform_pre_listen(void); void platform_pre_fork(void); +void platform_pre_restart(void); void platform_post_fork_parent(pid_t child_pid); void platform_post_fork_child(void); int platform_privileged_uidswap(void); @@ -315,6 +315,7 @@ static void sighup_restart(void) { logit("Received SIGHUP; restarting."); + platform_pre_restart(); close_listen_socks(); close_startup_pipes(); alarm(0); /* alarm timer persists across exec */ |