Commit Graph

3168 Commits

Author SHA1 Message Date
James Prestwood 3293bd9933 ie: add OWE AKM type
Added a new AKM suite, IE_RSN_AKM_SUITE_OWE.
2018-11-16 16:59:45 -06:00
Tim Kourt e4a76018fd scan: Make periodic scan optional 2018-11-16 16:42:00 -06:00
Tim Kourt 7b8c069383 doc: Add option to disable periodic scan into main.conf 2018-11-16 16:42:00 -06:00
James Prestwood 40685e8fe3 crypto: implement HKDF-Expand (RFC 5869)
This will be required by OWE
2018-11-16 16:38:28 -06:00
James Prestwood 0b42ca7c30 crypto: renamed hkdf_256
The RFC (5869) for this implementation defines two functions,
HKDF-Extract and HKDF-Expand. The existing 'hkdf_256' was implementing
the Extract function, so it was renamed appropriately. The name was
changed for consistency when the Expand function will be added in the
future.
2018-11-16 16:30:22 -06:00
James Prestwood dddbf22ab7 unit: added ECDH unit tests 2018-11-16 16:25:20 -06:00
James Prestwood 5811e72940 ecdh: added ECDH module 2018-11-16 16:25:17 -06:00
James Prestwood 22f4f2bc38 monitor: print OWE related info
Added support to print IE_TYPE_OWE_DH_PARAM element as well as added
the AKM suite string/type for OWE.
2018-11-16 16:20:59 -06:00
James Prestwood 9b204a8c7e ie: add IE_TYPE_OWE_DH_PARAM to IE list 2018-11-16 16:20:59 -06:00
James Prestwood 35bce47022 monitor: allow printing extension IE's
print_ie was using a uint8_t for tag, which overflowed if the IE was an
extension type.
2018-11-16 16:20:59 -06:00
James Prestwood c3785df735 monitor: fix indent on AKM types 2018-11-16 16:20:59 -06:00
Marcel Holtmann d7609915db Release 0.12 2018-11-15 22:19:55 +01:00
Marcel Holtmann f9db6c917a build: Require at least version 0.15 when building with external ELL 2018-11-15 22:12:09 +01:00
Denis Kenzior 712a92cc4c network: Simplify is_rsn logic
In the current version SECURITY_PSK was handled inside the is_rsn block
while the SECURITY_8021X was off in its own block.  This was weird and a
bit misleading.  Simplify the code flow through the use of a goto and
decrease the nesting level.

Also optimize out unnecessary use of scan_bss_get_rsn_info
2018-11-15 11:37:20 -06:00
Denis Kenzior 5bfbdd5a01 network: Check Autoconnectable as the first condition 2018-11-15 11:31:39 -06:00
Denis Kenzior c146490567 network: Introduce __bss_is_sae
This takes an rsn_info pointer directly so that some calls to
scan_bss_get_rsn_info can be optimized
2018-11-15 11:29:13 -06:00
Denis Kenzior 3d549e457d scan: make scan_bss_get_rsn_info const correct 2018-11-15 11:28:46 -06:00
James Prestwood ad242a796a network: fix 8021x autoconnect
In network_autoconnect, when the network was SECURITY_8021X there was no
check (for SECURITY_PSK) before calling network_load_psk. Since the
provisioning file was for an 8021x network neither PreSharedKey or
Passphrase existed so this would always fail. This fixes the 8021x failure
in testConnectAutoconnect.
2018-11-15 11:20:06 -06:00
James Prestwood 07c870df55 station: only set 8021x config on 8021x networks
During the handshake setup, if security != SECURITY_PSK then 8021x settings
would get set in the handshake object. This didn't appear to break anything
(e.g. Open/WEP) but its better to explicitly check that we are setting up
an 8021x network.
2018-11-14 20:47:42 -06:00
Tim Kourt 10a4e01657 client: Fix mem leak 2018-11-12 19:25:19 -06:00
Tim Kourt b0e5b9de02 client: Optimize network property lookups 2018-11-12 11:10:23 -06:00
Tim Kourt 13c4095b77 client: Add SupportedModes property to the adapters 2018-11-12 10:38:00 -06:00
Tim Kourt a7c28c4977 client: Fix display of the quoted params 2018-11-12 10:37:19 -06:00
Tim Kourt 5afe4576a1 client: Enable 'help', 'version' cmds in non-interactive mode 2018-11-12 10:37:09 -06:00
Tim Kourt 7df4f2e86b client: Fix display refresh after agent prompt
The line count was one line off after the Agent prompt, thus making
the command output to scroll up on each refresh.
2018-11-12 10:36:58 -06:00
Tim Kourt 9c8be9404b client: Update properties for inline display 2018-11-12 10:36:56 -06:00
Peter Seiderer 7d6e11ddd5 main: Fix __iwd_backtrace_init() availability detection
Check for HAVE_EXECINFO_H for all __iwd_backtrace_init usages.

Fixes:

  src/main.o: In function `main':
  main.c:(.text.startup+0x798): undefined reference to `__iwd_backtrace_init'
  collect2: error: ld returned 1 exit status
