added fix
[oweals/gnunet.git] / src / transport / plugin_transport_tcp.c
index 6e2d236ab8019da45a0ebbfa1f3b1822a709d1f9..483619b4a8db881f579e96e70673eeeb7435733a 100644 (file)
@@ -1099,7 +1099,7 @@ disconnect_session (struct Session *session)
        GNUNET_SERVER_receive_done (session->client,
                                    GNUNET_SYSERR);     
     }
-  if (session->client != NULL) 
+  else if (session->client != NULL)
     GNUNET_SERVER_client_drop (session->client);
   GNUNET_STATISTICS_update (session->plugin->env->stats,
                            gettext_noop ("# TCP sessions active"),
@@ -2369,7 +2369,6 @@ tcp_plugin_server_read (void *cls,
   /* construct socket address of sender */
   memset (&sin_addr, 0, sizeof (sin_addr));
   sin_addr.sin_family = AF_INET;
-  sin_addr.sin_port = htons((uint16_t) port);
 #if HAVE_SOCKADDR_IN_SIN_LEN
   sin_addr.sin_len = sizeof (sin_addr);
 #endif
@@ -2389,7 +2388,7 @@ tcp_plugin_server_read (void *cls,
                                          plugin);
       return;
     }
-
+  sin_addr.sin_port = htons((uint16_t) port);
 #if DEBUG_TCP_NAT
   GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG,
                   "tcp",