mirror of
https://github.com/espressif/esp-idf.git
synced 2025-09-30 19:19:21 +00:00
feat(network/examples): extended LwIP bridge example
Extended LwIP bridge example to support WiFi AP interface and DHCP Server https://github.com/espressif/esp-idf/issues/5697
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -28,14 +28,23 @@ typedef struct esp_netif_br_glue_t* esp_netif_br_glue_handle_t;
|
||||
esp_netif_br_glue_handle_t esp_netif_br_glue_new(void);
|
||||
|
||||
/**
|
||||
* @brief Add a port to the bridge netif glue
|
||||
* @brief Add Ethernet port to the bridge netif glue
|
||||
*
|
||||
* @param netif_br_glue bridge netif glue
|
||||
* @param esp_netif_port port netif
|
||||
* @param esp_netif_port Ethernet port netif
|
||||
* @return - ESP_OK on success
|
||||
*/
|
||||
esp_err_t esp_netif_br_glue_add_port(esp_netif_br_glue_handle_t netif_br_glue, esp_netif_t *esp_netif_port);
|
||||
|
||||
/**
|
||||
* @brief Add WiFi port to the bridge netif glue
|
||||
*
|
||||
* @param netif_br_glue bridge netif glue
|
||||
* @param esp_netif_port WiFi port netif
|
||||
* @return - ESP_OK on success
|
||||
*/
|
||||
esp_err_t esp_netif_br_glue_add_wifi_port(esp_netif_br_glue_handle_t netif_br_glue, esp_netif_t *esp_netif_port);
|
||||
|
||||
/**
|
||||
* @brief Delete netif glue of bridge
|
||||
*
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -104,9 +104,6 @@ extern "C" {
|
||||
}
|
||||
#endif /* CONFIG_PPP_SUPPORT */
|
||||
|
||||
|
||||
|
||||
|
||||
#define ESP_NETIF_INHERENT_DEFAULT_BR() \
|
||||
{ \
|
||||
.flags = (esp_netif_flags_t)(ESP_NETIF_DHCP_CLIENT | ESP_NETIF_DEFAULT_ARP_FLAGS | ESP_NETIF_FLAG_EVENT_IP_MODIFIED | ESP_NETIF_FLAG_IS_BRIDGE), \
|
||||
@@ -114,8 +111,21 @@ extern "C" {
|
||||
ESP_COMPILER_DESIGNATED_INIT_AGGREGATE_TYPE_EMPTY(ip_info) \
|
||||
.get_ip_event = IP_EVENT_ETH_GOT_IP, \
|
||||
.lost_ip_event = IP_EVENT_ETH_LOST_IP, \
|
||||
.if_key = "BR", \
|
||||
.if_desc = "br", \
|
||||
.if_key = "BR0", \
|
||||
.if_desc = "br0", \
|
||||
.route_prio = 70, \
|
||||
.bridge_info = NULL \
|
||||
}
|
||||
|
||||
#define ESP_NETIF_INHERENT_DEFAULT_BR_DHCPS() \
|
||||
{ \
|
||||
.flags = (esp_netif_flags_t)(ESP_NETIF_DHCP_SERVER | ESP_NETIF_FLAG_IS_BRIDGE), \
|
||||
ESP_COMPILER_DESIGNATED_INIT_AGGREGATE_TYPE_EMPTY(mac) \
|
||||
.ip_info = &_g_esp_netif_soft_ap_ip, \
|
||||
.get_ip_event = 0, \
|
||||
.lost_ip_event = 0, \
|
||||
.if_key = "BR1", \
|
||||
.if_desc = "br1", \
|
||||
.route_prio = 70, \
|
||||
.bridge_info = NULL \
|
||||
}
|
||||
|
Reference in New Issue
Block a user