- (djm) Ignore SIGPIPEs from serverloop to child. Fixes crashes with

very short lived X connections. Bug report from Tobias Oetiker
   <oetiker@ee.ethz.ch>. Fix from Markus Friedl <markus@cvs.openbsd.org>
This commit is contained in:
Damien Miller 2000-09-30 14:17:52 +11:00
Родитель b88532e389
Коммит cf3888d396
3 изменённых файлов: 7 добавлений и 0 удалений

Просмотреть файл

@ -3,6 +3,9 @@
- (djm) Support in bsd-snprintf.c for long long conversions from
Ben Lindstrom <mouring@pconline.com>
- (djm) Cleanup NeXT support from Ben Lindstrom <mouring@pconline.com>
- (djm) Ignore SIGPIPEs from serverloop to child. Fixes crashes with
very short lived X connections. Bug report from Tobias Oetiker
<oetiker@ee.ethz.ch>. Fix from Markus Friedl <markus@cvs.openbsd.org>
20000929
- (djm) Fix SSH2 not terminating until all background tasks done problem.

Просмотреть файл

@ -417,6 +417,7 @@ server_loop(pid_t pid, int fdin_arg, int fdout_arg, int fderr_arg)
child_terminated = 0;
child_has_selected = 0;
signal(SIGCHLD, sigchld_handler);
signal(SIGPIPE, SIG_IGN);
/* Initialize our global variables. */
fdin = fdin_arg;
@ -650,6 +651,7 @@ server_loop2(void)
debug("Entering interactive session for SSH2.");
signal(SIGCHLD, sigchld_handler2);
signal(SIGPIPE, SIG_IGN);
child_terminated = 0;
connection_in = packet_get_connection_in();
connection_out = packet_get_connection_out();

Просмотреть файл

@ -477,6 +477,8 @@ do_exec_no_pty(Session *s, const char *command, struct passwd * pw)
if (s == NULL)
fatal("do_exec_no_pty: no session");
signal(SIGPIPE, SIG_DFL);
session_proctitle(s);
#ifdef USE_PAM