[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r15239 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r15239 - gnunet/src/transport |
Date: |
Mon, 16 May 2011 15:51:05 +0200 |
Author: wachs
Date: 2011-05-16 15:51:05 +0200 (Mon, 16 May 2011)
New Revision: 15239
Modified:
gnunet/src/transport/plugin_transport_tcp.c
Log:
Another fix for specific bind addresses
Modified: gnunet/src/transport/plugin_transport_tcp.c
===================================================================
--- gnunet/src/transport/plugin_transport_tcp.c 2011-05-16 13:35:17 UTC (rev
15238)
+++ gnunet/src/transport/plugin_transport_tcp.c 2011-05-16 13:51:05 UTC (rev
15239)
@@ -2663,8 +2663,8 @@
struct Plugin *plugin = cls;
const struct sockaddr_in *s;
struct IPv4TcpAddress t4;
+ char buf[INET_ADDRSTRLEN];
-
plugin->ext_dns = NULL;
if (addr == NULL)
return;
@@ -2690,9 +2690,29 @@
plugin->external_address,
(int) plugin->adv_port);
}
+
+ if ((plugin->bind_address != NULL) && (plugin->behind_nat == GNUNET_NO))
+ {
+ GNUNET_assert (NULL != inet_ntop(AF_INET,
+ &t4.ipv4_addr,
+ buf,
+ sizeof (buf)));
+ if (0 != strcmp (plugin->bind_address, buf))
+ {
+ GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
+ "tcp",
+ "NAT is not enabled and specific bind address `%s'
differs from external address `%s'! Not notifying about external address
`%s'\n",
+ plugin->bind_address,
+ plugin->external_address,
+ plugin->external_address);
+ return;
+ }
+ }
+
add_to_address_list (plugin,
&t4.ipv4_addr,
sizeof (struct in_addr));
+
plugin->env->notify_address (plugin->env->cls,
"tcp",
&t4, sizeof(t4),
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r15239 - gnunet/src/transport,
gnunet <=