-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use IPADDR6_INIT() macro to set connecting IPv6 address #14
Conversation
If LwIP is built with LWIP_IPV6_SCOPES, there is a 'zone' member in struct ip6_addr which was not being initialized correctly, leading to routing failures. The tcp_connect() call would return ERR_RTE and we would completely fail to report that error. All the user would see is 'Connecting to MQTT...' over and over again.
@dwmw2 : I took the liberty to cherry-pick your fix in: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would the macro ip_addr_copy_from_ip6
give the same result? Otherwise, go with this.
No, I don't think there's a simpler option. All this converting between |
Yeah, I was hoping that the helper class in ESPHome would fix it all... |
Yeah, that's part of my sadness. Its constructor which takes an After we merge this PR can we have a 2.1.4 release please? I'll then require it from esphome/esphome#7398 |
@jesserockz ready for merge! |
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
And v2.1.4 tag please |
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
This depends on a soon-to-be-released version of LibreTiny containing libretiny-eu/libretiny#292 which will have a version of at least 1.6.1. Previous ESPHome PRs (esphome#7408, esphome#7409, esphome#7410) make it possible to require at least LibreTiny version 1.6.1 in order to enable IPv6. It also bumps the required AsyncTCP version to 2.1.4, which will include esphome/AsyncTCP#14 Closes esphome/feature-requests#2853
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
Needs the IPADDR6_INIT fix from esphome/AsyncTCP#14
If LwIP is built with LWIP_IPV6_SCOPES, there is a 'zone' member in struct ip6_addr which was not being initialized correctly, leading to routing failures.
The tcp_connect() call would return ERR_RTE and we would completely fail to report that error. All the user would see is 'Connecting to MQTT...' over and over again.