[rbldnsd] $TIMESTAMP - 6 minute lag when using +rel option

Michael Tokarev mjt at tls.msk.ru
Wed Apr 26 23:23:42 MSD 2006


Paul McClure wrote:
> Hi,
> 
> In experimenting with the +rel option with the $TIMESTAMP directive, I am
> finding that expiry is actually occurring 6 minutes after the expected expiry
> time. For example:
> 
>    $TIMESTAMP 20060426140500 +300s
> 
> I expect the above to expire at 20060426141000, but it actually expires at
> 20060426141600 (6 minutes later than expected). The same thing happens if I
> use "+5m" instead of "+300s". I didn't try "h" or "d" -- haha, I'm not patient
> enough.
> 
> Initially, I thought there must be some TTL delay or something like that, but
> I cannot seem to find anything that would cause this. It's a minor thing, but
> has anyone experienced this?

I can't reproduce this.  I've added two printfs into the code to show the
timestamps, and here's what I'm getting (TZ=MSD+0400):

$timestamp 2006:04:26:19:04:00 +300s

stamp=Wed Apr 26 23:04:00 2006
exprs=Wed Apr 26 23:09:00 2006
....
now: Wed Apr 26 23:09:20 2006
rbldnsd: zone x: zone data expired, zone will not be serviced

It's 20-sec-off, but that's expected (+/- 1min), as it checks for exp. time
every minute.

I tried different combinations, it expire correctly +1m or +1h - no
matter what.

If you're motivated enouth you can add some debugging printfs into
rbldnsd.c:check_expires() (to show `now' and zone->z_expires) and
see what's going on there.

BTW, initially I thought about cutting (rounding) all timestamps up
to hour or even a day...  As in "real life" no sane person should
expect expiration in minutes... ;)

/mjt


More information about the rbldnsd mailing list