summaryrefslogtreecommitdiff
path: root/sshd.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>1999-11-21 18:31:57 +1100
committerDamien Miller <djm@mindrot.org>1999-11-21 18:31:57 +1100
commit431f66b68c98e9db87574860a0a29d8d8aa9b52c (patch)
treea984ac4c8cce796b8281bf8ee2cfb84363c49a03 /sshd.c
parent6162d1215bbff30cf0c4c19368dc85ae570d44ca (diff)
- [OVERVIEW README] typos; green@freebsd
- [ssh-keygen.c] replace xstrdup+strcat with strlcat+fixed buffer, fixes OF (bad me) exit if writing the key fails (no infinit loop) print usage() everytime we get bad options - [ssh-keygen.c] overflow, djm@mindrot.org - [sshd.c] fix sigchld race; cjc5@po.cwru.edu
Diffstat (limited to 'sshd.c')
-rw-r--r--sshd.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sshd.c b/sshd.c
index ad51dacd4..5d8fa6dbe 100644
--- a/sshd.c
+++ b/sshd.c
@@ -18,7 +18,7 @@ agent connections.
18*/ 18*/
19 19
20#include "includes.h" 20#include "includes.h"
21RCSID("$Id: sshd.c,v 1.26 1999/11/21 02:23:53 damien Exp $"); 21RCSID("$Id: sshd.c,v 1.27 1999/11/21 07:31:57 damien Exp $");
22 22
23#include "xmalloc.h" 23#include "xmalloc.h"
24#include "rsa.h" 24#include "rsa.h"
@@ -316,7 +316,10 @@ void main_sigchld_handler(int sig)
316{ 316{
317 int save_errno = errno; 317 int save_errno = errno;
318 int status; 318 int status;
319 wait(&status); 319
320 while (waitpid(-1, &status, WNOHANG) > 0)
321 ;
322
320 signal(SIGCHLD, main_sigchld_handler); 323 signal(SIGCHLD, main_sigchld_handler);
321 errno = save_errno; 324 errno = save_errno;
322} 325}