On Wed, Aug 27, 2008 at 02:40:45PM +1000, Mark Andrews wrote:
> 
>       This fails to account for DNSSEC verified changes.
>  

You mean you'd still want to allow a DNSSEC capable authority to
weasel out of its promised TTL, even if we don't allow non-DNSSEC
servers to get away with it ? If that's the requirement, then maybe
replacing

        trust <= header->trust

with

        (trust >= dns_trust_secure && trust < header->trust || trust <= 
header->trust)

or

        (trust < header->trust || trust < dns_trust_secure && trust == 
header->trust)

would only address non-DNSSEC servers...

Is that what you had in mind, or could you please clarify otherwise ?

Thanks,
Gabriel

> > diff -NarU5 bind-9.5.0-P1.orig/lib/dns/rbtdb.c bind-9.5.0-P1/lib/dns/rbtdb.c
> > --- bind-9.5.0-P1.orig/lib/dns/rbtdb.c      2008-05-01 14:32:31.000000000 -
> > 0400
> > +++ bind-9.5.0-P1/lib/dns/rbtdb.c   2008-08-26 23:25:45.000000000 -0400
> > @@ -4939,11 +4939,11 @@
> >  
> >             /*
> >              * Trying to add an rdataset with lower trust to a cache DB
> >              * has no effect, provided that the cache data isn't stale.
> >              */
> > -           if (rbtversion == NULL && trust < header->trust &&
> > +           if (rbtversion == NULL && trust <= header->trust &&
> >                 (header->rdh_ttl > now || header_nx)) {
> >                     free_rdataset(rbtdb, rbtdb->common.mctx, newheader);
> >                     if (addedrdataset != NULL)
> >                             bind_rdataset(rbtdb, rbtnode, header, now,
> >                                           addedrdataset);
> > 
> -- 
> Mark Andrews, ISC
> 1 Seymour St., Dundas Valley, NSW 2117, Australia
> PHONE: +61 2 9871 4742                 INTERNET: [EMAIL PROTECTED]

Reply via email to