gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r20859 - gnunet/src/transport


From: gnunet
Subject: [GNUnet-SVN] r20859 - gnunet/src/transport
Date: Mon, 2 Apr 2012 15:55:53 +0200

Author: wachs
Date: 2012-04-02 15:55:53 +0200 (Mon, 02 Apr 2012)
New Revision: 20859

Modified:
   gnunet/src/transport/gnunet-service-transport_clients.c
   gnunet/src/transport/plugin_transport_tcp.c
Log:
- fix ipv6 address format for tcp pretty printer


Modified: gnunet/src/transport/gnunet-service-transport_clients.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport_clients.c     2012-04-02 
13:55:37 UTC (rev 20858)
+++ gnunet/src/transport/gnunet-service-transport_clients.c     2012-04-02 
13:55:53 UTC (rev 20859)
@@ -788,6 +788,10 @@
     return;
   }
   GNUNET_SERVER_disable_receive_done_warning (client);
+  if ((NULL == address) || (0 == address_len))
+  {
+    GNUNET_break_op (0);
+  }
   papi->address_pretty_printer (papi->cls, plugin_name, address, address_len,
                                 numeric, rtimeout, &transmit_address_to_client,
                                 tc);

Modified: gnunet/src/transport/plugin_transport_tcp.c
===================================================================
--- gnunet/src/transport/plugin_transport_tcp.c 2012-04-02 13:55:37 UTC (rev 
20858)
+++ gnunet/src/transport/plugin_transport_tcp.c 2012-04-02 13:55:53 UTC (rev 
20859)
@@ -1369,6 +1369,8 @@
    * Port to add after the IP address.
    */
   uint16_t port;
+
+  int ipv6;
 };
 
 
@@ -1390,7 +1392,10 @@
     GNUNET_free (ppc);
     return;
   }
-  GNUNET_asprintf (&ret, "%s:%d", hostname, ppc->port);
+  if (GNUNET_YES == ppc->ipv6)
+    GNUNET_asprintf (&ret, "[%s]:%d", hostname, ppc->port);
+  else
+    GNUNET_asprintf (&ret, "%s:%d", hostname, ppc->port);
   ppc->asc (ppc->asc_cls, ret);
   GNUNET_free (ret);
 }
@@ -1452,11 +1457,17 @@
   else
   {
     /* invalid address */
+    GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "tcp",
+        "Invalid address to string request: plugin `%s', address length: %u 
bytes\n");
     GNUNET_break_op (0);
     asc (asc_cls, NULL);
     return;
   }
   ppc = GNUNET_malloc (sizeof (struct PrettyPrinterContext));
+  if (addrlen == sizeof (struct IPv6TcpAddress))
+    ppc->ipv6 = GNUNET_YES;
+  else
+    ppc->ipv6 = GNUNET_NO;
   ppc->asc = asc;
   ppc->asc_cls = asc_cls;
   ppc->port = port;




reply via email to

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