aboutsummaryrefslogtreecommitdiff
path: root/src/transport/plugin_transport_wlan.c
diff options
context:
space:
mode:
authorDavid Brodski <david@brodski.eu>2011-09-21 20:32:55 +0000
committerDavid Brodski <david@brodski.eu>2011-09-21 20:32:55 +0000
commit1b4c0a8b0c8cfc6e36197c37ca0cbaaeb5eb7927 (patch)
tree28b408cc439bc839fab58571a50e0ce33c2115ff /src/transport/plugin_transport_wlan.c
parent739aec3d1590e7c80d1322608781cf140c0e9f6a (diff)
downloadgnunet-1b4c0a8b0c8cfc6e36197c37ca0cbaaeb5eb7927.tar.gz
gnunet-1b4c0a8b0c8cfc6e36197c37ca0cbaaeb5eb7927.zip
more statistics, gnunet_constants used
Diffstat (limited to 'src/transport/plugin_transport_wlan.c')
-rw-r--r--src/transport/plugin_transport_wlan.c26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/transport/plugin_transport_wlan.c b/src/transport/plugin_transport_wlan.c
index 0ac61f09d..81f7923e3 100644
--- a/src/transport/plugin_transport_wlan.c
+++ b/src/transport/plugin_transport_wlan.c
@@ -37,6 +37,7 @@
37#include "gnunet_common.h" 37#include "gnunet_common.h"
38#include "gnunet_crypto_lib.h" 38#include "gnunet_crypto_lib.h"
39#include "gnunet_fragmentation_lib.h" 39#include "gnunet_fragmentation_lib.h"
40#include "gnunet_constants.h"
40//#include "wlan/ieee80211.h" 41//#include "wlan/ieee80211.h"
41//#include <netinet/ip.h> 42//#include <netinet/ip.h>
42 43
@@ -54,12 +55,12 @@
54/** 55/**
55 * time out of a session 56 * time out of a session
56 */ 57 */
57#define SESSION_TIMEOUT GNUNET_TIME_UNIT_MINUTES 58#define SESSION_TIMEOUT GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT
58 59
59/** 60/**
60 * time out of a mac endpoint 61 * time out of a mac endpoint
61 */ 62 */
62#define MACENDPOINT_TIMEOUT GNUNET_TIME_UNIT_MINUTES 63#define MACENDPOINT_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT, 2)
63 64
64/** 65/**
65 * scaling factor for hello beacon 66 * scaling factor for hello beacon
@@ -953,6 +954,7 @@ queue_session (struct Plugin *plugin, struct Session *session)
953 GNUNET_CONTAINER_DLL_insert_tail (plugin->pending_Sessions_head, 954 GNUNET_CONTAINER_DLL_insert_tail (plugin->pending_Sessions_head,
954 plugin->pending_Sessions_tail, queue); 955 plugin->pending_Sessions_tail, queue);
955 plugin->pendingsessions++; 956 plugin->pendingsessions++;
957 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
956 } 958 }
957 959
958} 960}
@@ -1110,6 +1112,7 @@ get_next_queue_session (struct Plugin *plugin)
1110 sessionqueue_alt = sessionqueue; 1112 sessionqueue_alt = sessionqueue;
1111 sessionqueue = sessionqueue->next; 1113 sessionqueue = sessionqueue->next;
1112 plugin->pendingsessions--; 1114 plugin->pendingsessions--;
1115 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
1113 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head, 1116 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head,
1114 plugin->pending_Sessions_tail, 1117 plugin->pending_Sessions_tail,
1115 sessionqueue_alt); 1118 sessionqueue_alt);
@@ -1129,6 +1132,7 @@ get_next_queue_session (struct Plugin *plugin)
1129 FRAGMENT_QUEUE_MESSAGES_OUT_PER_SESSION)) 1132 FRAGMENT_QUEUE_MESSAGES_OUT_PER_SESSION))
1130 { 1133 {
1131 plugin->pendingsessions--; 1134 plugin->pendingsessions--;
1135 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
1132 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head, 1136 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head,
1133 plugin->pending_Sessions_tail, 1137 plugin->pending_Sessions_tail,
1134 sessionqueue); 1138 sessionqueue);
@@ -1158,6 +1162,7 @@ get_next_queue_session (struct Plugin *plugin)
1158 sessionqueue_alt = sessionqueue; 1162 sessionqueue_alt = sessionqueue;
1159 sessionqueue = sessionqueue->next; 1163 sessionqueue = sessionqueue->next;
1160 plugin->pendingsessions--; 1164 plugin->pendingsessions--;
1165 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
1161 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head, 1166 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head,
1162 plugin->pending_Sessions_tail, 1167 plugin->pending_Sessions_tail,
1163 sessionqueue_alt); 1168 sessionqueue_alt);
@@ -2002,6 +2007,7 @@ free_session (struct Plugin *plugin, struct Sessionqueue *queue,
2002 struct FragmentMessage *fmnext; 2007 struct FragmentMessage *fmnext;
2003 int check = 0; 2008 int check = 0;
2004 2009
2010 GNUNET_assert (plugin != NULL);
2005 GNUNET_assert (queue != NULL); 2011 GNUNET_assert (queue != NULL);
2006 GNUNET_assert (queue->content != NULL); 2012 GNUNET_assert (queue->content != NULL);
2007 2013
@@ -2010,19 +2016,21 @@ free_session (struct Plugin *plugin, struct Sessionqueue *queue,
2010 pendingsession = plugin->pending_Sessions_head; 2016 pendingsession = plugin->pending_Sessions_head;
2011 while (pendingsession != NULL) 2017 while (pendingsession != NULL)
2012 { 2018 {
2013 pendingsession_tmp = pendingsession->next; 2019 pendingsession_tmp = pendingsession;
2014 if (pendingsession->content == queue->content) 2020 pendingsession = pendingsession->next;
2021 GNUNET_assert (pendingsession_tmp->content != NULL);
2022 if (pendingsession_tmp->content == queue->content)
2015 { 2023 {
2016 plugin->pendingsessions--; 2024 plugin->pendingsessions--;
2025 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
2017 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head, 2026 GNUNET_CONTAINER_DLL_remove (plugin->pending_Sessions_head,
2018 plugin->pending_Sessions_tail, 2027 plugin->pending_Sessions_tail,
2019 pendingsession); 2028 pendingsession_tmp);
2020 GNUNET_free (pendingsession); 2029 GNUNET_free (pendingsession_tmp);
2021 2030
2022 GNUNET_assert (check == 0); 2031 GNUNET_assert (check == 0);
2023 check = 1; 2032 check = 1;
2024 } 2033 }
2025 pendingsession = pendingsession_tmp;
2026 } 2034 }
2027 2035
2028 endpoint = queue->content->mac; 2036 endpoint = queue->content->mac;
@@ -2708,7 +2716,7 @@ wlan_process_helper (void *cls, void *client,
2708 temp_hdr = (struct GNUNET_MessageHeader *) &wlanIeeeHeader[1] + pos; 2716 temp_hdr = (struct GNUNET_MessageHeader *) &wlanIeeeHeader[1] + pos;
2709 if (ntohs(temp_hdr->size) <= datasize + pos) 2717 if (ntohs(temp_hdr->size) <= datasize + pos)
2710 { 2718 {
2711 GNUNET_STATISTICS_update (plugin->env->stats, _("# wlan messaged in WLAN_HELPER_DATA received"), 1, GNUNET_NO); 2719 GNUNET_STATISTICS_update (plugin->env->stats, _("# wlan messaged inside WLAN_HELPER_DATA received"), 1, GNUNET_NO);
2712 wlan_data_helper (plugin, session_light, temp_hdr, rxinfo); 2720 wlan_data_helper (plugin, session_light, temp_hdr, rxinfo);
2713 } 2721 }
2714 else 2722 else
@@ -3040,6 +3048,7 @@ libgnunet_plugin_transport_wlan_init (void *cls)
3040 plugin = GNUNET_malloc (sizeof (struct Plugin)); 3048 plugin = GNUNET_malloc (sizeof (struct Plugin));
3041 plugin->env = env; 3049 plugin->env = env;
3042 plugin->pendingsessions = 0; 3050 plugin->pendingsessions = 0;
3051 GNUNET_STATISTICS_set(plugin->env->stats, _("# wlan pending sessions"), plugin->pendingsessions, GNUNET_NO);
3043 plugin->mac_count = 0; 3052 plugin->mac_count = 0;
3044 plugin->server_write_task = GNUNET_SCHEDULER_NO_TASK; 3053 plugin->server_write_task = GNUNET_SCHEDULER_NO_TASK;
3045 plugin->server_read_task = GNUNET_SCHEDULER_NO_TASK; 3054 plugin->server_read_task = GNUNET_SCHEDULER_NO_TASK;
@@ -3063,6 +3072,7 @@ libgnunet_plugin_transport_wlan_init (void *cls)
3063 api->address_pretty_printer = &wlan_plugin_address_pretty_printer; 3072 api->address_pretty_printer = &wlan_plugin_address_pretty_printer;
3064 api->check_address = &wlan_plugin_address_suggested; 3073 api->check_address = &wlan_plugin_address_suggested;
3065 api->address_to_string = &wlan_plugin_address_to_string; 3074 api->address_to_string = &wlan_plugin_address_to_string;
3075
3066 //read config 3076 //read config
3067 3077
3068 if (GNUNET_CONFIGURATION_have_value (env->cfg, "transport-wlan", "TESTMODE")) 3078 if (GNUNET_CONFIGURATION_have_value (env->cfg, "transport-wlan", "TESTMODE"))