Here's a fix of the reverse lookup issues with IRIX' dns(7P) resolver and IPv6. The problem was introduced with the deprecation of IP6.INT. (according to rfc1886) as a reverse lookup domain and the introduction of IP6.ARPA. - IRIX does still use IP6.INT., which is considered wrong in a production environment (prefix 2001::/16).
Tonight I conducted some research on the topic and the result is a quick fix (at least until SGI provides a real patch). In the strings output on /var/ns/lib/libns_dns.so the wrong IP6.INT. reference could easily be spotted -
and the same string happens to be aligned with a dozen of '\x00' bytes, so modifying it to "ip6.arpa." is easy. I spent several more hours with elfdump and dis to make sure that no function does use the string with nasty fixed lengths and/or offsets... Looks like the change is safe and does even work
.
Tonight I conducted some research on the topic and the result is a quick fix (at least until SGI provides a real patch). In the strings output on /var/ns/lib/libns_dns.so the wrong IP6.INT. reference could easily be spotted -
Code: Select all
primordium 398% strings /var/ns/lib/libns_dns.so | grep ip6
0123456789abcdefip6.int.
primordium 399%
LAMMEN GORTHAUR