[volunteers] (forw) Tracking ID [15886078] (renewal of domains)

Rick Moen rick at linuxmafia.com
Mon Feb 2 18:04:33 PST 2015

Quoting Scott DuBois (rhcom.linux at gmail.com):

> Send me a list of all the domains that 'matter' with all the relevant
> details and I'll set something up. Hell, I'll set up calendaring in
> multiple places in case one fails. How much advanced notice you want?

I've recently thought of something really useful you could do.  Can you
debug Perl and regular expressions?

In http://linuxmafia.com/pub/linux/network/, you will find a Perl
utility named domain-check .  (00index.txt in that directory is a
catalogue of directory contents.)

The Perl was written by a fellow I knew.  He's not maintained it in a
good long while, and it's no longer able to handle .org or .info
domains, because the whois servers for those TLDs have (again) 
changed their output.

Compare (and ignore the rate-limiting stuff, which is normal):

$ domain-check -w -d=linuxmafia.com      
Processing linuxmafia.com... 

Host                    Registrar
Exp.date/Days left
linuxmafia.com          TUCOWS DOMAINS INC.                 17-jul-2018 / 1259

$ domain-check -w -d=svlug.org
Processing svlug.org... (NOTE: Subsequent ORG queries will be delayed by 20 seconds each due to rate limiting) No expiration date found in 'whois' output. Please report this domain to the author!

Host                    Registrar                           Exp.date/Days left
svlug.org                       *** SKIPPED (missing exp. date) ***

This functionality broke for .org, at some point over the past couple of
years, because the line with expiration date information is now issued in
a wacky format not previously seen, like this:

   Registry Expiry Date: 2016-08-06T04:00:00Z

When I check an example .info domain (dragaera.info), looks like they're
outputting the same wacky format for the expiration date:

   Registry Expiry Date: 2016-10-04T17:50:02Z

So, basically, if you can solve the problem for either TLD, you've
solved it for the other.

I've tried to fix this hole (appending lines for the new regex as a new
stanza under line 470, but it's so far failing, as my Perl-fu isn't good

Can you fix that?  Then, my automated checking will fully work again.

You asked for a list of domains.  Here's a LUG-relevant subset of
linuxmafia.com's /usr/local/share/domains file, which my domain-checking 
cronjob runs through every Sunday.  Notice that .org lines are currently
commented out on account of the regex breakage.

#svlug.net   expired, available for re-registration around March 13, 2015

Since you have shell on linuxmafia.com, you can check the details of the
batch-mode check that runs every Sunday.  It's in /etc/cron.weekly.

In my example command lines above, I include the '-w' switch that causes
domain-check to use /usr/bin/whois instead of the (normally better and
more capable) /usr/bin/jwhois, which otherwise would be used if it's
present on the system.

When I recently did a round of debugging, trying to figure out what was
then wrong with my old domain-check cron job, I noticed that _something_
about /usr/bin/jwhois currently gives the Perl script indigestion, but
that basic functionality returns (except for broken .TLDs) if you use
/usr/bin/whois preferentially.

You might ask:  Why don't I ask domain-check's author, the Perlista, to
fix his script?  He's not particularly available, for reasons I'd rather
not go into here.

> If there we're some kind of list I could refer to of shit that needs to get
> done, maybe myself and others could refer to that and then somehow do a
> notification to the rest of the volunteers that it's been done.

The big thing is for SVLUG finding speakers.  Everything else is small.

More information about the volunteers mailing list