The current DNS caching logic is not aware of the IP address version. If there is a cached address for a query, the caller of dns_get_addr_info() will receive that address, even if it is not the same version as the caller requested. For example: - dns_get_addr_info() is called to resolve an IPv4 address - the DNS client caches the IPv4 address that was received - dns_get_addr_info() is called to resolve an IPv6 address - the DNS client sees that there is a cached IPv4 address for the given query - the DNS client does not check that the cached address is of the requested version (IPv6) - the cached IPv4 address is returned from dns_get_addr_info() This changes the DNS client to check IP address version when searching cached addresses. Signed-off-by: Noah Olson <noah@wavelynx.com> |
||
|---|---|---|
| .. | ||
| src | ||
| CMakeLists.txt | ||
| prj.conf | ||
| testcase.yaml | ||