Diffstat (limited to 'noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc | 46 |
1 files changed, 19 insertions, 27 deletions
diff --git a/noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc b/noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc index 5317f52..ae6d406 100644 --- a/noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc +++ b/noncore/net/wellenreiter/libwellenreiter/source/wl_proto.cc @@ -45,7 +45,4 @@ int send_network_found (const char *guihost, int guiport, void *structure) wl_network_t *ptr; - char buffer[2048]; - char temp[128]; - int retval=0, len=0; - - memset(temp, 0, sizeof(temp)); + char buffer[2048], temp[5]; + int len = 0; @@ -62,4 +59,3 @@ int send_network_found (const char *guihost, int guiport, void *structure) snprintf(temp, sizeof(temp), "%d", ptr->net_type); - retval = add_field(buffer + len, temp, 1); - len += retval; + len += add_field(buffer + len, temp, 1); @@ -68,4 +64,3 @@ int send_network_found (const char *guihost, int guiport, void *structure) snprintf(temp, sizeof(temp), "%.2d", ptr->channel); - retval = add_field(buffer + len, temp, 2); - len += retval; + len += add_field(buffer + len, temp, 2); @@ -74,11 +69,12 @@ int send_network_found (const char *guihost, int guiport, void *structure) snprintf(temp, sizeof(temp), "%d", ptr->wep); - retval = add_field(buffer + len, temp, 1); - len += retval; + len += add_field(buffer + len, temp, 1); /* Set Mac */ - retval = add_field(buffer + len, ptr->mac, 17); - len += retval; + len += add_field(buffer + len, ptr->mac, 17); /* Set ssid */ - retval = add_field(buffer + len, ptr->bssid, ptr->ssid_len); + if(len + ptr->ssid_len < sizeof(buffer) - 1) + len += add_field(buffer + len, ptr->bssid, ptr->ssid_len); + else + len += add_field(buffer + len, ptr->bssid, sizeof(buffer) - len - 1); @@ -96,4 +92,4 @@ int get_network_found (void *structure, const char *buffer) wl_network_t *ptr; - char temp[512]; - int retval=0, len=0; + char temp[5]; + int len = 0; @@ -101,9 +97,8 @@ int get_network_found (void *structure, const char *buffer) - /* packet type already determined */ + /* packet type already determined, skip check */ len += 2; - /* Get net type */ + /* Get net type (accesspoint || ad-hoc || ...) */ memset(temp, 0, sizeof(temp)); - retval = get_field(buffer + len, temp); - len += retval; + len += get_field(buffer + len, temp); ptr->net_type = atoi(temp); @@ -112,4 +107,3 @@ int get_network_found (void *structure, const char *buffer) memset(temp, 0, sizeof(temp)); - retval = get_field(buffer + len, temp); - len += retval; + len += get_field(buffer + len, temp); ptr->channel = atoi(temp); @@ -118,4 +112,3 @@ int get_network_found (void *structure, const char *buffer) memset(temp, 0, sizeof(temp)); - retval = get_field(buffer + len, temp); - len += retval; + len += get_field(buffer + len, temp); ptr->wep = atoi(temp); @@ -123,7 +116,6 @@ int get_network_found (void *structure, const char *buffer) /* Set MAC address */ - retval = get_field(buffer + len, ptr->mac); - len += retval; + len += get_field(buffer + len, ptr->mac); /* Set BSSID */ - retval = get_field(buffer + len, ptr->bssid); + len += get_field(buffer + len, ptr->bssid); |