Commit Graph

385 Commits

Author SHA1 Message Date
43dde134b7 simplify if statement in wtp_dfa_state_discovery 2016-03-29 11:51:39 +02:00
4117ab1f71 move discovery request generation into function 2016-03-29 11:51:39 +02:00
e6d1472824 simplify if statement in wtp_dfa_state_datacheck 2016-03-29 11:48:28 +02:00
1091aa0830 simplify if statement in wtp_dfa_state_configure 2016-03-29 11:48:28 +02:00
f85928e0b0 rework error exits path to simplify if statement 2016-03-29 11:48:28 +02:00
e92c257ac4 move deep if statement in wtp_send_configure into function 2016-03-29 11:48:28 +02:00
13ef6c0d62 rework deep indented if statement in wtp_dfa_retransmition_timeout 2016-03-29 11:48:28 +02:00
258c8ff750 rework overly deep if statement in wtp_dfa_running 2016-03-29 11:48:28 +02:00
de9b54e8b1 reindent wtp_dfa_execute 2016-03-29 11:48:28 +02:00
26415cae34 [wtp] remove curly brackets from single line if statements 2016-03-29 11:48:28 +02:00
067f920d81 reformat some overly long code lines 2016-03-29 11:48:28 +02:00
ad27e80521 Merge pull request #2 from nm-mrt/dns-support
Handle no DNS at system start
2016-03-25 13:16:20 +01:00
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
f0a7b848f4 whitespace fix 2016-03-24 17:15:12 +01:00
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
3b7c0adda7 [wtp] move overly deep indented wtp descriptor config parser into function 2016-03-24 17:15:12 +01:00
aa5af8056b [wtp] move overly deep indented config parser into function 2016-03-24 17:15:12 +01:00
fbe31bda21 rename variable to avoid potential type clash 2016-03-24 17:15:12 +01:00
8e0b88cc4e [wtp] update config for 802.11n support 2016-03-24 17:15:12 +01:00
7293ce43da [ac] drop old libjson compatibility
json-c >= 0.11 is required now
2016-03-24 17:15:12 +01:00
64012e792c update README, 802.11n is supported now 2016-03-24 17:15:12 +01:00
94e232abe4 build without AC by default 2016-03-24 17:15:12 +01:00
afd76e003d fix non-debug builds 2016-03-24 17:15:12 +01:00
40071fb06d fix AC compilation 2016-03-24 17:15:12 +01:00
e8241b2d3f fix libnl-genl detection for libnl3 2016-03-24 17:15:12 +01:00
29295d1434 [ac] rename last remaining CyaSSL refrence to wolfSSL 2016-03-24 17:15:12 +01:00
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
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
730f110a25 [wtp] implement vendor specific elements 2016-03-24 17:15:11 +01:00
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
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
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
38f7681608 constify capwap_message_elements_ops 2016-03-07 18:25:49 +01:00
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
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
78a8a75c6b start 802.11n 2016-03-07 16:23:49 +01:00
1d95a62061 upgrade version to v1.1.0 v1.1.0 2016-03-07 15:40:32 +01:00
667d7a59e7 transition to WolfSSL API
Rename all remaining CyaSSL API references to WolfSSL.
Newer WolfSSL have significant DTLS fixes and security
improvements. Continuing to support old CyaSSL releases
would impact the perfomance of encrypted WTP sessions.
2016-03-07 15:32:36 +01:00
94d6702d9a upgrade WolfSSL dependency to 3.8.0 for DTLS fixes 2016-03-07 15:22:06 +01:00
f732261226 update README 2016-03-07 15:20:19 +01:00
d366a98717 add support for new NL80211_ATTR_IFACE_SOCKET_OWNER netlink attribute 2016-03-07 14:45:43 +01:00
973bf5eab7 disable IPv6 on WTP AP interface 2016-03-04 18:39:08 +01:00
58741d302f update CAPWAP support kernel patch
reduce debug output, only report ono-IPv4 packets.
2016-03-04 17:08:37 +01:00
0175052cf1 set transport header when injecting 802.3 frames
Resetting the headers is not enoug, we have to make sure
the transport header points the right position and the
skb->protocol is initialized to the payload protocol.
2016-03-04 17:05:56 +01:00
5f98005414 handle WTP QoS IE 2016-03-04 17:04:21 +01:00
d93cd1044d reformat WTP config file reader 2016-03-03 16:44:56 +01:00
2b489947c2 add support for setting the STA WME fields from WMM 2016-03-03 16:44:15 +01:00
4d56938321 reindent ieee80211_retrieve_information_elements_position 2016-03-03 15:27:29 +01:00
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
8dc30ae3c4 rework socket and discovery handling
Swtich sockets to connected when talking to a specific AC. Use
unconnected UDP sockets only during DISCOVERY.

In JOIN, we need send our local address. The old, routing table
based local address discovery is broken for many reasons (VRF,
policy routing, ...). With a connected socket, we can the same
information with a simple getsockname.

During DISCOVERY we are talking to all potential AC's at once.
So using an unconnected socket makes still sense.
2016-03-02 15:13:56 +01:00