Commit Graph

79 Commits

Author SHA1 Message Date
Laukik Hase
b2a4cf197e
fix (wifi_prov): Retry provisioning on WIFI_AUTH_EXPIRE event
- Closes https://github.com/espressif/esp-idf/issues/11749
2023-11-03 11:51:02 +05:30
Aditya Patwardhan
78638641a7 Merge branch 'contrib/github_pr_10378_v5.0' into 'release/v5.0'
Stop WiFi provisioning in the esp_event thread instead of creating new thread (GitHub PR) (v5.0)

See merge request espressif/esp-idf!22244
2023-02-17 19:36:06 +08:00
Barabas Raffai
c9ce87a1a9
Clean up wifi provisioning in the esp_event thread
Signed-off-by: Laukik Hase <laukik.hase@espressif.com>
2023-02-06 18:31:11 +05:30
Laukik Hase
e60d82463b
protocomm: Fix Kconfig dependency on wifi_provisioning component config
- `protocomm` depends on a config option `CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION`
  from `wifi_provisioning`; however, a lower layer component (`protocomm`) should
  not have any `#ifdef` guard dependent on an upper layer component (`wifi_provisioning`).
- Added a new `ble_link_encryption` flag in `protocomm_ble_config_t` to manage the same

Closes https://github.com/espressif/esp-idf/issues/9443
2023-01-26 12:57:19 +05:30
sanket.wadekar
9067214f33 Changed wifi provisioning scan method
Signed-off-by: sanket.wadekar <sanket.wadekar@espressif.com>
2022-12-31 18:09:45 +05:30
Rahul Tank
6091627f2e Wifi Prov: Disabled the default support for BLE Encrpytion on characteristics read /write
By default, disabled the BLE Encrpyption requirement for provisioning characteristic.
With this flag enabled, when remote attempts to read and if the ACL link is not encrypted,
ESP device will return Insufficient Authentication. It is remote device responsibility to go
for link encryption which may result in pairing.

Some devices do not proceed for any pairing and just show failure pop-up. Also, user needs
to remove bonding on remote phone manually and then try again. This is causing bad user experience.

End user can enable it as per their use case.
2022-11-25 14:18:05 +05:30
Harshit Malpani
12628677c5
wifi_provisioning: fix error codes for wifi connect retry
Closes: https://github.com/espressif/esp-idf/issues/9399
2022-10-21 11:32:56 +05:30
Aditya Patwardhan
ccb8b9d42c wifi_provisioning/manager.c: Fix small bug introduced in recent MR. 2022-10-08 10:50:02 +05:30
Aditya Patwardhan
4ba30e29ec wifi_prov_mgr: Add security version in the proto-ver endpoint. 2022-10-07 14:14:44 +05:30
Aditya Patwardhan
6f69097815 wifi_prov: Update behaviour for wifi_prov_mgr_start_provisioning to avoid breaking the usage for sec1 2022-10-07 14:14:44 +05:30
Isha Pardikar
15d4079e5b wifi_provisioning: Fixed prov_ctx_lock of deinit provisioning manager 2022-09-08 10:21:33 +05:30
Mahavir Jain
bcee30f78e Merge branch 'feature/wifi_prov_mgr_is_provisioned_api_change_v5.0' into 'release/v5.0'
wifi_provisioning: decouple `wifi_prov_mgr_is_provisioned` from manager state (v5.0)

See merge request espressif/esp-idf!19945
2022-09-08 12:26:36 +08:00
Aditya Patwardhan
2f99d2e37f wifi_provisioning: Update API documentation to highlight argument validity while providing sec_params argument. 2022-09-05 12:00:55 +05:30
Mahavir Jain
3955a85a47
wifi_provisioning: decouple wifi_prov_mgr_is_provisioned from manager state
`wifi_prov_mgr_is_provisioned()` API uses the `esp_wifi_get_config()` API
to check if Wi-Fi credentials are configured. It does not really require
any other information from the wifi_prov component. Hence, this commit
removed dependency of this API on provisioning manager initialization state.

Closes IDF-5878
2022-09-05 10:53:47 +05:30
Isha Pardikar
2cfcae8d41 Merge branch 'feature/rainmaker_BT_configurable' into 'master'
Doc: Made bluetooth configurable after wifi provisioning is completed

See merge request espressif/esp-idf!18014
2022-07-26 15:21:27 +05:30
David Cermak
5c383d7b73 esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02:00
Mahavir Jain
9cbf34b53d Merge branch 'bugfix/configure_link_encryption_for_charac' into 'master'
WifiProv: Add configuration support for forcing link encryption

Closes https://github.com/espressif/esp-idf/issues/9201
Closes IDFGH-7649

See merge request espressif/esp-idf!18620
2022-06-23 19:46:47 +08:00
Rahul Tank
0dc0f8ad51 WifiProv: Extended support for configuring if link encryption is needed
when attempting to read / write characteristic to bluedroid stack
2022-06-22 10:17:28 +05:30
Laukik Hase
740b9a9afe wifi_prov: Added support for WPA3_PSK and WPA2_WPA3_PSK APs 2022-06-21 04:24:19 +00:00
Aditya Patwardhan
6222d43984 protocomm: Added option to enable/disable supported security versions. 2022-06-17 13:16:20 +00:00
Aditya Patwardhan
f2cce5fa0d wifi_provisioning: Update the APIs with reference to the new APIs from protocomm
esp_local_ctrl: Update the code with reference to new changes in protocomm component
2022-06-17 13:16:20 +00:00
Aditya Patwardhan
eb7ff34c89 protocomm: Added SRP6a implementation as the security version 2.
1) Rename srp component to esp_srp
2) Remove dependency on hkdf sha
3) Restructure protocomm component APIs to make them more flexible for allowing multiple security versions
4) esp_srp: convert API return type from int to esp_err_t
5) esp_srp: Formatting changes
6) Added mbedtls_gcm instead of aes_ctr

