Commit Graph

28 Commits

Author SHA1 Message Date
Kapil Gupta
6f9cc06b30 fix(wpa_supplicant): (PEAP client) Update Phase 2 auth requirements
The previous PEAP client behavior allowed the server to skip Phase 2
authentication with the expectation that the server was authenticated
during Phase 1 through TLS server certificate validation. Various PEAP
specifications are not exactly clear on what the behavior on this front
is supposed to be and as such, this ended up being more flexible than
the TTLS/FAST/TEAP cases. However, this is not really ideal when
unfortunately common misconfiguration of PEAP is used in deployed
devices where the server trust root (ca_cert) is not configured or the
user has an easy option for allowing this validation step to be skipped.

Change the default PEAP client behavior to be to require Phase 2
authentication to be successfully completed for cases where TLS session
resumption is not used and the client certificate has not been
configured. Those two exceptions are the main cases where a deployed
authentication server might skip Phase 2 and as such, where a more
strict default behavior could result in undesired interoperability
issues. Requiring Phase 2 authentication will end up disabling TLS
session resumption automatically to avoid interoperability issues.

Allow Phase 2 authentication behavior to be configured with a new phase1
configuration parameter option:
'phase2_auth' option can be used to control Phase 2 (i.e., within TLS
tunnel) behavior for PEAP:
 * 0 = do not require Phase 2 authentication
 * 1 = require Phase 2 authentication when client certificate
   (private_key/client_cert) is no used and TLS session resumption was
   not used (default)
 * 2 = require Phase 2 authentication in all cases
2024-03-15 13:22:10 +05:30
Kapil Gupta
981086ba30 change(esp_wifi): Rename WiFi enterprise connection APIs 2023-09-20 17:06:59 +05:30
jgujarathi
178497c432 wpa_supplicant : Add deinitialization of Enterprise config_methods.
Add deinitialization of config_methods as it prevents correct reinitialization of sta in eap_peer_config_init() during reassoc.
2023-02-17 17:21:41 +05:30
gauri patankar
9a1e4e3b7b wpa_supplicant:Remove stray \n in supplicant logging 2022-12-23 15:55:06 +05:30
Kapil Gupta
7fae6ce4f2 Correct SSID copy length during WPS scan 2022-06-18 13:26:48 +00:00
Kapil Gupta
2aa6853d3e Remove strcpy/strncpy function callings from supplicant 2022-06-06 11:03:35 +05:30
Kapil Gupta
a6811adac7 wpa_supplicant: Add WPS registrar support for softAP mode 2022-05-24 12:11:53 +05:30
Kapil Gupta
c2429f1cf9 wpa_supplicant: sync eap code with upstream 2022-05-13 12:57:47 +08:00
Kapil Gupta
f070e2db6d wpa_supplicant: Fix issues reported by coverity 2022-04-26 21:40:27 +05:30
Kapil Gupta
62eb06e386 wpa_supplicant: Add CA certification bundle support
Add support for CA certificate bundle support for server
certificate validation
2022-04-05 10:57:09 +05:30
Kapil Gupta
20847eeb96 Merge branch 'bugfix/eap_client_crash' into 'master'
wpa_supplicant: Fix memory corruption

Closes WIFI-4299

See merge request espressif/esp-idf!16841
2022-02-11 09:54:27 +00:00
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +08:00
Kapil Gupta
9b38b15180 wpa_supplicant: Fix invalid memory dereference 2022-02-08 23:08:51 +08:00
Ivan Grokhotkov
d4190a9471 wpa_supplicant: mark global variables defined in headers 'extern'
...to avoid defining common symbols.
GCC since version 10 defaults to -fno-common and doesn't generate
common symbols, leading to duplicate definitions of these symbols.
2022-01-27 11:00:09 +07:00
Hrudaynath Dhabe
6d81821516 esp_wifi: Fix the negotiation of method with eap server. 2022-01-03 13:31:32 +05:30
Hrudaynath Dhabe
5f96a6ffd2 esp_wifi: Add support for EAP-FAST authentication method 2021-11-22 17:33:36 +05:30
Kapil Gupta
54940f58a4 esp_wifi: Add WPA3 192-bit certification support 2021-10-12 20:48:53 +08:00
Zim Kalinowski
002cd296e1 Merge remote-tracking branch 'origin/master' into feature/github-7022 2021-10-03 12:25:39 +08:00
Kapil Gupta
e667d1af2e wpa_supplicant: bypass sonar checks for upstream code 2021-07-22 14:12:22 +08:00
Andrey Starodubtsev
6e343c1f8b Fix typo
s/\bUnknow\b/Unknown/g
2021-05-14 18:26:22 +03:00
kapil.gupta
903198ad7f esp_wifi: Fix some wifi bugs.
1. Send encrypted mgmt frames in pmf connection
2. Remove dependecy of SHA256 AKM on PMF
3. Fix null pointer dereference
4. Set TTLS default phase2 method as MSCHAPV2.
2020-12-21 14:27:10 +05:30
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Hrudaynath Dhabe
d7ccad371a wpa_supplicant: add support for PAP, MS-CHAP and CHAP as Phase 2 algorithms for TTLS alongside MS-CHAPv2 2020-07-23 11:07:14 +00:00
kapil.gupta
bd2815db10 wpa_supplicant: Support for mbedtls tls handshake
Add support for mbedtls based tls handshake, this removes
dependency from internal implementation of EAP client.
2020-06-26 17:20:22 +05:30
Hrudaynath Dhabe
ec50c5344b wpa_supplicant: Fix configurable debug log feature's warning issue 2020-01-31 05:34:07 +00:00
Nachiket Kukade
9ec363a25d wpa_supplicant: Make internally used crypto headers private
A lot of internally used crypto headers are publicly includeable
in user projects. This leads to bug reports when these headers
are incorrectly used or the API's are not used as intended.

Move all crypto headers into private crypto src folder, also move
crypto_ops into Supplicant to remove dependecy on crypto headers.

Closes IDF-476
2019-08-17 11:48:37 +00:00
Sagar Bijwe
ae46f04997 wpa_supplicant: Fix sprintf security bugs.
Revert back to using os_snprintf instead of sprintf.

Closes WIFI-624
2019-07-06 04:22:53 +00:00
Deng Xin
c139683024 supplicant/esp_wifi: move supplicant to idf
Move supplicant to idf and do following refactoring:
1. Make the folder structure consitent with supplicant upstream
2. Remove duplicated header files and minimize the public header files
3. Refactor for WiFi/supplicant interfaces
2019-06-29 22:46:52 +08:00