From: Mark Andrews Date: Tue, 14 Dec 2010 00:39:59 +0000 (+0000) Subject: 2984. [bug] Don't run MX checks when the target of the MX record ... X-Git-Tag: v9.8.1~168 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=8d8f0b465959b799cb0d29ed694dc50ea7a73202;p=thirdparty%2Fbind9.git 2984. [bug] Don't run MX checks when the target of the MX record is ".". [RT #22645] --- diff --git a/CHANGES b/CHANGES index d3c3d33eadf..8f0d16abeb5 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2984. [bug] Don't run MX checks when the target of the MX record + is ".". [RT #22645] + 2983. [bug] Include "loadkeys" in rndc help output. [RT #22493] --- 9.8.0a1 released --- diff --git a/lib/dns/include/dns/zone.h b/lib/dns/include/dns/zone.h index 842370d04f9..7cfcc001dc5 100644 --- a/lib/dns/include/dns/zone.h +++ b/lib/dns/include/dns/zone.h @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: zone.h,v 1.178 2010/08/16 22:21:07 marka Exp $ */ +/* $Id: zone.h,v 1.179 2010/12/14 00:39:59 marka Exp $ */ #ifndef DNS_ZONE_H #define DNS_ZONE_H 1 @@ -1686,7 +1686,7 @@ void dns_zone_setcheckmx(dns_zone_t *zone, dns_checkmxfunc_t checkmx); /*%< * Set the post load integrity callback function 'checkmx'. - * 'checkmx' will be called if the MX is not within the zone. + * 'checkmx' will be called if the MX TARGET is not within the zone. * * Require: * 'zone' to be a valid zone. @@ -1705,8 +1705,8 @@ dns_zone_setchecksrv(dns_zone_t *zone, dns_checkmxfunc_t checksrv); void dns_zone_setcheckns(dns_zone_t *zone, dns_checknsfunc_t checkns); /*%< - * Set the post load integrity callback function 'checkmx'. - * 'checkmx' will be called if the MX is not within the zone. + * Set the post load integrity callback function 'checkns'. + * 'checkns' will be called if the NS TARGET is not within the zone. * * Require: * 'zone' to be a valid zone. diff --git a/lib/dns/zone.c b/lib/dns/zone.c index 9ca32c01b74..5697953977f 100644 --- a/lib/dns/zone.c +++ b/lib/dns/zone.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: zone.c,v 1.577 2010/12/02 23:22:42 marka Exp $ */ +/* $Id: zone.c,v 1.578 2010/12/14 00:39:59 marka Exp $ */ /*! \file */ @@ -1750,6 +1750,12 @@ zone_check_mx(dns_zone_t *zone, dns_db_t *db, dns_name_t *name, dns_name_t *foundname; int level; + /* + * "." means the services does not exist. + */ + if (dns_name_equal(name, dns_rootname)) + return (ISC_TRUE); + /* * Outside of zone. */