Commit Graph

671 Commits

Author SHA1 Message Date
Nachiket Kukade
2efe4b791d esp_wifi: Update wifi lib
Fix issue where set_config API uses stale NVS config if PMF disable
API was used before
2022-06-27 11:37:59 +05:30
Jiang Jiang Jian
203c3e6e1c Merge branch 'bugfix/fix_esp32c2_owe_support' into 'master'
esp_wifi: fix esp32c2 owe support

See merge request espressif/esp-idf!18610
2022-06-22 15:46:46 +08:00
Jiang Jiang Jian
0ee5cb2f4c Merge branch 'bugfix/wifi_condition_linker_mapping' into 'master'
WiFi: Fix linking of WiFi functions dependent on PM_ENABLE

See merge request espressif/esp-idf!18597
2022-06-22 10:57:05 +08:00
morris
ac98d89ced Merge branch 'bugfix/fix_esp32c2_does_not_support_csi_issue' into 'master'
Bugfix/fix esp32c2 does not support csi issue

Closes IDF-4216

See merge request espressif/esp-idf!18595
2022-06-21 22:04:21 +08:00
chenjianxing
d4d3d65898 esp_wifi: fix esp32c2 owe support 2022-06-21 20:58:10 +08:00
Darian Leung
0c895466ef wifi: Fix linking of WiFi functions dependent on PM_ENABLE
The following functions are only defined when CONFIG_PM_ENABLE is defined:

- wifi_apb80m_request()
- wifi_apb80m_release()

This commit makes their linker script mapping statements also dependent on CONFIG_PM_ENABLE
thus fixing some linker errors when CONFIG_PM_ENABLE is disabled.
2022-06-21 00:12:08 +08:00
muhaidong
b48b9beace esp_wifi: esp32c2 does not support csi. 2022-06-20 21:47:51 +08:00
Shreyas Sheth
591c7a496c esp_wifi: WPA3 SAE H2E support for station 2022-06-20 18:51:11 +05:30
Jiang Jiang Jian
02b9aafa96 Merge branch 'bugfix/fix_some_wifi_issue' into 'master'
esp_wifi: add multiphy support for c2 and fix ftm with ps issue

Closes WIFI-4468, WIFI-4464, WIFI-4467, WIFI-4463, WIFI-4456, WIFI-4459, WIFI-4460, WIFI-4474, and WIFI-4505

See merge request espressif/esp-idf!18480
2022-06-17 20:00:24 +08:00
Jack
cb0dd5cc75 fix the bug that some memory leaked in phy after wifi/ble deinit 2022-06-16 20:42:20 +08:00
muhaidong
820bfe9cd8 esp_wifi: fix ftm with ps and add multiphy support for c2
1. sleep: fix potential issue when PSRAM enable.
2. esp32c2: add multiphy support.
3. ftm: workaround for ftm with ps.
4. add regdomain max channel of ap.
5. update total scan time.
6. update min chan when country policy is auto.
7. check whether country schan and nchan is valid.
2022-06-16 20:11:22 +08:00
Shyamal Khachane
6d55761f60 OWE support for station 2022-06-15 17:20:24 +05:30
Li Shuai
7efa8b855a sleep: beacon loss and noise check timer optimize for wifi power save 2022-06-09 15:52:05 +08:00
morris
aa3ddbc3c6 Merge branch 'test/enable_c2_target_tests' into 'master'
ci: enable target tests for ESP32-C2

Closes IDF-4989

See merge request espressif/esp-idf!18182
2022-06-03 16:41:24 +08:00
David Čermák
46e599c56d Merge branch 'feature/lwip_rework_patches' into 'master'
lw-IP: Reworked patches

Closes IDFGH-6197

See merge request espressif/esp-idf!17388
2022-06-03 15:26:55 +08:00
Mu Hai Dong
2905223889 Merge branch 'bugfix/fix_country_policy_issue' into 'master'
esp_wifi: fix country policy issue

Closes WIFI-3908, WIFI-4287, and WIFI-4279

