hostapd/src/ap
Alexander Wetzel a919a26035 Introduce and add key_flag
Add the new set_key() parameter "key_flag" to provide more specific
description of what type of a key is being configured. This is needed to
be able to add support for "Extended Key ID for Individually Addressed
Frames" from IEEE Std 802.11-2016. In addition, this may be used to
replace the set_tx boolean eventually once all the driver wrappers have
moved to using the new key_flag.

The following flag are defined:

  KEY_FLAG_MODIFY
    Set when an already installed key must be updated.
    So far the only use-case is changing RX/TX status of installed
    keys. Must not be set when deleting a key.

  KEY_FLAG_DEFAULT
    Set when the key is also a default key. Must not be set when
    deleting a key. (This is the replacement for set_tx.)

  KEY_FLAG_RX
    The key is valid for RX. Must not be set when deleting a key.

  KEY_FLAG_TX
    The key is valid for TX. Must not be set when deleting a key.

  KEY_FLAG_GROUP
    The key is a broadcast or group key.

  KEY_FLAG_PAIRWISE
    The key is a pairwise key.

  KEY_FLAG_PMK
    The key is a Pairwise Master Key (PMK).

Predefined and needed flag combinations so far are:

  KEY_FLAG_GROUP_RX_TX
    WEP key not used as default key (yet).

  KEY_FLAG_GROUP_RX_TX_DEFAULT
    Default WEP or WPA-NONE key.

  KEY_FLAG_GROUP_RX
    GTK key valid for RX only.

  KEY_FLAG_GROUP_TX_DEFAULT
    GTK key valid for TX only, immediately taking over TX.

  KEY_FLAG_PAIRWISE_RX_TX
    Pairwise key immediately becoming the active pairwise key.

  KEY_FLAG_PAIRWISE_RX
    Pairwise key not yet valid for TX. (Only usable with Extended Key ID
    support.)

  KEY_FLAG_PAIRWISE_RX_TX_MODIFY
    Enable TX for a pairwise key installed with KEY_FLAG_PAIRWISE_RX.

  KEY_FLAG_RX_TX
    Not a valid standalone key type and can only used in combination
    with other flags to mark a key for RX/TX.

This commit is not changing any functionality. It just adds the new
key_flag to all hostapd/wpa_supplicant set_key() functions without using
it, yet.

