diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | serverloop.c | 2 | ||||
-rw-r--r-- | session.c | 4 |
3 files changed, 2 insertions, 7 deletions
@@ -13,6 +13,7 @@ | |||
13 | - markus@cvs.openbsd.org 2001/03/23 14:28:32 | 13 | - markus@cvs.openbsd.org 2001/03/23 14:28:32 |
14 | [session.c sshd.c] | 14 | [session.c sshd.c] |
15 | ignore SIGPIPE, restore in child, fixes x11-fwd crashes; with djm@ | 15 | ignore SIGPIPE, restore in child, fixes x11-fwd crashes; with djm@ |
16 | - (djm) Pull out our own SIGPIPE hacks | ||
16 | 17 | ||
17 | 20010323 | 18 | 20010323 |
18 | - OpenBSD CVS Sync | 19 | - OpenBSD CVS Sync |
@@ -4704,4 +4705,4 @@ | |||
4704 | - Wrote replacements for strlcpy and mkdtemp | 4705 | - Wrote replacements for strlcpy and mkdtemp |
4705 | - Released 1.0pre1 | 4706 | - Released 1.0pre1 |
4706 | 4707 | ||
4707 | $Id: ChangeLog,v 1.1014 2001/03/24 00:43:26 mouring Exp $ | 4708 | $Id: ChangeLog,v 1.1015 2001/03/24 04:39:38 djm Exp $ |
diff --git a/serverloop.c b/serverloop.c index 66bc52573..d1290ff22 100644 --- a/serverloop.c +++ b/serverloop.c | |||
@@ -420,7 +420,6 @@ server_loop(pid_t pid, int fdin_arg, int fdout_arg, int fderr_arg) | |||
420 | child_pid = pid; | 420 | child_pid = pid; |
421 | child_terminated = 0; | 421 | child_terminated = 0; |
422 | signal(SIGCHLD, sigchld_handler); | 422 | signal(SIGCHLD, sigchld_handler); |
423 | signal(SIGPIPE, SIG_IGN); | ||
424 | 423 | ||
425 | /* Initialize our global variables. */ | 424 | /* Initialize our global variables. */ |
426 | fdin = fdin_arg; | 425 | fdin = fdin_arg; |
@@ -655,7 +654,6 @@ server_loop2(void) | |||
655 | debug("Entering interactive session for SSH2."); | 654 | debug("Entering interactive session for SSH2."); |
656 | 655 | ||
657 | mysignal(SIGCHLD, sigchld_handler2); | 656 | mysignal(SIGCHLD, sigchld_handler2); |
658 | signal(SIGPIPE, SIG_IGN); | ||
659 | child_terminated = 0; | 657 | child_terminated = 0; |
660 | connection_in = packet_get_connection_in(); | 658 | connection_in = packet_get_connection_in(); |
661 | connection_out = packet_get_connection_out(); | 659 | connection_out = packet_get_connection_out(); |
@@ -496,8 +496,6 @@ do_exec_no_pty(Session *s, const char *command) | |||
496 | /* Child. Reinitialize the log since the pid has changed. */ | 496 | /* Child. Reinitialize the log since the pid has changed. */ |
497 | log_init(__progname, options.log_level, options.log_facility, log_stderr); | 497 | log_init(__progname, options.log_level, options.log_facility, log_stderr); |
498 | 498 | ||
499 | signal(SIGPIPE, SIG_DFL); | ||
500 | |||
501 | /* | 499 | /* |
502 | * Create a new session and process group since the 4.4BSD | 500 | * Create a new session and process group since the 4.4BSD |
503 | * setlogin() affects the entire process group. | 501 | * setlogin() affects the entire process group. |
@@ -613,8 +611,6 @@ do_exec_pty(Session *s, const char *command) | |||
613 | /* Child. Reinitialize the log because the pid has changed. */ | 611 | /* Child. Reinitialize the log because the pid has changed. */ |
614 | log_init(__progname, options.log_level, options.log_facility, log_stderr); | 612 | log_init(__progname, options.log_level, options.log_facility, log_stderr); |
615 | 613 | ||
616 | signal(SIGPIPE, SIG_DFL); | ||
617 | |||
618 | /* Close the master side of the pseudo tty. */ | 614 | /* Close the master side of the pseudo tty. */ |
619 | close(ptyfd); | 615 | close(ptyfd); |
620 | 616 | ||