See merge request espressif/esp-idf!17366
2022-06-02 20:01:07 +08:00
muhaidong
06fb6b2e32 esp_wifi: fix country policy issue
1. Fix not update phy according to country code.
    2. Update regdomain max channel according to country info from nvs and or AP.
    3. Change nvs default country from "CN" to "01".
    4. Channel 14 is allowed only 11b mode.
    5. Remove csa when switch channel from/to 14 channel.
    6. Update phy mode nvs when softap channel from 14 to other.
    7. Fix the bug that check whether channel parameter is valid.

Docs: change default country from "CN" to "01"
2022-06-02 16:15:48 +08:00
Michael (XIAO Xufeng)
6a8aed12ee ci: partially enable ut tests for esp32c2
Disabled test cases are tracked in:

 IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131

- test_fatfs: IDF-5136

- test_pm: IDF-5053

- test_cache_mmu: IDF-5138

- test_partitions: IDF-5137

- test_vfs: IDF-5139

- test_freertos: IDF-5140

- test_wpa_supplicant: IDF-5046

- test_mbedtls: IDF-5141

- test_pthread: IDF-5142

- test_protocomm: IDF-5143

- test_lightsleep: IDF-5053

- test_taskwdt: IDF-5055

- test_tcp_transport: IDF-5144

- test_app_update: IDF-5145

- test_timer: IDF-5052

- test_spi: IDF-5146

- test_rtc_clk: IDF-5060

- test_heap: IDF-5167

ci: fixed issues for tests of libgcc, ets_timer, newlib

test_pm: support on C2
2022-06-02 14:23:35 +08:00
David Cermak
7efcb5e625 lwip: Add missing null-checks, rename to vanilla-lwip 2022-06-01 20:38:40 +02:00
David Cermak
0e71a325de lwip/wifi: Improve Rx throughput on the wifi defaults (sta+ap) 2022-05-31 15:23:06 +02:00
KonstantinKondrashov
ac4c7d99fe dport: Move DPORT workaround to G0 2022-05-31 13:44:18 +08:00
Jiang Jiang Jian
8efa4d64e0 Merge branch 'feature/add_task_wrappers' into 'master'
wpa_supplicant: Add osi layer for FreeRTOS calls

Closes WIFI-2996

See merge request espressif/esp-idf!11734
2022-05-30 10:29:50 +08:00
Jack
47909a76c0 esp_wifi: make int types consistent for esp32c2 2022-05-29 18:59:13 +08:00
Anton Maklakov
282c9ab1e1 esp_wifi: make int types consistent 2022-05-29 18:42:09 +08:00
Jack
74e0096472 relax memory leak threshold for some wifi test case 2022-05-29 10:38:54 +08:00
Jack
7a8b63869f deinit BB MAC back memory when they are not used 2022-05-29 00:13:32 +08:00
Jessy Chen
7b9b448041 esp_wifi: optimize wifi kconfig 2022-05-28 08:52:55 +00:00
liuning
e0decf4839 esp_wifi: fully support connectionless traffic with ps and coex 2022-05-28 08:52:55 +00:00
Jessy Chen
0ae391ef07 esp_wifi: enable FTM for esp32c2 & fix pre-commit check 2022-05-28 08:52:55 +00:00
Jack
58d04eb203 esp_wifi: update esp32c2 wifi rom & lib 2022-05-28 08:52:55 +00:00
zhangyanjiao
e979e9701f esp_wifi: bringup esp32c2 wifi 2022-05-28 08:52:55 +00:00
Kapil Gupta
0cdad0a002 wpa_supplicant: Add wrappers for FreeRTOS APIs 2022-05-26 15:23:21 +05:30
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
liuning
9d7479eda3 esp_wifi: fix no null data after WiFi waking up. 2022-05-17 21:45:55 +08:00
Nachiket Kukade
2aa156d8b5 esp_wifi: Update wifi libs
1. Fix issues caused during SoftAP mode change
2. Improve SoftAP PMF logic for triggering of SA Query and cleanup
2022-05-09 16:15:57 +05:30
Kapil Gupta
805b5c9115 Merge branch 'feature/11r_changes' into 'master'
esp_wifi: Add support for FT psk

