--- sshconnect.c.orig	Fri May 14 14:07:58 1999
+++ sshconnect.c	Fri May 14 14:11:08 1999
@@ -347,6 +347,12 @@
     {
       struct sockaddr_in sin;
       int p;
+#if defined(__FreeBSD__) || defined(__OpenBSD__)  && !defined(SOCKS)
+	p = 1023;       /* Compat with old FreeBSD */
+       sock = rresvport(&p);
+       if (sock < 0)
+	fatal("rresvport: %.100s", strerror(errno));
+#else
       for (p = 1023; p > 512; p--)
         {
           sock = socket(AF_INET, SOCK_STREAM, 0);
@@ -374,6 +380,7 @@
             }
           fatal("bind: %.100s", strerror(errno));
         }
+#endif
       debug("Allocated local port %d.", p);
     }
   else
