hesiod and 9.3.0/8.2.3

Mark Andrews Mark_Andrews at isc.org
Wed Oct 6 01:21:45 UTC 2004


> hi,
> 	I'm about to upgrade our master dns server from 8.2.3 to 9.3.0, in
> the process i'm discovering a 'little-problem' with class HS/hesiod:
> zone updates when the slave is 9.3.0 and the master is 8.2.2 fail.
> 
> general: info: zone passwd.NS.CS.HUJI.AC.IL/HS/hesiod: refresh: failure tryin
> g 
> master 132.65.16.8#53 (source 0.0.0.0#0): FORMERR
> 
> if the slave is runing version 9.2.2 it works fine, also between 9.3.0 and 
> 9.2.2
> 
> I could just upgrade our dns to 9.3.0 (and buy a one way ticket to Rio) and
> hope for the best, but i'd like a less drastic path.
> 
> so, is there any simple fix?
> 
> danny

	8.2.3 emits IN additional address records for HS queries.
	In doaddinfo() there is code like the following.
	The "!match(dp, C_IN, T_A) &&" in the if conditional need to
	be removed.

	Mark

ns_req.c:doaddinfo()
                        if (ap->a_type == T_A &&
                            !match(dp, (int)ap->a_class, T_A) &&
                            !match(dp, C_IN, T_A) &&
                            !match(dp, (int)ap->a_class, T_AAAA) &&
                            !match(dp, C_IN, T_AAAA) &&
                            !match(dp, (int)ap->a_class, ns_t_a6) &&
                            !match(dp, C_IN, ns_t_a6)) {
                                continue;
                        }

	needs to become

                        if (ap->a_type == T_A &&
                            !match(dp, (int)ap->a_class, T_A) &&
                            !match(dp, (int)ap->a_class, T_AAAA) &&
                            !match(dp, (int)ap->a_class, ns_t_a6)) {
                                continue;
                        }

	This has already been done to later versions of BIND 8.
--
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: Mark_Andrews at isc.org


More information about the bind-users mailing list