The existing implementation assumed DNS resolv callback will be called just once, but that's not always the case (apparently, for multi-homes hosts or something). So, apply array bounds checking (and do pointer arithmetic only after it, as the C standard otherwise warns of "undefined behavior"). In such a case, the port number wasn't set in each entry too, so rework how it's done. The issues discovered while resolving archive.ubuntu.com. Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org> |
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| getaddrinfo.c | ||
| Kconfig | ||
| sockets.c | ||