2018-11-10 19:09:14 +01:00
Peter Seiderer 40ec69876c plugins: remove unused backtrace.h 2018-11-10 19:08:47 +01:00
Peter Seiderer 330a930b01 monitor: add missing sys/stat.h include
Fixes:

    CC       monitor/pcap.o
  monitor/pcap.c: In function ‘pcap_create’:
  monitor/pcap.c:121:6: error: ‘S_IRUSR’ undeclared (first use in this function)
        S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
        ^
  monitor/pcap.c:121:6: note: each undeclared identifier is reported only once for each function it appears in
  monitor/pcap.c:121:16: error: ‘S_IWUSR’ undeclared (first use in this function)
        S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
                  ^
  monitor/pcap.c:121:26: error: ‘S_IRGRP’ undeclared (first use in this function)
        S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
                            ^
  monitor/pcap.c:121:36: error: ‘S_IROTH’ undeclared (first use in this function)
        S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
                                      ^
2018-11-10 17:49:04 +01:00
Marcel Holtmann 6c3110551a Release 0.11 2018-11-09 21:29:01 +01:00
Denis Kenzior 48b74d6531 client: Update to the new GetHiddenAccessPoints API 2018-11-09 14:06:20 -06:00
Denis Kenzior 6df62ab68e station: Update to the new GetHiddenAccessPoints API 2018-11-09 14:06:20 -06:00
Marcel Holtmann 1237382dda build: Require at least version 0.14 when building with external ELL 2018-11-09 20:49:19 +01:00
Denis Kenzior fbcacce0a3 doc: Tweak GetHiddenStations API
Station was really a misnomer, it should have been AccessPoint.  Also
mark the API as experimental.  It will be moved to the Diagnostics
interface eventually.
2018-11-09 13:44:48 -06:00
Denis Kenzior 5f8c20f455 netdev: Enable ControlPortOverNL80211 by default 2018-11-09 11:52:09 -06:00
Denis Kenzior 8732a9f38a main: Add checks for asymmetric key support
Tell the user that Kernel 4.20 with asymmetric key support enabled is
required to support TLS based (EAP/PEAP/TTLS) WPA-Enterprise methods.
2018-11-09 11:50:29 -06:00
Tim Kourt 19f45d9752 client: Implement GetHiddenStations API 2018-11-09 11:34:43 -06:00
Tim Kourt 8c1992feb2 station: Introduce GetHiddenStations API call 2018-11-09 11:34:43 -06:00
Tim Kourt f803b0439b station: Introduce an ordered list of hidden stations
A sorted list of hidden network BSSs observed in the recent scan
is kept for the informational purposes of the clients. In addition,
it has deprecated the usage of seen_hidden_networks variable.
2018-11-09 11:34:43 -06:00
Tim Kourt 67f245a497 client: Fix argv for display refresh 2018-11-09 11:34:43 -06:00
Tim Kourt 97cdffc4cd client: Add property 'hidden' to known network 2018-11-09 11:34:43 -06:00
Tim Kourt a435f8fd4d client: Fix header display for known network list 2018-11-09 11:34:43 -06:00
Marcel Holtmann 16824cad05 unit: Use L_ARRAY_SIZE instead own version of it 2018-11-09 14:49:33 +01:00
Andrew Zaborowski 0b5dceab27 network: Don't require PSK if Passphrase present
Refactor the network->psk and network->passphrase loading and saving
logic to not require the PreSharedKey entry in the psk config file and
to generate network->psk lazily on request.  Still cache the computed
PSK in memory and in the .psk file to avoid recomputing it which uses
many syscalls.  While there update the ask_psk variable to
ask_passphrase because we're specifically asking for the passphrase.
2018-11-05 12:43:16 -06:00
Patrik Flykt 0b1e6cc3e5 scan: Log BSSID in messages
If there is an error with the BSSID information, log the BSSID
station address to catch the offending Access Point.
2018-11-05 12:29:41 -06:00
James Prestwood 635c530e5e doc: updated features to include SAE 2018-11-05 12:08:31 -06:00
James Prestwood e12b24d218 doc: updated features to include AP/AdHoc modes 2018-11-05 12:08:11 -06:00
Patrik Flykt 7ec8fd6776 ie: Fix up broken Access Point with too many rates added
According to the specification, Supported rates IE is supposed
to have a maximum length of eight rate bytes. In the wild an
Access Point is found to add 12 bytes of data instead of placing
excess rate bytes in an Extended Rates IE.

BSS: len 480
    BSSID 44:39:C4:XX:XX:XX
    Probe Response: true
    TSF: 0 (0x0000000000000000)
    IEs: len 188
...
        Supported rates:
            1.0(B) 2.0(B) 5.5(B) 6.0(B) 9.0 11.0(B) 12.0(B) 18.0 Mbit/s
            24.0(B) 36.0 48.0 54.0 Mbit/s
            82 84 8b 8c 12 96 98 24 b0 48 60 6c              .......$.H`l
        DSSS parameter set: channel 3
            03
...

Any following IEs decode nicely, thus it seems that we can relax
Supported Rates IE length handling to support this thermostat.
2018-11-05 12:07:22 -06:00
Patrik Flykt c68ae2f00b main: Log optimized implementations only when they exist
Log optimized implementations strings only when the hashmap contains
items in order to avoid an unnecessary line of text with no members
printed out.
2018-11-05 11:52:48 -06:00
Tim Kourt 2cc4fdbf45 t-runner: Add verbosity option for TLS debug 2018-11-02 15:54:32 -05:00