diff options
Diffstat (limited to 'sshd.c')
-rw-r--r-- | sshd.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshd.c,v 1.393 2012/07/10 02:19:15 djm Exp $ */ | 1 | /* $OpenBSD: sshd.c,v 1.394 2012/10/30 21:29:55 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -359,6 +359,15 @@ grace_alarm_handler(int sig) | |||
359 | if (use_privsep && pmonitor != NULL && pmonitor->m_pid > 0) | 359 | if (use_privsep && pmonitor != NULL && pmonitor->m_pid > 0) |
360 | kill(pmonitor->m_pid, SIGALRM); | 360 | kill(pmonitor->m_pid, SIGALRM); |
361 | 361 | ||
362 | /* | ||
363 | * Try to kill any processes that we have spawned, E.g. authorized | ||
364 | * keys command helpers. | ||
365 | */ | ||
366 | if (getpgid(0) == getpid()) { | ||
367 | signal(SIGTERM, SIG_IGN); | ||
368 | killpg(0, SIGTERM); | ||
369 | } | ||
370 | |||
362 | /* Log error and exit. */ | 371 | /* Log error and exit. */ |
363 | sigdie("Timeout before authentication for %s", get_remote_ipaddr()); | 372 | sigdie("Timeout before authentication for %s", get_remote_ipaddr()); |
364 | } | 373 | } |