Commit Graph

348 Commits

Author SHA1 Message Date
Andreas Schultz
29ed6544c5 switch everything to new log API and drop old one 2016-03-30 14:47:57 +02:00
Andreas Schultz
dd6f6fcfe2 add format string atrribute to logging and fix all error found by it 2016-03-30 14:30:27 +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
a4cb96da7c save and restore errno in logging function
this makes it save to use logging functions in statements that
expect errno to be unchanged
2016-03-30 13:10:51 +02:00
Andreas Schultz
84859e20c4 also clear the local control port when resetting the WTP state
Without reseting the port, the new control socket will be
bound to the same port as the old one.
2016-03-30 09:22:02 +02:00
Moritz Rosenthal
622f148150 Wrong option for ./configure in README.md 2016-03-29 16:54:02 +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
40a98c9075 move packet processing from main receive loop into function 2016-03-29 11:51:39 +02:00
Andreas Schultz
a3c2e52d3c reset WTP state when going into DTLS TD 2016-03-29 11:51:39 +02:00
Andreas Schultz
7eddb74767 rework overly deep if statement in wtp_dfa_run 2016-03-29 11:51:39 +02:00
Andreas Schultz
73afba9a6d rework overly deep if statement in wtp_dfa_state_join 2016-03-29 11:51:39 +02:00
Andreas Schultz
0842a2c6f5 rework error path in dfa dtls 2016-03-29 11:51:39 +02:00
Andreas Schultz
43dde134b7 simplify if statement in wtp_dfa_state_discovery 2016-03-29 11:51:39 +02:00
Andreas Schultz
4117ab1f71 move discovery request generation into function 2016-03-29 11:51:39 +02:00
Andreas Schultz
e6d1472824 simplify if statement in wtp_dfa_state_datacheck 2016-03-29 11:48:28 +02:00
Andreas Schultz
1091aa0830 simplify if statement in wtp_dfa_state_configure 2016-03-29 11:48:28 +02:00
Andreas Schultz
f85928e0b0 rework error exits path to simplify if statement 2016-03-29 11:48:28 +02:00
Andreas Schultz
e92c257ac4 move deep if statement in wtp_send_configure into function 2016-03-29 11:48:28 +02:00
Andreas Schultz
13ef6c0d62 rework deep indented if statement in wtp_dfa_retransmition_timeout 2016-03-29 11:48:28 +02:00
Andreas Schultz
258c8ff750 rework overly deep if statement in wtp_dfa_running 2016-03-29 11:48:28 +02:00
Andreas Schultz
de9b54e8b1 reindent wtp_dfa_execute 2016-03-29 11:48:28 +02:00
Andreas Schultz
26415cae34 [wtp] remove curly brackets from single line if statements 2016-03-29 11:48:28 +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
Tobias Hintze
f0a7b848f4 whitespace fix 2016-03-24 17:15:12 +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
8e0b88cc4e [wtp] update config for 802.11n support 2016-03-24 17:15:12 +01:00
Andreas Schultz
7293ce43da [ac] drop old libjson compatibility
json-c >= 0.11 is required now
2016-03-24 17:15:12 +01:00
Andreas Schultz
64012e792c update README, 802.11n is supported now 2016-03-24 17:15:12 +01:00
Andreas Schultz
94e232abe4 build without AC by default 2016-03-24 17:15:12 +01:00
Andreas Schultz
afd76e003d fix non-debug builds 2016-03-24 17:15:12 +01:00
Andreas Schultz
40071fb06d fix AC compilation 2016-03-24 17:15:12 +01:00
Andreas Schultz
e8241b2d3f fix libnl-genl detection for libnl3 2016-03-24 17:15:12 +01:00
Andreas Schultz
29295d1434 [ac] rename last remaining CyaSSL refrence to wolfSSL 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
Andreas Schultz
e3a977e40a [wtp] rework wtp_radio_setconfiguration
no functional changes, only code shuffeling:
* move 802.11 IE handling into function
* rework deep if conditions to be simple
* reformat
2016-03-24 17:15:11 +01:00
Andreas Schultz
730f110a25 [wtp] implement vendor specific elements 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
471d1058c4 [wtp] prepare message elements for vendor element handling
convert message element type into a struct{ vendor, type }.
Vendor will be 0 for all RFC types.
2016-03-08 10:21:51 +01:00
Andreas Schultz
140be9b143 simplify element list handling
Doing all the work to create a list element only to fail when we can
not decode the element is a waste of effort.
Decode the element first and only on success handle the list operations.
2016-03-07 18:25:49 +01:00
Andreas Schultz
38f7681608 constify capwap_message_elements_ops 2016-03-07 18:25:49 +01:00
Andreas Schultz
627a38a556 move the category setting into the element ops
this prepares the element ops for decoding vendor
ies into seperate types.

It also makes sense to keep all information about a IE
in one place.
2016-03-07 18:09:13 +01:00
Andreas Schultz
1436fc9e5f rename overly verbose capwap_message_elements_ops
The struct is already conveys the scope of the operations,
repeating it in the name of ops again is redundant and
bloats the resulting source code.

Rename the opt to shorter versions.
2016-03-07 17:12:48 +01:00
Andreas Schultz
78a8a75c6b start 802.11n 2016-03-07 16:23:49 +01:00
Andreas Schultz
1d95a62061 upgrade version to v1.1.0 2016-03-07 15:40:32 +01:00