Support variety of IPv6 addresses on RDNS-on-cache
IPv6 address has multiple representation formats. The following addresses are the same: "2001:db8::102:304" "2001:0db8:0000:0000:0000:0000:0102:0304" "2001:db8::1.2.3.4" In original design, the RDNS-on-cache can only match IPv6 address with format "2001:db8::102:304", but not with the others. It is because all different representations are converted to a single binary form while they are stored in cache. And of course, it will be a single format if the cached IP address is converted back to text form while doing text comparison. In this commit, the RDNS-on-cache converts query address to binary form and binary compares with cached entry, rather than text comparison. Also, add two test cases. Bug: 131051938 Test: atest resolv_cache_unit_test.cpp#GetHostByAddrFromCache_InvalidArgs atest resolv_cache_unit_test.cpp#GetHostByAddrFromCache Change-Id: I064f4bafca91ad7dbbd9b37ce3c2d05f8d6b954d
Loading
Please register or sign in to comment