Closes WIFI-2160

See merge request espressif/esp-idf!16754
2022-05-05 14:30:37 +08:00
Ivan Grokhotkov
47659be5b8
build system: remove lwip from common requirements
lwip was added to common requirements list to provide "sys/socket.h"
header to all components without additional requirements specified.

However, lwip pulls in a lot of dependencies on other components.
This commit removes lwip from common requirements to reduce the number
of components in G1-only apps.

To compensate for this removal, the following changes are made:
- newlib (which is a common requirement) has a public dependency on
  lwip if lwip is present in the build. This ensures that sys/socket.h
  is available as long as lwip component is included into the build.
- lwip is now a public requirement of esp-tls since esp_tls.h includes
  sys/socket.h header.
- lwip is now a public requirement o esp_http_client because
  sys/socket.h is included from esp_http_client.h
- lwip is now a private requirement of esp_wifi for "smartconfig_ack"
- lwip is now a private requirement of mqtt for socket functions
- lwip is now a public requirement of tcp_transport because
  esp_transport_tcp.h includes sys/socket.h header.
- mbedtls checks if lwip component is present in the build. If yes,
  net_sockets.c is added to the build, along with the dependency on
  lwip. Previously lwip was a public requirement of mbedtls
  unconditionally.

system/g1_components test app is updated to reflect the changes

Default public dependencies of a component before and after this
change, except common requirements:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)
- vfs (public dependency of lwip)
- esp_wifi (public dependency of lwip)
- esp_event (public dependency of esp_wifi)
- esp_netif (public dependency of esp_event)
- esp_eth (public dependency of esp_netif)
- esp_phy (public dependency of esp_wifi)

After:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)

Altogether, the following components have been always added as
public requirements to all other components, and are not added now
([breaking-change]):

- lwip
- vfs
- esp_wifi
- esp_event
- esp_netif
- esp_eth
- esp_phy

Application components now need to explicitly declare dependencies on
these components.
2022-05-02 20:47:17 +02:00
kapil.gupta
3d5ca7ee6e wpa_supplicant: Add support for FT psk 2022-05-01 16:16:51 +05:30
Jiang Jiang Jian
4adab0b707 Merge branch 'bugfix/default_ssid_not_set' into 'master'
esp_wifi: Fix for default ssid not set.

Closes IDFGH-7141

See merge request espressif/esp-idf!17910
2022-05-01 17:35:44 +08:00
Ivan Grokhotkov
3175e472ba Merge branch 'bugfix/freertos_esp_timer_deps' into 'master'
esp_timer: remove from freertos public requirements

See merge request espressif/esp-idf!17818
2022-04-27 04:13:25 +08:00
aditi_lonkar
9fb0708782 esp_wifi: Fix for default ap ssid not set. 2022-04-26 17:55:14 +05:30
Jiang Jiang Jian
e966af7237 Merge branch 'docs/update_wifi_api_doc' into 'master'
DOC: update wifi api docs

Closes DOC-2542, DOC-2672, DOC-743, and WIFI-3748

See merge request espressif/esp-idf!17552
2022-04-26 17:12:50 +08:00
Jiang Jiang Jian
43f769dcb4 Merge branch 'contrib/github_pr_8779' into 'master'
esp_wifi: fix clearing default wifi netif procedure(GitHub PR)

Closes IDFGH-7179

See merge request espressif/esp-idf!17788
2022-04-26 11:14:39 +08:00
Ivan Grokhotkov
708e99497b
global: add dependency on esp_timer component and include esp_timer.h
Some components were including esp_timer.h without declaring a
dependency on esp_timer component. This used to work due to a
transitive public dependency on esp_timer from freertos component.
Add explicit dependencies where needed.
Also some source files were using esp_timer functions without
including the header file. This used to work because esp_timer.h was
included from freertos port header file. This commit adds esp_timer.h
includes where needed.
2022-04-25 18:39:23 +02:00
Jack
4169ca1a2b esp_wifi: update wifi lib 2022-04-25 00:00:51 +08:00
zhangyanjiao
e3b8f59867 update wifi api docs 2022-04-24 23:55:54 +08:00
Jack
59af19b502 esp_wifi: update wifi lib 2022-04-24 23:22:19 +08:00
Jessy Chen
8c3a8ea603 esp_wifi: update esp_wifi_internal_set_fix_rate usage 2022-04-24 21:20:54 +08:00
Jessy Chen
5cb82df4dc esp_wifi: update noise floor unit 2022-04-24 21:20:54 +08:00
xueyunfei
26fa8260b1 Doc:update wifi api docs
* Add documents related to espnow config rate

