Commit Graph

50 Commits

Author SHA1 Message Date
Andreas Schultz 627ecd5a9e rework MAC type handling so that split, local and both MAC's are possible 2016-08-17 14:10:04 +02:00
Andreas Schultz 813f24b8ac implement station inactivity timeout
After the max station inactivity has expired, a probe request
(a data null frame) is sent to the station. It the station does
not ACK this frame, it is removed from the WTP.

Note: inactivity timeout is not the same as the CAPWAP Idle Timeout.
The CAPWAP Idle Timeout would remove a station due to inactivity
even when it is still reachable from the WTP. In contrast, the
inactivity timeout probes whether the station is still present
and only removes it when not.
2016-04-07 15:15:50 +02:00
Andreas Schultz 29ed6544c5 switch everything to new log API and drop old one 2016-03-30 14:47:57 +02:00
Andreas Schultz cadbfa3d7e switch to more a syslog like logging style 2016-03-30 14:29:53 +02:00
Andreas Schultz 9572de350a switch timeout processing to libev
Rework the timeout and network code to use libev.
2016-03-30 14:06:43 +02:00
Andreas Schultz 32e9567f7b rework bssid handling and stop all used bssids when leaving RUN
Instead of haing a pool of unsused BSS Id's and a list of active
BSS's (wlans), use a single array and only mark the BSS Id as used
or unused.

When leaving RUN state, release (stop) all used BSS.
2016-03-29 15:28:40 +02:00
Andreas Schultz a3c2e52d3c reset WTP state when going into DTLS TD 2016-03-29 11:51:39 +02:00
Andreas Schultz 067f920d81 reformat some overly long code lines 2016-03-29 11:48:28 +02:00
Tobias Hintze ad27e80521 Merge pull request #2 from nm-mrt/dns-support
Handle no DNS at system start
2016-03-25 13:16:20 +01:00
Moritz Rosenthal f9bb716dac Changed name of addr_capwap.socket to addr_capwap.sockaddr
Changed FQDN size from 128 to 256 according to RFC1035
2016-03-25 12:41:43 +01:00
Andreas Schultz ea87da11ba [wtp] use goto error exit instead of deep nested if conditions
Convert WTP main() function to linux kernel style goto error exits.
2016-03-24 17:15:12 +01:00
Andreas Schultz 3b7c0adda7 [wtp] move overly deep indented wtp descriptor config parser into function 2016-03-24 17:15:12 +01:00
Andreas Schultz aa5af8056b [wtp] move overly deep indented config parser into function 2016-03-24 17:15:12 +01:00
Andreas Schultz fbe31bda21 rename variable to avoid potential type clash 2016-03-24 17:15:12 +01:00
Andreas Schultz 2109c62b80 implement basic 802.11n support
Add suport to enable 80211n support on the BSS and set
station parameters through the "Add Station" procedure.

Setting 802.11n radio parameters is rudementary and does
not work yet.
2016-03-24 17:15:11 +01:00
Moritz Rosenthal 7b9f515bd7 If there is no DNS available on system start the capwap-wtp will stop while evaluating the configuration. I fixed that by checking if the address was yet translated on every address access. If not a DNS request is started before continuing. 2016-03-24 07:09:29 +01:00
Andreas Schultz 5f98005414 handle WTP QoS IE 2016-03-04 17:04:21 +01:00
Andreas Schultz d93cd1044d reformat WTP config file reader 2016-03-03 16:44:56 +01:00
Andreas Schultz d68bc01d00 change supportedrates config setting to the actual MBit value
supportedrates is now a list instead on an array and float values
(e.g. 5.5) are permited.
2016-03-03 08:59:49 +01:00
Andreas Schultz 9fee37a994 rework wifi type and rate logic
Hard coding basic rates is wrong. Each Wifi types does expect
some default basic rates. However those rates are not set in
stone and the AC is permited to set then to whatever it deems
ok. This might prevent client from connecting, but it still is
the AC decission to do so.

This is first step towards a more flexible basic rate handling.
2016-02-29 14:26:13 +01:00
Andreas Schultz a6d0efe91a wtp: rework kernel socket handling
Switch to a connected UDP kernel socket. Comparing the
local and remote IPs is no longer required and handling
different IP versions and UDP types is automatic.

