Commit Graph

81 Commits

Author SHA1 Message Date
David Cermak
5f6cb31105 lwip: Support IPv6 only mode 2023-02-27 08:53:34 +01:00
Barabas Raffai
005196d86d
Clean up wifi provisioning in the esp_event thread
Signed-off-by: Laukik Hase <laukik.hase@espressif.com>
2023-01-27 15:39:08 +05:30
Laukik Hase
7759079362
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-20 11:01:01 +05:30
sanket.wadekar
bd6a74fcac Changed wifi provisioning scan method
Signed-off-by: sanket.wadekar <sanket.wadekar@espressif.com>
2022-12-20 17:04:30 +05:30
Rahul Tank
97f4130ad2 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 11:26:10 +05:30
harshal.patil
b7de443aaa wifi_provisioning: added wifi-ctrl reprov endpoint 2022-11-01 14:19:01 +05:30
harshal.patil
dacf44dd1d wifi_provisioning: added wifi-ctrl reset endpoint 2022-11-01 14:19:01 +05:30
Harshit Malpani
9b07007efb
wifi_provisioning: fix error codes for wifi connect retry
Closes: https://github.com/espressif/esp-idf/issues/9399
2022-10-12 12:10:21 +05:30
Aditya Patwardhan
6328afdce6 wifi_provisioning/manager.c: Fix small bug introduced in recent MR. 2022-10-07 18:27:08 +05:30
Mahavir Jain
5fffe4bba5 Merge branch 'fix/fix_protocomm_security2_backward_compatibility' into 'master'
wifi_prov: Update behaviour for wifi_prov_mgr_start_provisioning to avoid...

See merge request espressif/esp-idf!20003
2022-10-02 23:08:01 +08:00
Aditya Patwardhan
0e3c630f9a wifi_prov_mgr: Add security version in the proto-ver endpoint. 2022-09-30 16:53:20 +05:30
Aditya Patwardhan
1d8e7fe2d7 wifi_prov: Update behaviour for wifi_prov_mgr_start_provisioning to avoid breaking the usage for sec1 2022-09-30 16:53:06 +05:30
Laukik Hase
9bc1cc706e
wifi_prov_mgr: Add support for re-provisioning
Closes https://github.com/espressif/esp-idf/issues/5978
2022-09-29 10:12:47 +05:30
Mahavir Jain
025a8378ef
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-01 15:24:19 +05:30
Isha Pardikar
b8fc63d658 wifi_provisioning: Fixed prov_ctx_lock of deinit provisioning manager 2022-08-29 16:08:56 +05:30
Aditya Patwardhan
9b05874388 wifi_provisioning: Update API documentation to highlight argument validity while providing sec_params argument. 2022-08-19 14:02:41 +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