- Merged OpenBSD CVS changes
   - [ChangeLog.Ylonen] noone needs this anymore
   - [authfd.c] close-on-exec for auth-socket, ok deraadt
   - [hostfile.c]
     in known_hosts key lookup the entry for the bits does not need
     to match, all the information is contained in n and e. This
     solves the problem with buggy servers announcing the wrong
     modulus length.  markus and me.
   - [serverloop.c]
     bugfix: check for space if child has terminated, from:
     iedowse@maths.tcd.ie
   - [ssh-add.1 ssh-add.c ssh-keygen.1 ssh-keygen.c sshconnect.c]
     [fingerprint.c fingerprint.h]
     rsa key fingerprints, idea from Bjoern Groenvall <bg@sics.se>
   - [ssh-agent.1] typo
   - [ssh.1] add OpenSSH information to AUTHOR section. okay markus@
   - [sshd.c]
     force logging to stderr while loading private key file
     (lost while converting to new log-levels)
diff --git a/authfd.c b/authfd.c
index 84a5fc7..55ad13e 100644
--- a/authfd.c
+++ b/authfd.c
@@ -14,7 +14,7 @@
 */
 
 #include "includes.h"
-RCSID("$Id: authfd.c,v 1.4 1999/11/16 02:37:16 damien Exp $");
+RCSID("$Id: authfd.c,v 1.5 1999/11/17 06:29:08 damien Exp $");
 
 #include "ssh.h"
 #include "rsa.h"
@@ -50,6 +50,13 @@
   sock = socket(AF_UNIX, SOCK_STREAM, 0);
   if (sock < 0)
     return -1;
+
+  /* close on exec */
+  if (fcntl(sock, F_SETFD, 1) == -1)
+    {
+      close(sock);
+      return -1;
+    }
   
   if (connect(sock, (struct sockaddr *)&sunaddr, sizeof(sunaddr)) < 0)
     {