The WTP logic needs to reopen the socket on demand now.
2016-02-18 15:06:39 +01:00
vemax78 8d9985fdea The capwap data channel migrated from userspace to kernalspace 2014-09-10 21:58:23 +02:00
vemax78 089a044f3f Fix capwap protocol and optional wireless information header.
Complete IEEE802.11 frames tunnel WTP side.
Now WTP can send data packets to the AC.
2014-06-09 22:30:04 +02:00
vemax78 67daa8dcbb Permit to forward IEEE802.11 Data Packet from kernel space to user space bypass
kernel network stack.
2014-06-07 22:37:19 +02:00
vemax78 0ebf1a434f Add skeleton code for CAPWAP Data Channel kernel module.
The IEEE802.11 data packets will embedded into CAPWAP Data Channel directly in
kernel mode. The CAPWAP Data Channel in usermode be used only for compatibility
reasons.
2014-06-01 16:32:30 +02:00
vemax78 3573dd4251 Removing the OpenSSL library for CyaSSL.
OpenSSL license was not compatible with the GPL license.
2014-05-15 21:43:21 +02:00
vemax78 eee74744d0 Changed the scope of stations. Now the stations are managed on a global level. 2014-03-23 20:42:59 +01:00
vemax78 6042161d75 Reengineering the timeout manager. Allows to create an arbitrary number of timer
with the possibility to invoke a callback function on timeout.
2014-03-02 19:31:27 +01:00
vemax78 ea02d7379e Refactoring timeout functions, change functions name and add timeout handler
into session.
2014-02-19 19:16:33 +01:00
vemax78 025880583c Changed the management of the wireless interfaces, from creation to usage.
The virtual interfaces are created at the startup of the wtp to reduce the time
required to configure a wireless interface.
Applied some patches to build the WTP on OpenWRT trunk
2014-02-08 18:03:38 +01:00
vemax78 d2c01ad82a Improved the management of the IEEE802.11 Beacon and add the management of
IEEE802.11 Probe Response.
2014-01-10 13:25:28 +01:00
vemax78 bef31786ce The first beacon of SmartCAPWAP 2013-12-20 23:14:34 +01:00
vemax78 7253e60aed Fix code and improve wlan configuration functionality 2013-12-04 22:25:16 +01:00
vemax78 516f129fce Cleaning WTP DFA code 2013-11-07 22:06:29 +01:00
vemax78 5da4cd4a03 Remove radio channel from wtp configuration 2013-10-14 18:09:09 +02:00
vemax78 fa69ae9bba Fix code 2013-09-30 17:37:34 +02:00
vemax78 5e3856cd9c Add ieee 80211 message element to configure request 2013-09-25 21:22:09 +02:00
vemax78 45ca636d6f Add radio configuration with physical information 2013-09-24 19:14:57 +02:00
vemax78 8ed0a76617 Improve radio configuration 2013-09-22 22:28:59 +02:00
vemax78 e53808c0d6 Use string into Descriptor Data Sub Message Element 2013-08-19 22:28:41 +02:00
vemax78 73c3354e50 Fix wifi messages 2013-07-27 22:46:17 +02:00
vemax78 99b6373cd7 Allow daemon mode 2013-06-16 12:09:57 +02:00
vemax78 794a8e72d2 Improved handling of message elements parsed. Reduces the memory occupied but
it introduces a small overhead in retrieving of message elements parsed.
2013-06-09 17:41:52 +02:00
vemax78 4f119771c0 Inserted zeroed param into create array function 2013-06-08 17:26:10 +02:00
vemax78 37e60bb755 If not set into wtp.conf the client bind to any port 2013-05-28 22:22:16 +02:00
vemax78 16fe0bb6bd Enable presharedkey SSL 2013-05-27 23:10:49 +02:00
vemax78 6c55b4d71f Improve memory administration for tx/rx packet manager 2013-05-27 21:33:23 +02:00
vemax78 9082a7855c multiple update 2013-05-03 22:28:06 +02:00
vemax78 05ab7a3787 stub binding wifi engine 2013-05-01 21:33:54 +02:00
vemax78 7dd6d43954 First commit 2013-05-01 14:52:55 +02:00