mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'fix/fix_softap_sta_example_deafult_dns_addr_v5.2' into 'release/v5.2'
fix(wifi): fix softap_sta example default dns addr invaild issue backport for 5.2 See merge request espressif/esp-idf!33132
This commit is contained in:
commit
685c25d3ac
@ -56,9 +56,9 @@ menu "Example Configuration"
|
||||
default ESP_WIFI_AUTH_WPA2_PSK
|
||||
help
|
||||
The weakest authmode to accept in the scan mode.
|
||||
This value defaults to ESP_WIFI_AUTH_WPA2_PSK incase password is present
|
||||
This value defaults to ESP_WIFI_AUTH_WPA2_PSK in case password is present
|
||||
and ESP_WIFI_AUTH_OPEN is used. Please select ESP_WIFI_AUTH_WEP / ESP_WIFI_AUTH_WPA_PSK
|
||||
incase AP is operating in WEP / WPA mode.
|
||||
in case AP is operating in WEP / WPA mode.
|
||||
|
||||
config ESP_WIFI_AUTH_OPEN
|
||||
bool "OPEN"
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Unlicense OR CC0-1.0
|
||||
*/
|
||||
@ -73,6 +73,9 @@
|
||||
#define WIFI_CONNECTED_BIT BIT0
|
||||
#define WIFI_FAIL_BIT BIT1
|
||||
|
||||
/*DHCP server option*/
|
||||
#define DHCPS_OFFER_DNS 0x02
|
||||
|
||||
static const char *TAG_AP = "WiFi SoftAP";
|
||||
static const char *TAG_STA = "WiFi Sta";
|
||||
|
||||
@ -162,6 +165,17 @@ esp_netif_t *wifi_init_sta(void)
|
||||
return esp_netif_sta;
|
||||
}
|
||||
|
||||
void softap_set_dns_addr(esp_netif_t *esp_netif_ap,esp_netif_t *esp_netif_sta)
|
||||
{
|
||||
esp_netif_dns_info_t dns;
|
||||
esp_netif_get_dns_info(esp_netif_sta,ESP_NETIF_DNS_MAIN,&dns);
|
||||
uint8_t dhcps_offer_option = DHCPS_OFFER_DNS;
|
||||
ESP_ERROR_CHECK_WITHOUT_ABORT(esp_netif_dhcps_stop(esp_netif_ap));
|
||||
ESP_ERROR_CHECK(esp_netif_dhcps_option(esp_netif_ap, ESP_NETIF_OP_SET, ESP_NETIF_DOMAIN_NAME_SERVER, &dhcps_offer_option, sizeof(dhcps_offer_option)));
|
||||
ESP_ERROR_CHECK(esp_netif_set_dns_info(esp_netif_ap, ESP_NETIF_DNS_MAIN, &dns));
|
||||
ESP_ERROR_CHECK_WITHOUT_ABORT(esp_netif_dhcps_start(esp_netif_ap));
|
||||
}
|
||||
|
||||
void app_main(void)
|
||||
{
|
||||
ESP_ERROR_CHECK(esp_netif_init());
|
||||
@ -223,6 +237,7 @@ void app_main(void)
|
||||
if (bits & WIFI_CONNECTED_BIT) {
|
||||
ESP_LOGI(TAG_STA, "connected to ap SSID:%s password:%s",
|
||||
EXAMPLE_ESP_WIFI_STA_SSID, EXAMPLE_ESP_WIFI_STA_PASSWD);
|
||||
softap_set_dns_addr(esp_netif_ap,esp_netif_sta);
|
||||
} else if (bits & WIFI_FAIL_BIT) {
|
||||
ESP_LOGI(TAG_STA, "Failed to connect to SSID:%s, password:%s",
|
||||
EXAMPLE_ESP_WIFI_STA_SSID, EXAMPLE_ESP_WIFI_STA_PASSWD);
|
||||
|
Loading…
Reference in New Issue
Block a user