summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Lindstrom <mouring@eviladmin.org>2001-03-24 00:43:26 +0000
committerBen Lindstrom <mouring@eviladmin.org>2001-03-24 00:43:26 +0000
commitde71cda07824ec31b5ad2965879fab123d743708 (patch)
treee3f7697165fe18f325d5094671999ae6c331987a
parent7527f8b52dea7485f28e86778ce22e611d1cb277 (diff)
- markus@cvs.openbsd.org 2001/03/23 14:28:32
[session.c sshd.c] ignore SIGPIPE, restore in child, fixes x11-fwd crashes; with djm@
-rw-r--r--ChangeLog5
-rw-r--r--session.c6
-rw-r--r--sshd.c5
3 files changed, 13 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 6c61cbe66..f465d5d10 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,6 +10,9 @@
10 - markus@cvs.openbsd.org 2001/03/23 13:10:57 10 - markus@cvs.openbsd.org 2001/03/23 13:10:57
11 [sftp-int.c] 11 [sftp-int.c]
12 fix put, upload to _absolute_ path, ok djm@ 12 fix put, upload to _absolute_ path, ok djm@
13 - markus@cvs.openbsd.org 2001/03/23 14:28:32
14 [session.c sshd.c]
15 ignore SIGPIPE, restore in child, fixes x11-fwd crashes; with djm@
13 16
1420010323 1720010323
15 - OpenBSD CVS Sync 18 - OpenBSD CVS Sync
@@ -4701,4 +4704,4 @@
4701 - Wrote replacements for strlcpy and mkdtemp 4704 - Wrote replacements for strlcpy and mkdtemp
4702 - Released 1.0pre1 4705 - Released 1.0pre1
4703 4706
4704$Id: ChangeLog,v 1.1013 2001/03/24 00:39:12 mouring Exp $ 4707$Id: ChangeLog,v 1.1014 2001/03/24 00:43:26 mouring Exp $
diff --git a/session.c b/session.c
index 3ec97d0d1..13fe01870 100644
--- a/session.c
+++ b/session.c
@@ -33,7 +33,7 @@
33 */ 33 */
34 34
35#include "includes.h" 35#include "includes.h"
36RCSID("$OpenBSD: session.c,v 1.66 2001/03/21 21:06:30 markus Exp $"); 36RCSID("$OpenBSD: session.c,v 1.67 2001/03/23 14:28:32 markus Exp $");
37 37
38#include "ssh.h" 38#include "ssh.h"
39#include "ssh1.h" 39#include "ssh1.h"
@@ -1427,6 +1427,10 @@ do_child(Session *s, const char *command)
1427 else 1427 else
1428 cp = shell; 1428 cp = shell;
1429 } 1429 }
1430
1431 /* restore SIGPIPE for child */
1432 signal(SIGPIPE, SIG_DFL);
1433
1430 /* 1434 /*
1431 * If we have no command, execute the shell. In this case, the shell 1435 * If we have no command, execute the shell. In this case, the shell
1432 * name to be passed in argv[0] is preceded by '-' to indicate that 1436 * name to be passed in argv[0] is preceded by '-' to indicate that
diff --git a/sshd.c b/sshd.c
index a12e9211f..0ac78cbaf 100644
--- a/sshd.c
+++ b/sshd.c
@@ -40,7 +40,7 @@
40 */ 40 */
41 41
42#include "includes.h" 42#include "includes.h"
43RCSID("$OpenBSD: sshd.c,v 1.177 2001/03/23 11:04:07 djm Exp $"); 43RCSID("$OpenBSD: sshd.c,v 1.178 2001/03/23 14:28:32 markus Exp $");
44 44
45#include <openssl/dh.h> 45#include <openssl/dh.h>
46#include <openssl/bn.h> 46#include <openssl/bn.h>
@@ -809,6 +809,9 @@ main(int ac, char **av)
809 /* Chdir to the root directory so that the current disk can be 809 /* Chdir to the root directory so that the current disk can be
810 unmounted if desired. */ 810 unmounted if desired. */
811 chdir("/"); 811 chdir("/");
812
813 /* ignore SIGPIPE */
814 signal(SIGPIPE, SIG_IGN);
812 815
813 /* Start listening for a socket, unless started from inetd. */ 816 /* Start listening for a socket, unless started from inetd. */
814 if (inetd_flag) { 817 if (inetd_flag) {