mirror of
git://anongit.mindrot.org/openssh.git
synced 2024-11-28 16:23:23 +08:00
- markus@cvs.openbsd.org 2002/11/18 16:43:44
[clientloop.c] don't overwrite SIG{INT,QUIT,TERM} handler if set to SIG_IGN; e.g. if ssh is used for backup; report Joerg Schilling; ok millert@
This commit is contained in:
parent
44adb8fed9
commit
f49dbff61d
@ -6,6 +6,10 @@
|
||||
Simplify the code and check for errors using fstat(2).
|
||||
|
||||
Problem reported by Mauricio Sanchez, markus@ ok.
|
||||
- markus@cvs.openbsd.org 2002/11/18 16:43:44
|
||||
[clientloop.c]
|
||||
don't overwrite SIG{INT,QUIT,TERM} handler if set to SIG_IGN;
|
||||
e.g. if ssh is used for backup; report Joerg Schilling; ok millert@
|
||||
|
||||
20021205
|
||||
- (djm) PERL-free fixpaths from stuge-openssh-unix-dev@cdy.org
|
||||
@ -841,4 +845,4 @@
|
||||
save auth method before monitor_reset_key_state(); bugzilla bug #284;
|
||||
ok provos@
|
||||
|
||||
$Id: ChangeLog,v 1.2516 2002/12/23 02:00:23 mouring Exp $
|
||||
$Id: ChangeLog,v 1.2517 2002/12/23 02:01:55 mouring Exp $
|
||||
|
16
clientloop.c
16
clientloop.c
@ -59,7 +59,7 @@
|
||||
*/
|
||||
|
||||
#include "includes.h"
|
||||
RCSID("$OpenBSD: clientloop.c,v 1.104 2002/08/22 19:38:42 stevesk Exp $");
|
||||
RCSID("$OpenBSD: clientloop.c,v 1.105 2002/11/18 16:43:44 markus Exp $");
|
||||
|
||||
#include "ssh.h"
|
||||
#include "ssh1.h"
|
||||
@ -888,10 +888,16 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id)
|
||||
|
||||
client_init_dispatch();
|
||||
|
||||
/* Set signal handlers to restore non-blocking mode. */
|
||||
signal(SIGINT, signal_handler);
|
||||
signal(SIGQUIT, signal_handler);
|
||||
signal(SIGTERM, signal_handler);
|
||||
/*
|
||||
* Set signal handlers, (e.g. to restore non-blocking mode)
|
||||
* but don't overwrite SIG_IGN, matches behaviour from rsh(1)
|
||||
*/
|
||||
if (signal(SIGINT, SIG_IGN) != SIG_IGN)
|
||||
signal(SIGINT, signal_handler);
|
||||
if (signal(SIGQUIT, SIG_IGN) != SIG_IGN)
|
||||
signal(SIGQUIT, signal_handler);
|
||||
if (signal(SIGTERM, SIG_IGN) != SIG_IGN)
|
||||
signal(SIGTERM, signal_handler);
|
||||
if (have_pty)
|
||||
signal(SIGWINCH, window_change_handler);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user