Signed-off-by: Alexander Wetzel <alexander@wetzel-home.de>
2020-01-09 12:38:36 +02:00
..
accounting.c Extra RADIUS request attributes from SQLite 2019-07-30 19:58:09 +03:00
accounting.h RADIUS: Use more likely unique accounting Acct-{,Multi-}Session-Id 2016-02-06 17:10:19 +02:00
acs.c AP: Populate iface->freq before starting AP 2019-12-20 12:42:47 +02:00
acs.h ACS: Fix memory leak if interface is disabled during scan 2017-03-04 17:30:15 +02:00
airtime_policy.c hostapd: Add airtime policy configuration support 2019-05-02 14:57:43 +03:00
airtime_policy.h hostapd: Add airtime policy configuration support 2019-05-02 14:57:43 +03:00
ap_config.c WPS: Add application extension data to WPS IE 2020-01-04 23:39:30 +02:00
ap_config.h WPS: Add application extension data to WPS IE 2020-01-04 23:39:30 +02:00
ap_drv_ops.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
ap_drv_ops.h Introduce and add key_flag 2020-01-09 12:38:36 +02:00
ap_list.c Move ap_list_timer() to use common AP periodic cleanup mechanism 2015-07-20 13:42:35 +03:00
ap_list.h Move ap_list_timer() to use common AP periodic cleanup mechanism 2015-07-20 13:42:35 +03:00
ap_mlme.c FILS: Do not clear PTK on FILS Auth/Assoc (AP) 2016-10-22 18:11:14 +03:00
ap_mlme.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
authsrv.c EAP server: Configurable maximum number of authentication message rounds 2019-09-01 17:19:35 +03:00
authsrv.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
beacon.c Make hostapd_drv_send_mlme() more generic 2020-01-03 13:34:37 +02:00
beacon.h hostapd: Added signal level to STA tracking 2016-10-29 00:55:49 +03:00
bss_load.c hostapd: Add average channel utilization in STATUS 2017-12-12 00:48:27 +02:00
bss_load.h AP: Add support for BSS load element (STA Count, Channel Utilization) 2014-10-21 23:25:48 +03:00
ctrl_iface_ap.c Convert the only remaining send_frame() users to send_mlme() 2020-01-03 13:53:42 +02:00
ctrl_iface_ap.h DPP: Allow PMKSA cache entries to be added through hostapd ctrl_iface 2017-06-19 21:13:17 +03:00
dfs.c DFS: Don't handle DFS ops for 6 GHz channels 2019-12-05 17:12:27 +02:00
dfs.h DFS: Handle pre-CAC expired event 2017-03-09 17:01:50 +02:00
dhcp_snoop.c BSD: Use struct ip rather than struct iphdr 2020-01-02 19:17:10 +02:00
dhcp_snoop.h AP: Add support for Proxy ARP, DHCP snooping mechanism 2014-10-28 01:08:29 +02:00
dpp_hostapd.c DPP: Replace ap boolean with netRole enum in Configurator params 2019-12-12 02:33:00 +02:00
dpp_hostapd.h DPP: Bootstrapping via NFC URI Record 2019-12-05 12:37:51 +02:00
drv_callbacks.c ACS: Select current hw_mode based on the selected frequency 2019-12-20 12:45:03 +02:00
eap_user_db.c Check snprintf result to avoid compiler warnings 2018-12-24 11:09:22 +02:00
eth_p_oui.c FT: Replace inter-AP protocol with use of OUI Extended Ethertype 2017-05-03 18:30:31 +03:00
eth_p_oui.h FT: Replace inter-AP protocol with use of OUI Extended Ethertype 2017-05-03 18:30:31 +03:00
fils_hlp.c BSD: Use struct ip rather than struct iphdr 2020-01-02 19:17:10 +02:00
fils_hlp.h FILS: DHCP relay for HLP requests 2017-02-01 18:17:39 +02:00
gas_query_ap.c DPP: Integration for hostapd 2017-06-19 21:13:17 +03:00
gas_query_ap.h DPP: Integration for hostapd 2017-06-19 21:13:17 +03:00
gas_serv.c DPP2: hostapd as TCP Relay 2019-04-22 21:08:59 +03:00
gas_serv.h DPP2: hostapd as TCP Relay 2019-04-22 21:08:59 +03:00
hostapd.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
hostapd.h Remove IAPP functionality from hostapd 2019-09-11 13:11:03 +03:00
hs20.c Remove CONFIG_IEEE80211W build parameter 2019-09-08 17:33:40 +03:00
hs20.h HS 2.0: Move Terms and Conditions Server URL generation from AP to AS 2018-06-21 20:50:54 +03:00
hw_features.c Use frequency in HT/VHT validation steps done before starting AP 2019-12-20 13:05:39 +02:00
hw_features.h hostapd: Check EDMG configuration against capability 2019-10-07 17:20:41 +03:00
ieee802_1x.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
ieee802_1x.h Extra RADIUS request attributes from SQLite 2019-07-30 19:58:09 +03:00
ieee802_11.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
ieee802_11.h Call hostapd_allowed_address() directly from handle_probe_req() 2019-12-29 23:44:32 +02:00
ieee802_11_auth.c Fix possible memory leak of RADIUS data in handle_auth() 2019-12-29 23:43:55 +02:00
ieee802_11_auth.h Make hostapd_copy_psk_list() non-static 2019-12-29 23:34:01 +02:00
ieee802_11_he.c AP: Publish only HE capabilities and operation IEs on 6 GHz band 2019-10-15 15:39:22 +03:00
ieee802_11_ht.c AP: Publish only HE capabilities and operation IEs on 6 GHz band 2019-10-15 15:39:22 +03:00
ieee802_11_shared.c Make hostapd_drv_send_mlme() more generic 2020-01-03 13:34:37 +02:00
ieee802_11_vht.c AP: Publish only HE capabilities and operation IEs on 6 GHz band 2019-10-15 15:39:22 +03:00
Makefile Remove IAPP functionality from hostapd 2019-09-11 13:11:03 +03:00
mbo_ap.c MBO: Do not parse reason_detail in non_pref_chan attr (AP) 2016-09-25 17:31:26 +03:00
mbo_ap.h MBO: Parse non-preferred channel list on the AP 2016-02-22 21:17:38 +02:00
ndisc_snoop.c Fix DHCP/NDISC snoop deinit followed by failing re-init 2017-03-04 11:42:15 +02:00
ndisc_snoop.h proxyarp: Use C library header files and CONFIG_IPV6 2014-11-25 16:58:21 +02:00
neighbor_db.c hostapd: Support showing neighbor list through hostapd_cli 2019-12-26 17:59:03 +02:00
neighbor_db.h hostapd: Support showing neighbor list through hostapd_cli 2019-12-26 17:59:03 +02:00
p2p_hostapd.c Use P2P_IE_VENDOR_TYPE more consistently 2014-03-05 23:36:54 +02:00
p2p_hostapd.h Remove the GPL notification from files contributed by Atheros 2012-02-11 19:39:36 +02:00
pmksa_cache_auth.c FILS: Update PMKID derivation rules for ERP key hierarchy establishment 2017-09-13 22:17:58 +03:00
pmksa_cache_auth.h OWE: PMKSA caching in AP mode 2017-10-09 12:12:54 +03:00
preauth_auth.c Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
preauth_auth.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
rrm.c hostapd: Fix a typo in function name 2019-01-02 16:40:34 +02:00
rrm.h Report beacon request TX status as control interface event 2017-01-03 16:02:58 +02:00
sta_info.c hostapd: Support VLAN offload to the driver 2020-01-09 00:48:57 +02:00
sta_info.h SAE: A bit optimized sae_confirm_immediate=2 for testing purposes 2020-01-08 20:57:08 +02:00
taxonomy.c Fix or supress various sparse warnings 2017-01-29 18:33:10 +02:00
taxonomy.h taxonomy: Store Probe Request frames in hostapd_sta_info 2016-09-22 00:45:24 +03:00
tkip_countermeasures.c hostapd: Add logging around Michael MIC related failures 2018-04-02 16:51:29 +03:00
tkip_countermeasures.h hostapd: Fix a regression in TKIP countermeasures processing 2012-11-18 13:06:03 +02:00
utils.c FST: Do not prune STAs belonging to the same FST 2015-07-16 18:26:15 +03:00
vlan.c VLAN: Fix vlan_compare() for tagged VLANs 2016-02-22 19:53:05 +02:00
vlan.h radius: Add tagged VLAN parsing 2016-02-17 11:46:13 +02:00
vlan_full.c vlan: Use new bridge ioctl() 2019-01-02 00:23:43 +02:00
vlan_ifconfig.c vlan: Move if_nametoindex() use out of vlan_init.c 2016-03-25 18:00:44 +02:00
vlan_init.c Check snprintf result to avoid compiler warnings 2018-12-24 11:09:22 +02:00
vlan_init.h VLAN: Separate station grouping and uplink configuration 2016-02-17 11:46:11 +02:00
vlan_ioctl.c Use own header file for defining Linux VLAN kernel interface 2016-03-26 11:24:38 +02:00
vlan_util.c vlan: Remove unnecessary header includes from netlink implementation 2016-03-25 17:27:16 +02:00
vlan_util.h vlan: Move if_nametoindex() use out of vlan_init.c 2016-03-25 18:00:44 +02:00
wmm.c Make hostapd_drv_send_mlme() more generic 2020-01-03 13:34:37 +02:00
wmm.h Remove obsolete license notifications 2013-12-24 22:59:52 +02:00
wnm_ap.c Make hostapd_drv_send_mlme() more generic 2020-01-03 13:34:37 +02:00
wnm_ap.h WNM: Collocated Interference Reporting 2018-10-30 14:07:51 +02:00
wpa_auth.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
wpa_auth.h Introduce and add key_flag 2020-01-09 12:38:36 +02:00
wpa_auth_ft.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
wpa_auth_glue.c Introduce and add key_flag 2020-01-09 12:38:36 +02:00
wpa_auth_glue.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
wpa_auth_i.h Store a copy of Association Request RSNXE in AP mode for later use 2019-10-18 00:20:29 +03:00
wpa_auth_ie.c Merge wpa_supplicant and hostapd EAPOL-Key KDE parsers 2019-10-18 13:02:27 +03:00
wpa_auth_ie.h Merge wpa_supplicant and hostapd EAPOL-Key KDE parsers 2019-10-18 13:02:27 +03:00
wpa_auth_kay.c macsec: Support IEEE 802.1X(EAP)/PSK MACsec Key Agreement in hostapd 2019-06-03 20:27:44 +03:00
wpa_auth_kay.h macsec: Support IEEE 802.1X(EAP)/PSK MACsec Key Agreement in hostapd 2019-06-03 20:27:44 +03:00
wps_hostapd.c WPS: Add application extension data to WPS IE 2020-01-04 23:39:30 +02:00
wps_hostapd.h WPS NFC: Add AP mode connection handover report 2014-01-27 21:10:55 +02:00
x_snoop.c AP: Enable multicast snooping on bridge if ProxyARP IPv6 is in use 2015-04-13 14:00:32 +03:00
x_snoop.h AP: Add multicast-to-unicast conversion send for "x_snoop" 2014-11-19 16:25:13 +02:00