* Optimization set dns server api description
2022-04-24 21:20:54 +08:00
Jack
63af85f7e7 esp_wifi: fix espnow recv unencrypted packets issue
Closes https://github.com/espressif/esp-idf/issues/8577
Closes https://github.com/espressif/esp-idf/issues/8574
2022-04-24 20:23:12 +08:00
muhaidong
8ef2ed8269 esp_wifi: fix the bug that check whether bssid is zero mac 2022-04-24 20:09:07 +08:00
Jiang Jiang Jian
5203b876db Merge branch 'bugfix/pmf_disable_api' into 'master'
Add API to disable PMF configuration

See merge request espressif/esp-idf!17685
2022-04-22 10:29:41 +08:00
Krzysztof Lewandowski
e72151055b esp_wifi: fix clearing default wifi netif procedure
Prior to this change "esp_wifi_clear_default_wifi_driver_and_handlers"
will not remove netif pointer from table when both AP and STA interfaces were
created and destroying default wifi interfaces is done in unfortunate
order. As a result there is dangling pointer left and it may cause crash in
later code (i.e. when esp_wifi_stop() is called).
2022-04-15 05:22:24 -04:00
songruo
60bb5c913d clk_tree: prework of introducing clk subsystem control
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
   upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
   Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +08:00
Michael (XIAO Xufeng)
b585d0afd0 Merge branch 'bugfix/phy_regi2c_critical_section' into 'master'
esp_phy: use spinlock to avoid regi2c access conflicts

See merge request espressif/esp-idf!17298
2022-04-06 09:30:03 +08:00
Nachiket Kukade
2982910075 esp_wifi: Update wifi libs
PMF capable flag in wifi_pmf_config_t is internally enabled,
for devices to be able to connect to WPA3 only AP's without
additional user configuration. But PMF may need to be disabled
for debug purposes or to avoid PMF issues on AP side. Add API
esp_wifi_disable_pmf_config to support this.
2022-04-05 17:44:42 +05:30
Song Ruo Jing
e13bb580c7 Merge branch 'refactor/gpio_unit_test' into 'master'
gpio: Clean up unit tests and enable ci ut on some previously disabled test cases

Closes IDF-4620

See merge request espressif/esp-idf!17417
2022-04-01 18:38:19 +08:00
Michael (XIAO Xufeng)
f3adbf9953 esp_phy: use spinlock to avoid regi2c access conflicts 2022-04-01 10:49:29 +08:00
songruojing
bdb5b11b39 unit test: move unit-test_app test_utils_task_delete API to be a utils API (unity_utils_task_delete) in unity component 2022-03-30 15:11:08 +08:00
morris
29e9b5b46a hw_support: move periph_ctrl from driver to hw_support 2022-03-29 11:53:31 +08:00
Nachiket Kukade
01c49082c4 esp_wifi: Update wifi lib
1. In scan, correctly identify AP's with mixed key mgmt
2. Fix PMF Required setting not working in SoftAP config

Closes https://github.com/espressif/esp-idf/issues/8426
2022-03-17 13:04:58 +05:30
ChenJianxing
764b606d9d esp_wifi: add ht40 support for 80211_tx & espnow 2022-03-14 21:23:48 +08:00
David Cermak
7db0f0feb1 esp_mesh: Document that hard-coded non-root nodes do not need TCP/IP 2022-03-10 08:19:44 +01:00
David Cermak
795b7ed993 esp_netif: Remove tcpip_adapter compatibility layer 2022-03-10 08:19:43 +01:00
Sagar Bijwe
6501eff7f5 Remove legacy system event framework. 2022-03-09 15:53:45 +05:30
Jiang Jiang Jian
4778c249e6 Merge branch 'Optimize/null_pointer_judgment_of_eb' into 'master'
esp_netif:optimize the null pointer judgment of eb

