diff options
Diffstat (limited to 'src/transport/plugin_transport_udp.c')
-rw-r--r-- | src/transport/plugin_transport_udp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/transport/plugin_transport_udp.c b/src/transport/plugin_transport_udp.c index a5ee6494a..d3a8d1017 100644 --- a/src/transport/plugin_transport_udp.c +++ b/src/transport/plugin_transport_udp.c | |||
@@ -2515,6 +2515,7 @@ udp_select_read (struct Plugin *plugin, struct GNUNET_NETWORK_Handle *rsock) | |||
2515 | switch (ntohs (msg->type)) | 2515 | switch (ntohs (msg->type)) |
2516 | { | 2516 | { |
2517 | case GNUNET_MESSAGE_TYPE_TRANSPORT_BROADCAST_BEACON: | 2517 | case GNUNET_MESSAGE_TYPE_TRANSPORT_BROADCAST_BEACON: |
2518 | if (GNUNET_YES == plugin->enable_broadcasting_receiving) | ||
2518 | udp_broadcast_receive (plugin, buf, size, | 2519 | udp_broadcast_receive (plugin, buf, size, |
2519 | (const struct sockaddr *) &addr, fromlen); | 2520 | (const struct sockaddr *) &addr, fromlen); |
2520 | return; | 2521 | return; |
@@ -3049,6 +3050,7 @@ libgnunet_plugin_transport_udp_init (void *cls) | |||
3049 | unsigned long long udp_max_bps; | 3050 | unsigned long long udp_max_bps; |
3050 | unsigned long long enable_v6; | 3051 | unsigned long long enable_v6; |
3051 | unsigned long long enable_broadcasting; | 3052 | unsigned long long enable_broadcasting; |
3053 | unsigned long long enable_broadcasting_recv; | ||
3052 | char * bind4_address; | 3054 | char * bind4_address; |
3053 | char * bind6_address; | 3055 | char * bind6_address; |
3054 | char * fancy_interval; | 3056 | char * fancy_interval; |
@@ -3147,6 +3149,11 @@ libgnunet_plugin_transport_udp_init (void *cls) | |||
3147 | if (enable_broadcasting == GNUNET_SYSERR) | 3149 | if (enable_broadcasting == GNUNET_SYSERR) |
3148 | enable_broadcasting = GNUNET_NO; | 3150 | enable_broadcasting = GNUNET_NO; |
3149 | 3151 | ||
3152 | enable_broadcasting_recv = GNUNET_CONFIGURATION_get_value_yesno (env->cfg, "transport-udp", | ||
3153 | "BROADCAST_RECEIVE"); | ||
3154 | if (enable_broadcasting_recv == GNUNET_SYSERR) | ||
3155 | enable_broadcasting_recv = GNUNET_YES; | ||
3156 | |||
3150 | if (GNUNET_SYSERR == GNUNET_CONFIGURATION_get_value_string (env->cfg, "transport-udp", | 3157 | if (GNUNET_SYSERR == GNUNET_CONFIGURATION_get_value_string (env->cfg, "transport-udp", |
3151 | "BROADCAST_INTERVAL", &fancy_interval)) | 3158 | "BROADCAST_INTERVAL", &fancy_interval)) |
3152 | { | 3159 | { |
@@ -3175,6 +3182,7 @@ libgnunet_plugin_transport_udp_init (void *cls) | |||
3175 | p->enable_ipv6 = enable_v6; | 3182 | p->enable_ipv6 = enable_v6; |
3176 | p->enable_ipv4 = GNUNET_YES; /* default */ | 3183 | p->enable_ipv4 = GNUNET_YES; /* default */ |
3177 | p->enable_broadcasting = enable_broadcasting; | 3184 | p->enable_broadcasting = enable_broadcasting; |
3185 | p->enable_broadcasting_receiving = enable_broadcasting_recv; | ||
3178 | p->env = env; | 3186 | p->env = env; |
3179 | p->sessions = GNUNET_CONTAINER_multipeermap_create (10, GNUNET_NO); | 3187 | p->sessions = GNUNET_CONTAINER_multipeermap_create (10, GNUNET_NO); |
3180 | p->defrag_ctxs = GNUNET_CONTAINER_heap_create (GNUNET_CONTAINER_HEAP_ORDER_MIN); | 3188 | p->defrag_ctxs = GNUNET_CONTAINER_heap_create (GNUNET_CONTAINER_HEAP_ORDER_MIN); |