Skip to content

Commit c4e0cbe

Browse files
authored
Merge branch 'master' into bugfix2/ESP8266HTTPClient
2 parents c7a19f5 + 4f27ce1 commit c4e0cbe

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

Diff for: libraries/ESP8266WiFi/src/include/ClientContext.h

+7-1
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,14 @@ class ClientContext
127127
}
128128
}
129129

130-
int connect(CONST ip_addr_t* addr, uint16_t port)
130+
int connect(ip_addr_t* addr, uint16_t port)
131131
{
132+
#if LWIP_IPV6
133+
// Set zone so that link local addresses use the default interface
134+
if (IP_IS_V6(addr) && ip6_addr_lacks_zone(ip_2_ip6(addr), IP6_UNKNOWN)) {
135+
ip6_addr_assign_zone(ip_2_ip6(addr), IP6_UNKNOWN, netif_default);
136+
}
137+
#endif
132138
err_t err = tcp_connect(_pcb, addr, port, &ClientContext::_s_connected);
133139
if (err != ERR_OK) {
134140
return 0;

Diff for: libraries/ESP8266WiFi/src/include/UdpContext.h

+6
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,12 @@ class UdpContext
114114
{
115115
_pcb->remote_ip = addr;
116116
_pcb->remote_port = port;
117+
#if LWIP_IPV6
118+
// Set zone so that link local addresses use the default interface
119+
if (IP_IS_V6(&_pcb->remote_ip) && ip6_addr_lacks_zone(ip_2_ip6(&_pcb->remote_ip), IP6_UNKNOWN)) {
120+
ip6_addr_assign_zone(ip_2_ip6(&_pcb->remote_ip), IP6_UNKNOWN, netif_default);
121+
}
122+
#endif
117123
return true;
118124
}
119125

0 commit comments

Comments
 (0)