Closes IDF-4576

See merge request espressif/esp-idf!16934
2022-03-09 11:38:24 +08:00
Sudeep Mohanty
a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Jiang Jiang Jian
1068c7720b Merge branch 'bugfix/ignore_pmf_capable_flag' into 'master'
Always connect Station in PMF mode if possible

Closes WIFI-4320

See merge request espressif/esp-idf!17023
2022-03-03 19:34:36 +08:00
Marius Vikhammer
bb88338118 system: move kconfig options out of target component
Moved the following kconfig options out of the target component:
 * ESP32_X_BROWNOUT_* -> esp_system
 * ESP32_X_DEBUG_OCDAWARE -> esp_system
 * APP_NO_BLOBS -> build type (main kconfig)
2022-03-02 01:22:26 +00:00
xueyunfei
473cc00667 optimize the null pointer judgment of eb 2022-02-23 16:01:19 +08:00
Nachiket Kukade
7ed8fdac59 esp_wifi: Always connect Station in PMF mode if possible
While using esp_wifi_set_config, flag pmf_capable defaults to 0.
Users may not bother to enable it, which prevents connection to a
WPA3 AP. Or the AP may reset into WPA3 mode failing the re-connection.
To ensure better security, deprecate the pmf_capable flag and set it to
true internally.
2022-02-21 11:31:56 +05:30
Nachiket Kukade
af51170b99 esp_wifi: Update wifi lib
1. Fix assoc comeback causing invalid state
2. Better cleanup in some FTM failure cases
2022-02-14 19:42:50 +05:30
Darian
61639fe1ec Merge branch 'refactor/freertos_remove_legacy_types' into 'master'
FreeRTOS: Remove usage of legacy data types

Closes IDF-4566

See merge request espressif/esp-idf!16680
2022-02-10 04:57:00 +00:00
Jiang Jiang Jian
cca2234619 Merge branch 'feature/pmf_support_for_softAP' into 'master'
esp_wifi: Add pmf support for softAP.

Closes WIFI-1353

See merge request espressif/esp-idf!14906
2022-02-10 04:17:00 +00:00
Darian Leung
57fd78f5ba freertos: Remove legacy data types
This commit removes the usage of all legacy FreeRTOS data types that
are exposed via configENABLE_BACKWARD_COMPATIBILITY. Legacy types can
still be used by enabling CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY.
2022-02-09 23:05:45 +08:00
aditi_lonkar
c3a661c0fd esp_wifi: Add pmf support for softAP. 2022-02-09 18:58:37 +05:30
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +08:00
laokaiyao
cf049e15ed esp8684: rename target to esp32c2 2022-01-19 11:08:57 +08:00
Yuan Jian Min
9485873669 Merge branch 'bugfix/fix_smartconfig_setopt_fail' into 'master'
smartconfig: Fix smartconfig set socket option fail

Closes IDFGH-6539

See merge request espressif/esp-idf!16634
2022-01-12 06:16:47 +00:00
likunqiao
8b3cddf09a esp_phy: move lib_printf.c to esp_phy
* fix the issue when esp32h2 target using phy_printf and rtc_printf
2022-01-10 17:51:52 +08:00
yuanjm
2e31779931 smartconfig: Fix smartconfig set socket option fail
Closes https://github.com/espressif/esp-idf/issues/8189
2022-01-07 20:05:21 +08:00
Jiang Jiang Jian
cde8b94a65 Merge branch 'bugfix/dpp_no_ip_issue' into 'master'
Fix STA not getting IP after DPP issue

Closes IDFGH-5958

