*/
return (ISC_R_NOTFOUND);
}
+
+ /*
+ * Reverse of 192.0.0.170 or 192.0.0.171 maps to ipv4only.arpa.
+ */
+ if ((v[0] == 170 || v[0] == 171) && v[1] == 0 && v[2] == 0 &&
+ v[3] == 192) {
+ return (dns_sdb_putrdata(lookup, dns_rdatatype_ptr, 3600,
+ ipv4only, sizeof(ipv4only)));
+ }
+
return (dns_sdb_putrdata(lookup, dns_rdatatype_cname, 600, rdata,
(unsigned int)len));
}
do_ipv4reverse_lookup(dns_sdblookup_t *lookup) {
isc_result_t result;
- result = dns_sdb_putrdata(lookup, dns_rdatatype_ptr, 0, ipv4only,
+ result = dns_sdb_putrdata(lookup, dns_rdatatype_ptr, 3600, ipv4only,
sizeof(ipv4only));
return (result);
}
if [ $ret != 0 ]; then echo_i "failed"; fi
status=`expr $status + $ret`
+echo_i "checking reverse of dns64 mapped ipv4only.arpa addresses returns ipv4only.arpa ($n)"
+ret=0
+$DIG $DIGOPTS ptr -x 2001:96::192.0.0.170 -b 10.53.0.7 @10.53.0.2 > dig.out.170.ns2.test$n || ret=1
+$DIG $DIGOPTS ptr -x 2001:96::192.0.0.171 -b 10.53.0.7 @10.53.0.2 > dig.out.171.ns2.test$n || ret=1
+grep "ip6\.arpa\..*PTR.*ipv4only\.arpa\." dig.out.170.ns2.test$n >/dev/null || ret=1
+grep "ip6\.arpa\..*PTR.*ipv4only\.arpa\." dig.out.171.ns2.test$n >/dev/null || ret=1
+n=`expr $n + 1`
+if [ $ret != 0 ]; then echo_i "failed"; fi
+status=`expr $status + $ret`
+
echo_i "exit status: $status"
[ $status -eq 0 ] || exit 1