Skip to content

Commit 14d5e5b

Browse files
rtrbtMattiasTF
authored andcommitted
network: Fix compilation without ethernet support.
1 parent a5e03a3 commit 14d5e5b

File tree

3 files changed

+23
-2
lines changed

3 files changed

+23
-2
lines changed

libraries/Network/src/NetworkEvents.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,13 +358,15 @@ int NetworkEvents::waitStatusBits(int bits, uint32_t timeout_ms) {
358358
*/
359359
const char *NetworkEvents::eventName(arduino_event_id_t id) {
360360
switch (id) {
361+
#if CONFIG_ETH_ENABLED
361362
case ARDUINO_EVENT_ETH_START: return "ETH_START";
362363
case ARDUINO_EVENT_ETH_STOP: return "ETH_STOP";
363364
case ARDUINO_EVENT_ETH_CONNECTED: return "ETH_CONNECTED";
364365
case ARDUINO_EVENT_ETH_DISCONNECTED: return "ETH_DISCONNECTED";
365366
case ARDUINO_EVENT_ETH_GOT_IP: return "ETH_GOT_IP";
366367
case ARDUINO_EVENT_ETH_LOST_IP: return "ETH_LOST_IP";
367368
case ARDUINO_EVENT_ETH_GOT_IP6: return "ETH_GOT_IP6";
369+
#endif
368370
case ARDUINO_EVENT_PPP_START: return "PPP_START";
369371
case ARDUINO_EVENT_PPP_STOP: return "PPP_STOP";
370372
case ARDUINO_EVENT_PPP_CONNECTED: return "PPP_CONNECTED";

libraries/Network/src/NetworkEvents.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,15 @@ ESP_EVENT_DECLARE_BASE(ARDUINO_EVENTS);
4242

4343
typedef enum {
4444
ARDUINO_EVENT_NONE = 0,
45+
#if CONFIG_ETH_ENABLED
4546
ARDUINO_EVENT_ETH_START,
4647
ARDUINO_EVENT_ETH_STOP,
4748
ARDUINO_EVENT_ETH_CONNECTED,
4849
ARDUINO_EVENT_ETH_DISCONNECTED,
4950
ARDUINO_EVENT_ETH_GOT_IP,
5051
ARDUINO_EVENT_ETH_LOST_IP,
5152
ARDUINO_EVENT_ETH_GOT_IP6,
53+
#endif
5254
#if SOC_WIFI_SUPPORTED || CONFIG_ESP_WIFI_REMOTE_ENABLED
5355
ARDUINO_EVENT_WIFI_OFF = 100,
5456
ARDUINO_EVENT_WIFI_READY,
@@ -246,7 +248,9 @@ class NetworkEvents {
246248
int clearStatusBits(int bits);
247249

248250
friend class ESP_NetworkInterface;
251+
#if CONFIG_ETH_ENABLED
249252
friend class ETHClass;
253+
#endif
250254
friend class PPPClass;
251255
#if SOC_WIFI_SUPPORTED || CONFIG_ESP_WIFI_REMOTE_ENABLED
252256
friend class STAClass;

libraries/Network/src/NetworkInterface.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,18 @@ extern "C" int lwip_hook_ip6_input(struct pbuf *p, struct netif *inp) {
4949
static void _ip_event_cb(void *arg, esp_event_base_t event_base, int32_t event_id, void *event_data) {
5050
if (event_base == IP_EVENT) {
5151
NetworkInterface *netif = NULL;
52-
if (event_id == IP_EVENT_STA_GOT_IP || event_id == IP_EVENT_ETH_GOT_IP || event_id == IP_EVENT_PPP_GOT_IP) {
52+
if (event_id == IP_EVENT_STA_GOT_IP
53+
#if CONFIG_ETH_ENABLED
54+
|| event_id == IP_EVENT_ETH_GOT_IP
55+
#endif
56+
|| event_id == IP_EVENT_PPP_GOT_IP) {
5357
ip_event_got_ip_t *event = (ip_event_got_ip_t *)event_data;
5458
netif = getNetifByEspNetif(event->esp_netif);
55-
} else if (event_id == IP_EVENT_STA_LOST_IP || event_id == IP_EVENT_PPP_LOST_IP || event_id == IP_EVENT_ETH_LOST_IP) {
59+
} else if (event_id == IP_EVENT_STA_LOST_IP || event_id == IP_EVENT_PPP_LOST_IP
60+
#if CONFIG_ETH_ENABLED
61+
|| event_id == IP_EVENT_ETH_LOST_IP
62+
#endif
63+
) {
5664
ip_event_got_ip_t *event = (ip_event_got_ip_t *)event_data;
5765
netif = getNetifByEspNetif(event->esp_netif);
5866
} else if (event_id == IP_EVENT_GOT_IP6) {
@@ -88,9 +96,12 @@ void NetworkInterface::_onIpEvent(int32_t event_id, void *event_data) {
8896
#endif
8997
if (_interface_id == ESP_NETIF_ID_PPP) {
9098
arduino_event.event_id = ARDUINO_EVENT_PPP_GOT_IP;
99+
#if CONFIG_ETH_ENABLED
91100
} else if (_interface_id >= ESP_NETIF_ID_ETH && _interface_id < ESP_NETIF_ID_MAX) {
92101
arduino_event.event_id = ARDUINO_EVENT_ETH_GOT_IP;
102+
#endif
93103
}
104+
94105
} else if (event_id == _lost_ip_event_id) {
95106
clearStatusBits(ESP_NETIF_HAS_IP_BIT);
96107
#if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_VERBOSE
@@ -103,8 +114,10 @@ void NetworkInterface::_onIpEvent(int32_t event_id, void *event_data) {
103114
#endif
104115
if (_interface_id == ESP_NETIF_ID_PPP) {
105116
arduino_event.event_id = ARDUINO_EVENT_PPP_LOST_IP;
117+
#if CONFIG_ETH_ENABLED
106118
} else if (_interface_id >= ESP_NETIF_ID_ETH && _interface_id < ESP_NETIF_ID_MAX) {
107119
arduino_event.event_id = ARDUINO_EVENT_ETH_LOST_IP;
120+
#endif
108121
}
109122
#if CONFIG_LWIP_IPV6
110123
} else if (event_id == IP_EVENT_GOT_IP6) {
@@ -132,8 +145,10 @@ void NetworkInterface::_onIpEvent(int32_t event_id, void *event_data) {
132145
#endif
133146
if (_interface_id == ESP_NETIF_ID_PPP) {
134147
arduino_event.event_id = ARDUINO_EVENT_PPP_GOT_IP6;
148+
#if CONFIG_ETH_ENABLED
135149
} else if (_interface_id >= ESP_NETIF_ID_ETH && _interface_id < ESP_NETIF_ID_MAX) {
136150
arduino_event.event_id = ARDUINO_EVENT_ETH_GOT_IP6;
151+
#endif
137152
}
138153
#endif /* CONFIG_LWIP_IPV6 */
139154
#if SOC_WIFI_SUPPORTED || CONFIG_ESP_WIFI_REMOTE_ENABLED

0 commit comments

Comments
 (0)