On some systems (NetBSD 1.6 and Solaris 9, at least), GCC doesn't understand
[u/mdw/putty] / unix / uxnet.c
index 7b97041..31b1292 100644 (file)
@@ -576,6 +576,7 @@ static int try_connect(Actual_Socket sock)
 
       default:
        assert(0 && "unknown address family");
+       exit(1); /* XXX: GCC doesn't understand assert() on some systems. */
     }
 
     fl = fcntl(s, F_GETFL);
@@ -744,9 +745,8 @@ Socket sk_newlistener(char *srcaddr, int port, Plug plug, int local_host_only, i
         if (a.sin_addr.s_addr != (in_addr_t)(-1)) {
             /* Override localhost_only with specified listen addr. */
             ret->localhost_only = ipv4_is_loopback(a.sin_addr);
-            got_addr = 1;
         }
-        addr = (struct sockaddr *)a;
+        addr = (struct sockaddr *)&a;
         addrlen = sizeof(a);
         retcode = 0;
 #endif
@@ -812,16 +812,6 @@ static void sk_tcp_close(Socket sock)
     sfree(s);
 }
 
-#define PUT_32BIT_MSB_FIRST(cp, value) ( \
-  (cp)[0] = (char)((value) >> 24), \
-  (cp)[1] = (char)((value) >> 16), \
-  (cp)[2] = (char)((value) >> 8), \
-  (cp)[3] = (char)(value) )
-
-#define PUT_16BIT_MSB_FIRST(cp, value) ( \
-  (cp)[0] = (char)((value) >> 8), \
-  (cp)[1] = (char)(value) )
-
 void *sk_getxdmdata(void *sock, int *lenp)
 {
     Actual_Socket s = (Actual_Socket) sock;