iwd/src
Denis Kenzior 3f69ddb615 mpdu: Add ie sorting utility
IE elements in various management frames are ordered.  This ordering is
outlined in 802.11, Section 9.3.3.  The ordering is actually different
depending on the frame type.  Instead of trying to implement the order
manually, add a utility function that will sort the IEs in the order
expected by the particular management frame type.

Since we already have IE ordering look up tables in the various
management frame type validation functions, move them to global level
and re-use these lookup tables for the sorting utility.
2021-08-04 10:41:19 -05:00
..
80-iwd.link build: Move 50-iwd.link up to 80-iwd.link for less confusion 2019-10-25 01:08:56 +02:00
adhoc.c adhoc: set operstate on Start/Stop 2021-04-30 20:07:19 -05:00
agent.c agent: Send Release/Cancel with no_reply flag set 2021-06-09 10:34:22 -05:00
agent.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
anqp.c anqp: Ensure a random token is used 2021-07-05 20:25:14 -05:00
anqp.h anqp: refactor to use frame-xchg 2020-07-09 09:58:21 -05:00
anqputil.c iwd: Use test_bit from ell 2021-03-12 13:49:23 -06:00
anqputil.h anqp: move ANQP parsers into anqputil 2019-07-15 14:53:44 -05:00
ap.c ie: Change ie_tlv_builder_finalize signature 2021-07-14 09:58:42 -05:00
ap.h ap: Forward DHCP events to AP event handler 2021-06-04 11:55:06 -05:00
auth-proto.h auth-proto: introduce auth-proto concept 2019-05-03 13:53:50 -05:00
backtrace.c backtrace: Avoid null-dereferencing strchr result 2021-02-09 10:30:48 -06:00
backtrace.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
band.c treewide: Remove non-ascii characters 2021-07-28 10:03:27 -05:00
band.h band: Add utility for estimating non-ht data rate 2021-06-04 10:14:04 -05:00
blacklist.c module: Move declarations into separate header file 2019-11-07 23:40:13 +01:00
blacklist.h blacklist: Convert to use IWD_MODULE 2019-05-22 09:58:04 -05:00
common.c common: Remove duplicate AKM 2020-08-13 13:43:31 -05:00
common.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
crypto.c treewide: Remove non-ascii characters 2021-07-28 10:03:27 -05:00
crypto.h crypto: Generalize kdf_sha{256|384} as crypto_kdf 2021-07-14 09:58:42 -05:00
dbus.c netdev: Move iftype_to_string utility 2021-04-20 09:37:48 -05:00
dbus.h main: Add D-Bus Daemon.GetInfo method 2021-05-07 08:41:21 -05:00
device.c station: Move AP directed roam watch to station 2021-04-23 09:51:46 -05:00
diagnostic.c diagnostic: Fix crash with Open networks 2021-04-28 11:19:38 -05:00
diagnostic.h diagnostic: add diagnostic_akm_suite_to_security 2021-03-29 13:17:36 -05:00
eap-aka.c eap-aka: round to nearest word on message buffers 2021-07-30 10:38:26 -05:00
eap-gtc.c eap-gtc: Do not check deprecated GTC-Secret 2021-06-01 10:44:23 -05:00
eap-md5.c eap-md5: Do not check deprecated MD5-Secret 2021-06-01 10:44:57 -05:00
eap-mschapv2.c treewide: Use l_settings_{set,get}_bytes 2020-09-16 16:46:02 -05:00
eap-mschapv2.h cleanup: Remove extra empty lines 2020-03-17 15:35:22 -05:00
eap-peap.c peap: Fail auth. if invalid compound MAC is received 2020-02-06 15:18:04 -06:00
eap-private.h eap: Add authenticator method logic and API 2020-08-17 09:28:49 -05:00
eap-pwd.c pwd/sae/owe: Update to ell ecc API changes 2021-07-07 20:56:53 -05:00
eap-sim.c eap: Simplify sending EAP method responses 2020-08-13 10:36:43 -05:00
eap-tls-common.c eap-tls: Make use of l_cert_load_container_file 2021-01-25 14:01:58 -06:00
eap-tls-common.h eap-tls: Make use of l_cert_load_container_file 2021-01-25 14:01:58 -06:00
eap-tls.c eap-tls: Fix potential memory leak 2021-02-08 15:56:30 -06:00
eap-ttls.c treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
eap-wsc.c wscutil: Move DeviceType parsing from p2p & eap-wsc to a function 2021-04-26 10:48:03 -05:00
eap-wsc.h eap-wsc: Registrar mode message processing 2020-08-17 09:40:25 -05:00
eap.c eap: Print a hint if Identity is likely wrong 2021-04-28 11:27:14 -05:00
eap.h eap: Add authenticator method logic and API 2020-08-17 09:28:49 -05:00
eapol.c treewide: Remove non-ascii characters 2021-07-28 10:03:27 -05:00
eapol.h eapol: add PMK installer support 2021-04-09 11:32:21 -05:00
eapolutil.c eapol: Don't ignore EAPoL protocol version 2010 2021-03-22 17:47:53 -05:00
eapolutil.h eapolutil: Use flexible-array member 2021-05-28 10:57:11 -05:00
erp.c erp: take cache ref in erp_new 2021-08-03 16:29:47 -05:00
erp.h erp: Convert to using IWD_MODULE 2019-05-19 13:07:13 -05:00
fils.c treewide: Remove non-ascii characters 2021-07-28 10:03:27 -05:00
fils.h fils: netdev: update to use auth_proto concepts 2019-05-03 14:37:11 -05:00
frame-xchg.c frame-xchg: iftype changes to be managed by netdev 2021-04-23 09:51:46 -05:00
frame-xchg.h frame-xchg: Re-add frame_xchg_stop 2020-07-31 10:38:59 -05:00
ft.c ft: break up FT action parsing into two steps 2021-05-12 18:04:30 -05:00
ft.h ft: break up FT action parsing into two steps 2021-05-12 18:04:30 -05:00
genbuiltin make: plugin system for build 2017-11-28 13:20:33 -06:00
handshake.c handshake: unref erp_cache when handshake is freed 2021-08-03 16:29:30 -05:00
handshake.h eapol: Add support for Transition Disable 2021-07-27 16:56:01 -05:00
hotspot.c knownnetworks: Commonize parser for common settings 2021-07-27 14:02:43 -05:00
ie.c ie: Change ie_tlv_builder_finalize signature 2021-07-14 09:58:42 -05:00
ie.h mpdu: Update IE ordering for 802.11-2020 2021-08-04 09:03:07 -05:00
ip-pool.c ip-pool: Take out un-needed cast 2021-06-07 17:30:25 -05:00
ip-pool.h ip-pool: Add subnet address selection logic 2021-06-01 10:03:04 -05:00
iwd-dbus.conf tools: Add configure option and D-Bus policy file for hwsim utility 2018-09-14 15:24:15 +02:00
iwd.ap.rst doc: Update AP settings in iwd.ap(5) and iwd.config(5) 2021-06-01 10:20:50 -05:00
iwd.config.rst doc: Update AP settings in iwd.ap(5) and iwd.config(5) 2021-06-01 10:20:50 -05:00
iwd.debug.rst man iwd.debug: Document IWD_GENL_DEBUG 2020-07-13 14:14:41 -05:00
iwd.h main: add a --developer,-E option 2021-05-07 08:45:20 -05:00
iwd.network.rst iwd.network: Document Transition Disable settings 2021-07-27 17:43:38 -05:00
iwd.rst doc: Add manual page for debugging information 2019-11-05 22:14:09 +01:00
iwd.service.in iwd.service: Add CAP_NET_BIND_SERVICE 2021-06-29 11:43:26 -05:00
knownnetworks.c knownnetworks: copy network_config on update 2021-07-29 17:51:25 -05:00
knownnetworks.h network: Store Transition Disable info 2021-07-27 16:55:58 -05:00
main.c main: Document '-E', --developer option 2021-05-25 13:30:29 -05:00
manager.c manager: Do not check deprecated use_default_interface 2021-06-01 10:29:42 -05:00
missing.h build: Support missing rawmemchr 2020-02-03 11:54:28 -06:00
module.c module: Declare functions as foo(void) instead of just foo() 2019-11-24 19:44:06 +01:00
module.h module: add void to empty argument functions 2020-04-08 21:03:13 -05:00
mpdu.c mpdu: Add ie sorting utility 2021-08-04 10:41:19 -05:00
mpdu.h mpdu: Add ie sorting utility 2021-08-04 10:41:19 -05:00
mschaputil.c treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
mschaputil.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
net.connman.iwd.service net.connman.iwd.service: Change SystemdService name to iwd.service 2018-08-09 10:45:16 -05:00
netconfig.c Send hostname as part of DHCP request. 2021-06-18 13:05:59 -05:00
netconfig.h netconfig: Implement netconfig_get_dhcp_server_ipv4 2020-07-13 14:52:02 -05:00
netdev.c netdev: fix RoamThreshold5G 2021-07-28 10:04:41 -05:00
netdev.h netdev: add a channel switch event 2021-05-27 13:53:02 -05:00
network.c station: network: rework ERP/FILS code path 2021-08-03 16:29:08 -05:00
network.h station: network: rework ERP/FILS code path 2021-08-03 16:29:08 -05:00
nl80211cmd.c nl80211cmd: Add additional command decoding 2021-04-29 21:37:38 -05:00
nl80211cmd.h nl80211cmd: Introduce new utility 2019-07-15 14:06:26 -05:00
nl80211util.c nl80211util: add WIPHY_FREQ to parse_attrs support 2021-03-10 15:08:19 -06:00
nl80211util.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
ofono.c ofono: convert to module 2020-09-16 14:31:07 -05:00
owe.c netdev: Centralize mmpdu validation 2021-07-14 09:58:42 -05:00
owe.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
p2p.c p2p: fix out of scope read 2021-07-30 10:40:30 -05:00
p2p.h Add minimal p2p.c and p2p.h 2020-04-10 06:31:19 -05:00
p2putil.c p2putil: Ensure non-negative index in p2p_get_random_string 2021-06-04 11:53:31 -05:00
p2putil.h p2putil: Add p2p_get_random_string 2020-09-14 11:39:25 -05:00
pkcs8.conf build: Provide modules-load.d for loading pkcs8_key_parser module 2019-01-23 18:22:11 +01:00
resolve.c resolve: Do not check deprecated dns_resolve_method 2021-06-01 10:28:47 -05:00
resolve.h resolve: configure systemd-resolved's MulticastDNS= setting 2021-02-11 15:06:01 -06:00
rfkill.c module: Move declarations into separate header file 2019-11-07 23:40:13 +01:00
rfkill.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
rrm.c rrm: React to IFTYPE_CHANGE events 2021-04-23 09:51:46 -05:00
sae.c sae: Add sae_is_h2e 2021-07-14 09:58:42 -05:00
sae.h sae: Add sae_is_h2e 2021-07-14 09:58:42 -05:00
scan.c scan: Quiet down warning 2021-07-28 09:53:21 -05:00
scan.h scan: Save off RSNXE if present 2021-07-14 09:55:49 -05:00
simauth.c simauth: check driver for NULL before canceling request 2020-11-16 17:04:30 -06:00
simauth.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
simutil.c eap: Simplify sending EAP method responses 2020-08-13 10:36:43 -05:00
simutil.h treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
station.c station: network: rework ERP/FILS code path 2021-08-03 16:29:08 -05:00
station.h station: Introduce CONNECTING_AUTO state 2021-05-25 18:42:57 -05:00
storage.c storage: Refactor dirs creation logic to cleanup on failure 2020-04-08 16:18:04 -05:00
storage.h storage: Add ability to preserve times 2020-01-22 11:15:19 -06:00
util.c iwd: Use test_bit from ell 2021-03-12 13:49:23 -06:00
util.h iwd: Use test_bit from ell 2021-03-12 13:49:23 -06:00
watchlist.c watchlist: Remove '__' prefix from static functions 2021-03-09 15:28:36 -06:00
watchlist.h watchlist: Save the watchlist pointer in WATCHLIST_NOTIFY_* 2020-05-01 11:38:57 -05:00
wiphy.c scan: Quiet down warning 2021-07-28 09:53:21 -05:00
wiphy.h network: Enforce Transition Disable settings 2021-07-27 17:43:38 -05:00
wsc.c wsc: Properly write provisioning files with a passphrase 2021-07-09 10:33:02 -05:00
wsc.h wsc: Rework wsc_enrollee_destroy 2020-01-17 12:50:23 -06:00
wscutil.c wscutil: Fix a return statement 2021-06-04 11:53:25 -05:00
wscutil.h wscutil: Move DeviceType parsing from p2p & eap-wsc to a function 2021-04-26 10:48:03 -05:00