gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r6960 - GNUnet/src/util/network_client


From: gnunet
Subject: [GNUnet-SVN] r6960 - GNUnet/src/util/network_client
Date: Sat, 31 May 2008 20:59:21 -0600 (MDT)

Author: grothoff
Date: 2008-05-31 20:59:21 -0600 (Sat, 31 May 2008)
New Revision: 6960

Modified:
   GNUnet/src/util/network_client/tcpio.c
Log:
getpeerinfo does NOT work nicely for checking good connections on Linux and 
other systems

Modified: GNUnet/src/util/network_client/tcpio.c
===================================================================
--- GNUnet/src/util/network_client/tcpio.c      2008-05-31 23:52:43 UTC (rev 
6959)
+++ GNUnet/src/util/network_client/tcpio.c      2008-06-01 02:59:21 UTC (rev 
6960)
@@ -274,9 +274,7 @@
           GNUNET_get_ip_from_hostname (sock->ectx, host,
                                        addr_families[af_index], &soaddr,
                                        &socklen))
-        {
-          continue;
-        }
+       continue;
       GNUNET_mutex_lock (sock->destroylock);
       if (sock->sock != NULL)
         {
@@ -375,43 +373,20 @@
           GNUNET_mutex_unlock (sock->destroylock);
           continue;
         }
+      if (soaddr->sa_family == AF_INET)
+       {
+         sa = GNUNET_malloc (sizeof (struct sockaddr_in));
+         memset (sa, 0, sizeof (struct sockaddr_in));
+         slen = sizeof (struct sockaddr_in);
+       }
       else
-        {
-          struct sockaddr *sa;
-          socklen_t slen;
-          if (soaddr->sa_family == AF_INET)
-            {
-              sa = GNUNET_malloc (sizeof (struct sockaddr_in));
-              memset (sa, 0, sizeof (struct sockaddr_in));
-              slen = sizeof (struct sockaddr_in);
-            }
-          else
-            {
-              sa = GNUNET_malloc (sizeof (struct sockaddr_in6));
-              memset (sa, 0, sizeof (struct sockaddr_in6));
-              slen = sizeof (struct sockaddr_in6);
-            }
-          GNUNET_free (soaddr);
-          if (GETPEERNAME (osock, sa, &slen) != 0)
-            {
-              GNUNET_GE_LOG (sock->ectx,
-                             GNUNET_GE_WARNING | GNUNET_GE_USER |
-                             GNUNET_GE_BULK,
-                             _("Failed to connect to %s:%u in %ds\n"),
-                             host, port, WAIT_SECONDS);
-              if (errno != ENOTCONN)
-                GNUNET_GE_LOG_STRERROR (sock->ectx,
-                                        GNUNET_GE_WARNING | GNUNET_GE_USER |
-                                        GNUNET_GE_BULK, "getpeername");
-
-              GNUNET_free (sa);
-              GNUNET_socket_destroy (sock->sock);
-              sock->sock = NULL;
-              GNUNET_mutex_unlock (sock->destroylock);
-              continue;
-            }
-          GNUNET_free (sa);
-        }
+       {
+         sa = GNUNET_malloc (sizeof (struct sockaddr_in6));
+         memset (sa, 0, sizeof (struct sockaddr_in6));
+         slen = sizeof (struct sockaddr_in6);
+       }
+      GNUNET_free (soaddr);
+      GNUNET_free (sa);
       break;
     }
   GNUNET_free (host);





reply via email to

[Prev in Thread] Current Thread [Next in Thread]