Co-authored-by: Laukik hase <laukik.hase@espressif.com>
2022-06-17 13:16:20 +00:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Laukik Hase
b7fcbb3e7d
wifi_provisioning: Regenerated proto-c and python with protobuf compiler v3.21.0 2022-05-30 09:54:32 +05:30
Yuan Jian Min
74ae372c73 feat(wifi_provisioning): Optimize memory for wifi scan ap number 2022-05-13 13:58:34 +08:00
Harshit Malpani
185a45c9d7 wifi_provisioning: Remove mdns dependency
mDNS code here was futuristic which was never used.
Removing this section of code as wifi_provisioning does not necessarily require it
2022-05-05 16:46:24 +05:30
Rodrigo Garcia
d7201b82f2 provisioning: replace <lwip/inet.h> by <lwip/ip4_addr.h> in wifi_provisioning/wifi_config.h 2022-04-26 17:42:29 +08:00
Isha Pardikar
e751cbe6c0 Merge branch 'bugfix/wifi_prov_mgr_conn_issue' into 'master'
NimBLE: Fixed device disconnection issue of wifi prov mgr

Closes IDF-4655

See merge request espressif/esp-idf!17236
2022-03-24 15:35:49 +05:30
Sagar Bijwe
6501eff7f5 Remove legacy system event framework. 2022-03-09 15:53:45 +05:30
Laukik Hase
db914d6272 wifi_prov_mgr: Fix provisioning not stopping in release mode
- For the wifi_prov_mgr example in release mode (with NDEBUG defined -
  assertions disabled), the task to stop provisioning is never started
  as it is voided by the assert function it is called in.

Closes https://github.com/espressif/esp-idf/issues/8309
2022-01-31 15:03:54 +05:30
Laukik Hase
5261d7adf1 wifi_prov_mgr: Added check for passphrase length in softAP scheme
Closes https://github.com/espressif/esp-idf/issues/8063
2021-12-27 10:57:50 +05:30
Roland Dobai
766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Zhang Jun Hao
a568b4fddf esp_wifi: support station only mode for code size down 2021-10-27 11:48:22 +08:00
isha pardikar
09800028e1 Wifi_prov_mgr:Fix for ios device needs to do forget device 2021-10-06 17:46:22 +08:00
Harshit Malpani
baa2faa94b provisioning: fix wifi warning in wifi_prov_mgr application
Scan configuration parameters should not modify in co-existence mode.
2021-08-11 09:54:37 +05:30
Prasad Alatkar
c8f4153d4f Provisioning BLE: Add API to set manufacturer data in scan response
- Add `wifi_prov_scheme_ble_set_mfg_data` API to set custom manufacturer data
  in BLE advertisements.
- Run format.sh script on modified files.
- Fix few typos in `protocomm_nimble.c`.

- Incorporate suggestion to remove extra check on protocomm_ble_mfg_data_len

- Remove few unnecessary comments.
2021-07-14 11:56:04 +05:30
Shubham Kulkarni
f06d1cdc75 wifi_provisioning: Add check for WIFI_REASON_MIC_FAILURE error code in wifi_prov_mgr_event_handler_internal 2021-06-07 12:23:28 +00:00
Shubham Kulkarni
34bdbf9ee2 wifi_provisioning: Add API to reset state if provisioning fails 2021-06-07 12:23:28 +00:00
yuanjm
06ae78b531 provisioning: Fix WiFi credentials not saved to NVS due to wifi_prov_mgr_start_provisioning change the WiFi storage to RAM
Closes https://github.com/espressif/esp-idf/issues/5178
2021-03-30 11:15:05 +00:00
yuanjm
49f3fba14d wifi_provisioning: Add an API for resetting provisioning config 2021-02-23 14:21:06 +08:00
Fu Hanxi
0146f258d7 style: format python files with isort and double-quote-string-fixer 2021-01-26 10:49:01 +08:00
Jiang Jiang Jian
1614cefd4f Merge branch 'bugfix/wpa_supplicant_coverity_issue_fixes' into 'master'
Fix some issues raised by Coverity static Analyzer.

Closes WIFI-3251

See merge request espressif/esp-idf!11918
2021-01-25 15:52:21 +08:00
aditi_lonkar
da313b691d wifi_provisioning: Fix some memory leak issues by coverity static analyzer. 2021-01-25 03:37:47 +00:00
xiehang
dffbce9813 esp_wifi: Modify ESP_IF_WIFI_AP to WIFI_IF_AP 2021-01-19 11:58:04 +08:00
xiehang
b8a8fe3f54 esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA 2021-01-19 11:55:44 +08:00
Jiang Jiang Jian
8b33695495 Merge branch 'feature/support_esp32c3_s3_ble_5.0_and_bug_fix' into 'master'
Feature/support esp32c3 s3 ble 5.0 and bug fix

See merge request espressif/esp-idf!12007
2021-01-17 17:06:12 +08:00
zwj
7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
Piyush Shah
388f4fd7ef wifi_provisioning: Add a check for number of scanned networks while allocating memory
If number of scanned networks is zero, while getting the list, since we try
to allocate zero bytes, we get a NULL pointer in response. This is considered
as an error and the provisioning worflow breaks there.
Adding a check before allocation resolves the issue.
2021-01-15 05:01:35 +00:00
Mahavir Jain
ccf89cd4bf wifi_provisioning: fix build warnings due to incorrect event handler argument type 2021-01-14 10:47:35 +05:30
Mahavir Jain
533c124280 wifi_provisioning: enable component build for ESP32-C3 2021-01-14 10:47:35 +05:30