See merge request espressif/esp-idf!15578
2022-01-06 15:16:47 +00:00
Jiang Jiang Jian
477cf09f45 Merge branch 'bugfix/ci_check_blobs' into 'master'
ci: improve checks for Wi-Fi/PHY libraries

See merge request espressif/esp-idf!16625
2022-01-05 09:26:42 +00:00
morris
ce2a220098 Merge branch 'refactor/make_adc2_wifi_private' into 'master'
clean up deprecated and private header files for driver and esp_hw_support component

See merge request espressif/esp-idf!16605
2022-01-05 05:42:42 +00:00
Nachiket Kukade
02a415d494 esp_wifi: Update wifi lib
Fix STA not getting IP after DPP

Closes https://github.com/espressif/esp-idf/issues/7646
2022-01-04 16:24:45 +05:30
morris
090b4aa1f3 adc: make adc2_wifi share resource private 2022-01-04 13:59:24 +08:00
Ivan Grokhotkov
3049ac6dbb ci: improve checks for Wi-Fi/PHYlibraries
- add missing Wi-Fi header MD5 checks for esp32c3, esp32s3
- check PHY libraries for references to ets_printf, in addition to
  checking Wi-Fi libraries. This used to happen until libphy.a was
  moved into a separate submodule.

Reported in https://github.com/espressif/esp-phy-lib/issues/3
2022-01-04 00:30:55 +01:00
Nachiket Kukade
f38144a689 esp_wifi: Miscellaneous FTM bugfixes
1. Update wifi libs with bugfixes for corner cases
2. Avoid ASSERT for scan failure in FTM example

Closes https://github.com/espressif/esp-idf/issues/8127
2021-12-30 12:22:42 +05:30
Kapil Gupta
0336584f3e esp_wifi: Refactor key install code 2021-12-23 21:31:31 +08:00
Marius Vikhammer
82325f6037 docs: update docs to be able to build with esp8684 2021-12-20 10:32:49 +08:00
Kapil Gupta
8d329951c3 Merge branch 'bugfix/static_analysis_fixes' into 'master'
ESP_WIFI: Remove static analysis warnings

See merge request espressif/esp-idf!15871
2021-12-13 12:57:03 +00:00
Jiang Jiang Jian
e3137693c1 Merge branch 'bugfix/fix_rx_fragment_error_issue' into 'master'
esp_wifi: fix fragment issue and PMF compatible for faulty APs

Closes WIFI-4218

See merge request espressif/esp-idf!16321
2021-12-13 12:32:33 +00:00
Kapil Gupta
d3542495ab ESP_WIFI: Remove static analysis warnings 2021-12-08 17:32:22 +05:30
NikLeberg
317a11cb05 allow for minimal scope of wifi_init_config_t
With this change one can use the default config as a variable with minimal scope: esp_wifi_init(&(wifi_init_config_t)WIFI_INIT_CONFIG_DEFAULT())
2021-12-08 19:39:41 +08:00
Shang Zhou
fffed159f8 docs: Update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file 2021-12-08 19:39:41 +08:00
muhaidong
832123a5e1 esp_wifi: fix fragment plt loss and update header file
1. fix(pp): fix fragment plt loss when 2td pn compare with 1th pn
2. pmf allow keyindex in big endian format to workaround faulty APs
3. docs: update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file
4. allow for minimal scope of wifi_init_config_t
2021-12-08 19:39:14 +08:00
Jakob Hasse
9ee974e626 Merge branch 'refactor/test_utils_memory_check' into 'master'
memory leak detection functions now in separate file

See merge request espressif/esp-idf!16011
2021-12-08 09:15:20 +00:00
Jakob Hasse
16514f93f0 refactor (test_utils)!: separate file for memory check functions
Memory check (leaks and heap tracing) functions for unit tests
now have a separate file now and are renamed for more consistency.

BREAKING CHANGE: renamed memory check function names which may be used
                 in unit tests outside IDF.
2021-12-08 11:06:00 +08:00
muhaidong
f9b2cb6f11 esp_wifi:compute packet length use lldesc length instead of rx_ctl sig_len in sniffer mode 2021-12-01 21:07:32 +08:00