diffstat for dyndns-2010.1011+git8070c97 dyndns-2010.0301+gitdd160bd

 ChangeLog                                            |   51 -
 INSTALL                                              |   15 
 Makefile                                             |    7 
 README                                               |   25 
 bin/dyndns.1                                         |   71 -
 bin/dyndns.pl                                        |  183 +--
 debian/changelog                                     |   17 
 debian/compat                                        |    2 
 debian/control                                       |    2 
 debian/patches/debian-changes-2010.0301+gitdd160bd-2 |  897 +++++++++++++++++++
 debian/patches/series                                |    1 
 debian/rules                                         |   33 
 doc/manual/index.html                                |   84 -
 doc/manual/index.txt                                 |   59 -
 14 files changed, 1133 insertions(+), 314 deletions(-)

diff -Nru dyndns-2010.1011+git8070c97/bin/dyndns.1 dyndns-2010.0301+gitdd160bd/bin/dyndns.1
--- dyndns-2010.1011+git8070c97/bin/dyndns.1	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/bin/dyndns.1	2010-03-01 15:25:47.000000000 +0200
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07)
+.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.13)
 .\"
 .\" Standard preamble:
 .\" ========================================================================
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "DYNDNS 1"
-.TH DYNDNS 1 "2010-10-11" "perl v5.10.1" "Perl Dynamic DNS Update Client"
+.TH DYNDNS 1 "2010-03-01" "perl v5.10.1" "Perl Dynamic DNS Update Client"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
@@ -348,8 +348,6 @@
 \&    /var/log/            (system\*(Aqs standard)
 \&    $HOME/tmp or $HOME   if process is not running under root
 .Ve
-.Sp
-This options is by default activated if \fB\-\-file\fR is not in used.
 .IP "\fB\-\-proxy \s-1HOST\s0\fR" 4
 .IX Item "--proxy HOST"
 Use \s-1HOST\s0 as outgoing \s-1HTTP\s0 proxy.
@@ -699,13 +697,6 @@
 Print version and contact information.
 .SH "EXAMPLES"
 .IX Header "EXAMPLES"
-To update \s-1IP\s0 address periodically, use \fIcrontab\fR\|(5) entry. The update
-will happen only if \s-1IP\s0 has changed since last time:
-.PP
-.Vb 1
-\&    0 0\-23 * * * perl <absolute path>/dyndns <options>
-.Ve
-.PP
 To check current \s-1IP\s0 address:
 .PP
 .Vb 3
@@ -910,24 +901,13 @@
 .PP
 If program is run with Windows Activestate Perl, the log file is stored to
 file \f(CW\*(C`C:/syslog.txt\*(C'\fR.
-.SH "EXIT STATUS"
-.IX Header "EXIT STATUS"
-Not defined.
-.SH "DEPENDENCIES"
-.IX Header "DEPENDENCIES"
-Uses standard Perl modules.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIsyslog\fR\|(3), Debian package \fIddclient\fR\|(1)
 .PP
-HTTP::Headers
-HTTP::Request::Common
-LWP::UserAgent
-LWP::Simple
-Sys::Syslog
-.SH "STANDARDS"
-.IX Header "STANDARDS"
-The client specification is at
-https://www.dyndns.com/developers/specs/
-.SH "BUGS AND LIMITATIONS"
-.IX Header "BUGS AND LIMITATIONS"
+See other dyndns.org clients at http://clients.dyndns.org/
+.SH "BUGS"
+.IX Header "BUGS"
 .SS "Cygwin syslog"
 .IX Subsection "Cygwin syslog"
 There is no syslog daemon in Cygwin. The Cygwin \s-1POSIX\s0 emulation layer takes
@@ -946,22 +926,37 @@
 .IX Subsection "About providers hnorg and noip"
 The program is primarily developed and maintained to support dyndns.org.
 The other providers haven't been tested since 2003.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\fIsyslog\fR\|(3),
-Debian package \fIddclient\fR\|(1)
-.PP
-See other client software at http://clients.dyndns.org
 .SH "AVAILABILITY"
 .IX Header "AVAILABILITY"
 http://freshmeat.net/projects/perl\-dyndns
+.SH "STANDARDS"
+.IX Header "STANDARDS"
+The client specification is at
+https://www.dyndns.com/developers/specs/
+.SH "SCRIPT CATEGORIES"
+.IX Header "SCRIPT CATEGORIES"
+\&\f(CW\*(C`CPAN/Administrative\*(C'\fR
+\&\f(CW\*(C`CPAN/Networking\*(C'\fR
+.SH "PREREQUISITES"
+.IX Header "PREREQUISITES"
+HTTP::Headers
+HTTP::Request::Common
+LWP::UserAgent
+LWP::Simple
+Sys::Syslog
+.SH "COREQUISITES"
+.IX Header "COREQUISITES"
+None.
+.SH "OSNAMES"
+.IX Header "OSNAMES"
+\&\f(CW\*(C`any\*(C'\fR
 .SH "AUTHOR"
 .IX Header "AUTHOR"
-This program is free software; you can redistribute and/or modify
-program under the terms of \s-1GNU\s0 General Public license either version 2
-of the License, or (at your option) any later version.
+Copyright (C) 1999\-2009 Jari Aalto. All rights reserved. This program
+is free software; you can redistribute and/or modify program under the
+terms of \s-1GNU\s0 General Public license v2 or later.
 .PP
-The documentation may be distributed subject to the terms and
+This documentation may be distributed subject to the terms and
 conditions set forth in \s-1GNU\s0 General Public License v2 or later (\s-1GNU\s0
 \&\s-1GPL\s0); or, at your option, distributed under the terms of \s-1GNU\s0 Free
 Documentation License version 1.2 or later (\s-1GNU\s0 \s-1FDL\s0).
diff -Nru dyndns-2010.1011+git8070c97/bin/dyndns.pl dyndns-2010.0301+gitdd160bd/bin/dyndns.pl
--- dyndns-2010.1011+git8070c97/bin/dyndns.pl	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/bin/dyndns.pl	2010-03-01 15:25:47.000000000 +0200
@@ -62,27 +62,6 @@
 
 #   Standard perl modules
 
-# ****************************************************************************
-#
-#   Globals
-#
-# ****************************************************************************
-
-use vars qw ( $VERSION );
-
-#   This is for use of Makefile.PL and ExtUtils::MakeMaker
-#
-#   The following variable is updated by Emacs setup whenever
-#   this file is saved.
-
-$VERSION = '2010.1011.1220';
-
-# ****************************************************************************
-#
-#   Standard perl modules
-#
-# ****************************************************************************
-
 use strict;
 use English;
 use File::Basename;
@@ -90,25 +69,7 @@
 use autouse 'Pod::Text'     => qw( pod2text );
 use autouse 'Pod::Html'     => qw( pod2html );
 
-IMPORT: # This is just a syntactic sugar: actually no-op
-{
-    #   Import following environment variables
-
-    use Env;
-    use vars qw
-    (
-        $PATH
-        $TMPDIR
-        $SYSTEMROOT
-        $WINDIR
-    );
-}
-
-# ****************************************************************************
-#
-#   Modules from CPAN
-#
-# ****************************************************************************
+#   External CPAN moudules
 
 my @REQUIRE_FATAL =   # Without these the program won't work
 (
@@ -126,6 +87,29 @@
 #  Will be set at runtime
 my @FEATURE_LIST_MODULES;
 
+IMPORT: # This is just a syntactic sugar: actually no-op
+{
+    #   Import following environment variables
+
+    use Env;
+    use vars qw
+    (
+        $PATH
+        $TMPDIR
+        $SYSTEMROOT
+        $WINDIR
+    );
+
+    use vars qw ( $VERSION );
+
+    #   This is for use of Makefile.PL and ExtUtils::MakeMaker
+    #
+    #   The following variable is updated by Emacs setup whenever
+    #   this file is saved.
+
+    $VERSION = '2010.0301.1321';
+}
+
 # }}}
 # {{{ Initialize
 
@@ -642,8 +626,6 @@
     /var/log/            (system's standard)
     $HOME/tmp or $HOME   if process is not running under root
 
-This options is by default activated if B<--file> is not in used.
-
 =item B<--proxy HOST>
 
 Use HOST as outgoing HTTP proxy.
@@ -989,11 +971,6 @@
 
 =head1 EXAMPLES
 
-To update IP address periodically, use crontab(5) entry. The update
-will happen only if IP has changed since last time:
-
-    0 0-23 * * * perl <absolute path>/dyndns <options>
-
 To check current IP address:
 
   dyndns --query [--urlping...]
@@ -1186,26 +1163,13 @@
 If program is run with Windows Activestate Perl, the log file is stored to
 file C<C:/syslog.txt>.
 
-=head1 EXIT STATUS
-
-Not defined.
-
-=head1 DEPENDENCIES
-
-Uses standard Perl modules.
-
-HTTP::Headers
-HTTP::Request::Common
-LWP::UserAgent
-LWP::Simple
-Sys::Syslog
+=head1 SEE ALSO
 
-=head1 STANDARDS
+syslog(3), Debian package ddclient(1)
 
-The client specification is at
-https://www.dyndns.com/developers/specs/
+See other dyndns.org clients at http://clients.dyndns.org/
 
-=head1 BUGS AND LIMITATIONS
+=head1 BUGS
 
 =head2 Cygwin syslog
 
@@ -1228,24 +1192,43 @@
 The program is primarily developed and maintained to support dyndns.org.
 The other providers haven't been tested since 2003.
 
-=head1 SEE ALSO
+=head1 AVAILABILITY
 
-syslog(3),
-Debian package ddclient(1)
+http://freshmeat.net/projects/perl-dyndns
 
-See other client software at http://clients.dyndns.org
+=head1 STANDARDS
 
-=head1 AVAILABILITY
+The client specification is at
+https://www.dyndns.com/developers/specs/
 
-http://freshmeat.net/projects/perl-dyndns
+=head1 SCRIPT CATEGORIES
+
+C<CPAN/Administrative>
+C<CPAN/Networking>
+
+=head1 PREREQUISITES
+
+HTTP::Headers
+HTTP::Request::Common
+LWP::UserAgent
+LWP::Simple
+Sys::Syslog
+
+=head1 COREQUISITES
+
+None.
+
+=head1 OSNAMES
+
+C<any>
 
 =head1 AUTHOR
 
-This program is free software; you can redistribute and/or modify
-program under the terms of GNU General Public license either version 2
-of the License, or (at your option) any later version.
+Copyright (C) 1999-2009 Jari Aalto. All rights reserved. This program
+is free software; you can redistribute and/or modify program under the
+terms of GNU General Public license v2 or later.
 
-The documentation may be distributed subject to the terms and
+This documentation may be distributed subject to the terms and
 conditions set forth in GNU General Public License v2 or later (GNU
 GPL); or, at your option, distributed under the terms of GNU Free
 Documentation License version 1.2 or later (GNU FDL).
@@ -1264,8 +1247,8 @@
     }
     elsif ( $type eq -man )
     {
-	eval { require Pod::Man; 1 }
-	    or die "$id: Cannot generate Man: $EVAL_ERROR";
+        eval "use Pod::Man";
+        $EVAL_ERROR  and  die "$id: Cannot generate Man $EVAL_ERROR";
 
         my %options;
         $options{center} = 'Perl Dynamic DNS Update Client';
@@ -1275,7 +1258,7 @@
     }
     else
     {
-	system "pod2text $PROGRAM_NAME";
+        pod2text $PROGRAM_NAME;
     }
 
     if ( defined $msg )
@@ -1316,12 +1299,6 @@
     Version() . " $AUTHOR $LICENSE $URL"
 }
 
-sub VersionPrint ()
-{
-    print( VersionInfo() . "\n");
-    exit 0;
-}
-
 # ************************************************************** &args *******
 #
 #   DESCRIPTION
@@ -1467,6 +1444,7 @@
     Getopt::Long::config( qw
     (
         no_ignore_case
+        require_order
     ));
 
     GetOptions      # Getopt::Long
@@ -1524,7 +1502,7 @@
         , "wildcard"            => \$wildcard
     );
 
-    $version                and VersionPrint();
+    $version                and print( VersionInfo() . "\n"), exit;
 
     $help                   and Help();
     $helpHTML               and Help undef, -html;
@@ -1546,11 +1524,6 @@
     $OPT_MX       = 'YES'   if defined $mx;
     $OPT_OFFLINE  = 'YES'   if defined $offline;
 
-    unless ( $OPT_IP_FILE  or  $ipfileDefault )
-    {
-	$ipfileDefault = 'on';
-    }
-
     if ( $ipfileDefault )
     {
         $OPT_IP_FILE = SystemLogDir();
@@ -2718,7 +2691,7 @@
 
 sub StringMatch ( $ $ )
 {
-    my $id = "$LIB.StringMatch";
+    my $id = "StringMatch";
     my ($itemRef, $searchRef  ) =  @ARG;
 
     unless ( @$itemRef )
@@ -3976,7 +3949,7 @@
     #       collisions:46 txqueuelen:100
     #       Interrupt:11 Base address:0xec00
 
-    # my $re = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
+    # my $re = 'inet[ \t]+addr:[ \t]*(\d[\d.]+)';
 
     my $modifier  = '(?sm)';
     my $inet      = 'inet[ \t]+';
@@ -3984,10 +3957,8 @@
 
     my @regexpList;
     push @regexpList, $modifier . $inet . "addr:" . $base;
-    push @regexpList, $modifier . $inet . '[^\r\n:]+:' . $base;
     push @regexpList, $modifier . $inet . $base;
 
-    $debug  and  print "$id: CMD [$cmd]\n";
 
     my $ip;
 
@@ -4039,9 +4010,6 @@
 
     if ( $OPT_HTTP_PING )
     {
-
-	$debug  and  print "$id: OPT_HTTP_PING\n";
-
         $ret = HttpPing -url    => $OPT_HTTP_PING
                       , -regexp => $OPT_HTTP_PING_REGEXP
                       , -login  => $OPT_HTTP_PING_LOGIN
@@ -4050,12 +4018,10 @@
     }
     elsif ( $OPT_HTTP_PING_DYNDNS )
     {
-	$debug  and  print "$id: OPT_HTTP_PING_DYNDNS\n";
         $ret = HttpPingDyndns();
     }
     elsif ( $OPT_HTTP_PING_LINKSYS )
     {
-	$debug  and  print "$id: OPT_HTTP_PING_LINKSYS $OPT_HTTP_PING_LINKSYS\n";
 
 	local $ARG = $OPT_HTTP_PING_LINKSYS;
 
@@ -4076,12 +4042,10 @@
     }
     elsif ( $WIN32 )
     {
-	$debug  and  print "$id: WIN32\n";
         $ret = GetIpAddressWin32();
     }
     elsif ( -x "/sbin/ifconfig"  or  -x "/usr/sbin/ifconfig")
     {
-	$debug  and  print "$id: ifconfig\n";
         $ret = GetIpAddressIfconfig();
     }
     else
@@ -5242,25 +5206,9 @@
     }
 
     my (@response, $ip);
-
-    # Copy from GetIpAddressIfconfig()
-    my $modifier  = '(?sm)';
-    my $inet      = 'inet[ \t]+';
-    my $base      = '[ \t]*(\d[\d.]+)';
-
-    my $linuxDefaultRegexp = $modifier . $inet . "addr:" . $base;
-
+    my $linuxDefaultRegexp = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
     my $regexp;
 
-    # locale: pt_BR
-    @response = split /\r?\n/, '
-eth0      Link encap:Ethernet  Endereço de HW 00:15:c5:1b:e1:de
-          inet end.: 189.29.36.92  Bcast:189.29.39.255  Masc:255.255.248.0';
-
-    $regexp =  $modifier . $inet . '[^\r\n:]+:' . $base;
-
-    $ip = IpAddressGenericParser $regexp, @response;
-
     @response = split /\r?\n/, '
 eth0      Link encap:Ethernet  HWaddr 00:10:5A:64:8D:32
             inet addr:12.246.164.15  Bcast:255.255.255.255  Mask:255.255.255.0
@@ -6572,7 +6520,6 @@
 
 # }}}
 
-# TestDriver; die;
 # TestDriverLinksysBEFW11S4; die;
 # TestDriverLinksysBEFW11S4v4; die;
 # TestDriverLinksysWRT54GL; die;
diff -Nru dyndns-2010.1011+git8070c97/ChangeLog dyndns-2010.0301+gitdd160bd/ChangeLog
--- dyndns-2010.1011+git8070c97/ChangeLog	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/ChangeLog	2010-03-01 15:25:47.000000000 +0200
@@ -1,54 +1,3 @@
-2010-10-11 Mon  Jari Aalto  <jari.aalto@cante.net>
-
-	* Makefile (PERL): New variable.
-
-	* bin/dyndns.pl (HELP): Document that --file-default is
-	default setting unless --file is given.
-	(HandleCommandLineArgsMain): Activate ipfileDefault
-	unless OPT_IP_FILE is not set. Debian bug #593255.
-	(GetIpAddressIfconfig): Improve regexp to work with pt_BR
-	locale. Debian Bug #593253.
-	(Help): rewrite 'Pod::Man module load.
-
-2010-06-14 Mon  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (StringMatch): Add $LIB to $id variable.
-
-2010-05-21 Fri  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (InitializeModules): (HELP): Remove duplicate
-	section AVAILABILITY.
-
-2010-05-01 Sat  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (HandleCommandLineArgs): Remove
-	"require_order" from Getopt::Long::config().
-
-2010-04-15 Thu  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (Help): Fix Perl 5.10 bug in pod2text().
-	(Help): rewrite eval Pod::Man call.
-
-2010-03-13 Sat  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (top level): rearrange globals, use
-        comamnds.
-        (Version*): new.
-
-2010-03-12 Sat  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl:
-	(top level): English qw( -no_match_vars )
-
-2010-03-02 Tue  Jari Aalto  <jari.aalto@cante.net>
-
-	* bin/dyndns.pl (Help::EXAMPLES): Add crontab(5) entry.
-
-	* Makefile (dist-git): Run 'test'.
-	(dist-snap): Run 'test'.
-
-	* INSTALL (INSTALL): Correct crontab explanation.
-
 2010-03-01 Mon  Jari Aalto  <jari.aalto@cante.net>
 
 	* INSTALL: Update requirements and manual install.
diff -Nru dyndns-2010.1011+git8070c97/debian/changelog dyndns-2010.0301+gitdd160bd/debian/changelog
--- dyndns-2010.1011+git8070c97/debian/changelog	2010-10-11 15:24:21.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/debian/changelog	2010-10-22 09:16:04.000000000 +0300
@@ -1,15 +1,16 @@
-dyndns (2010.1011+git8070c97-1) unstable; urgency=low
+dyndns (2010.0301+gitdd160bd-2) unstable; urgency=low
 
-  * New upstream release
-    - Set --file-default as default (Closes: #593255).
-    - Fix IP detection in pt_BR locale (Closes: #593253).
+  * bin/dyndns.pl
+    - Patch changes from upstream release2010.1011+git8070c97
+      + Set --file-default as default (Closes: #593255).
+      + Fix IP detection in pt_BR locale (Closes: #593253).
   * debian/control
-    - (Build-Depends): update to debhelper 8.
     - (Standards-Version): Update to 3.9.1.
-  * debian/rules
-    - Remove unnecessary code.
+  * Makefile
+    - Patch changes from upstream release2010.1011+git8070c97
+      + Fix manual page generation.
 
- -- Jari Aalto <jari.aalto@cante.net>  Mon, 11 Oct 2010 15:24:21 +0300
+ -- Jari Aalto <jari.aalto@cante.net>  Fri, 22 Oct 2010 09:14:02 +0300
 
 dyndns (2010.0301+gitdd160bd-1) unstable; urgency=low
 
diff -Nru dyndns-2010.1011+git8070c97/debian/compat dyndns-2010.0301+gitdd160bd/debian/compat
--- dyndns-2010.1011+git8070c97/debian/compat	2010-10-11 14:57:15.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/debian/compat	2010-10-22 09:09:06.000000000 +0300
@@ -1 +1 @@
-8
+7
diff -Nru dyndns-2010.1011+git8070c97/debian/control dyndns-2010.0301+gitdd160bd/debian/control
--- dyndns-2010.1011+git8070c97/debian/control	2010-10-11 14:57:09.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/debian/control	2010-10-22 09:16:04.000000000 +0300
@@ -2,7 +2,7 @@
 Section: web
 Priority: optional
 Maintainer: Jari Aalto <jari.aalto@cante.net>
-Build-Depends: debhelper (>= 8)
+Build-Depends: debhelper (>= 7.1)
 Standards-Version: 3.9.1
 Vcs-Browser: http://git.debian.org/?p=collab-maint/dyndns.git
 Vcs-Git: git://git.debian.org/git/collab-maint/dyndns.git
diff -Nru dyndns-2010.1011+git8070c97/debian/patches/debian-changes-2010.0301+gitdd160bd-2 dyndns-2010.0301+gitdd160bd/debian/patches/debian-changes-2010.0301+gitdd160bd-2
--- dyndns-2010.1011+git8070c97/debian/patches/debian-changes-2010.0301+gitdd160bd-2	1970-01-01 02:00:00.000000000 +0200
+++ dyndns-2010.0301+gitdd160bd/debian/patches/debian-changes-2010.0301+gitdd160bd-2	2010-10-22 09:18:18.000000000 +0300
@@ -0,0 +1,897 @@
+Description: Upstream changes introduced in version 2010.0301+gitdd160bd-2
+ This patch has been created by dpkg-source during the package build.
+ Here's the last changelog entry, hopefully it gives details on why
+ those changes were made:
+ .
+ dyndns (2010.0301+gitdd160bd-2) unstable; urgency=low
+ .
+   * bin/dyndns.pl
+     - Patch changes from upstream release2010.1011+git8070c97
+       + Set --file-default as default (Closes: #593255).
+       + Fix IP detection in pt_BR locale (Closes: #593253).
+   * debian/control
+     - (Standards-Version): Update to 3.9.1.
+   * Makefile
+     - Patch changes from upstream release2010.1011+git8070c97
+       + Fix manual page generation.
+ .
+ The person named in the Author field signed this changelog entry.
+Author: Jari Aalto <jari.aalto@cante.net>
+Bug-Debian: http://bugs.debian.org/593253
+Bug-Debian: http://bugs.debian.org/593255
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+Origin: <vendor|upstream|other>, <url of original patch>
+Bug: <url in upstream bugtracker>
+Bug-Debian: http://bugs.debian.org/<bugnumber>
+Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
+Forwarded: <no|not-needed|url proving that it has been forwarded>
+Reviewed-By: <name and email of someone who approved the patch>
+Last-Update: <YYYY-MM-DD>
+
+--- dyndns-2010.0301+gitdd160bd.orig/Makefile
++++ dyndns-2010.0301+gitdd160bd/Makefile
+@@ -76,6 +76,7 @@ DATE		= `date +"%Y.%m%d"`
+ VERSION		= $(DATE)
+ RELEASE		= $(PACKAGE)-$(VERSION)
+ 
++PERL		= perl
+ BIN		= $(PACKAGE)
+ PL_SCRIPT	= bin/$(BIN).pl
+ 
+@@ -104,7 +105,7 @@ distclean: clean
+ 
+ realclean: clean
+ 
+-dist-git:
++dist-git: test
+ 	rm -f $(DIST_DIR)/$(RELEASE)*
+ 
+ 	git archive --format=tar --prefix=$(RELEASE)/ master | \
+@@ -117,8 +118,8 @@ dist-git:
+ 
+ # The "gt" is maintainer's program frontend to Git
+ # Rule: dist-snap - [maintainer] release snapshot from Git repository
+-dist-snap:
+-	echo gt tar -q -z -p $(PACKAGE) -c -D master
++dist-snap: test
++	@echo gt tar -q -z -p $(PACKAGE) -c -D master
+ 
+ # Rule: dist - [maintainer] release from Git repository
+ dist: dist-git
+--- /dev/null
++++ dyndns-2010.0301+gitdd160bd/t.p
+@@ -0,0 +1,355 @@
++--- a/bin/dyndns.pl
+++++ b/bin/dyndns.pl
++@@ -62,6 +62,27 @@
++ 
++ #   Standard perl modules
++ 
+++# ****************************************************************************
+++#
+++#   Globals
+++#
+++# ****************************************************************************
+++
+++use vars qw ( $VERSION );
+++
+++#   This is for use of Makefile.PL and ExtUtils::MakeMaker
+++#
+++#   The following variable is updated by Emacs setup whenever
+++#   this file is saved.
+++
+++$VERSION = '2010.1011.1220';
+++
+++# ****************************************************************************
+++#
+++#   Standard perl modules
+++#
+++# ****************************************************************************
+++
++ use strict;
++ use English;
++ use File::Basename;
++@@ -69,7 +90,25 @@ use Getopt::Long;
++ use autouse 'Pod::Text'     => qw( pod2text );
++ use autouse 'Pod::Html'     => qw( pod2html );
++ 
++-#   External CPAN moudules
+++IMPORT: # This is just a syntactic sugar: actually no-op
+++{
+++    #   Import following environment variables
+++
+++    use Env;
+++    use vars qw
+++    (
+++        $PATH
+++        $TMPDIR
+++        $SYSTEMROOT
+++        $WINDIR
+++    );
+++}
+++
+++# ****************************************************************************
+++#
+++#   Modules from CPAN
+++#
+++# ****************************************************************************
++ 
++ my @REQUIRE_FATAL =   # Without these the program won't work
++ (
++@@ -87,29 +126,6 @@ my @REQUIRE_OPTIONAL =
++ #  Will be set at runtime
++ my @FEATURE_LIST_MODULES;
++ 
++-IMPORT: # This is just a syntactic sugar: actually no-op
++-{
++-    #   Import following environment variables
++-
++-    use Env;
++-    use vars qw
++-    (
++-        $PATH
++-        $TMPDIR
++-        $SYSTEMROOT
++-        $WINDIR
++-    );
++-
++-    use vars qw ( $VERSION );
++-
++-    #   This is for use of Makefile.PL and ExtUtils::MakeMaker
++-    #
++-    #   The following variable is updated by Emacs setup whenever
++-    #   this file is saved.
++-
++-    $VERSION = '2010.0301.1321';
++-}
++-
++ # }}}
++ # {{{ Initialize
++ 
++@@ -626,6 +642,8 @@ Windows, %WINDIR% is used. Under Linux the PREFIXes searched are
++     /var/log/            (system's standard)
++     $HOME/tmp or $HOME   if process is not running under root
++ 
+++This options is by default activated if B<--file> is not in used.
+++
++ =item B<--proxy HOST>
++ 
++ Use HOST as outgoing HTTP proxy.
++@@ -971,6 +989,11 @@ Print version and contact information.
++ 
++ =head1 EXAMPLES
++ 
+++To update IP address periodically, use crontab(5) entry. The update
+++will happen only if IP has changed since last time:
+++
+++    0 0-23 * * * perl <absolute path>/dyndns <options>
+++
++ To check current IP address:
++ 
++   dyndns --query [--urlping...]
++@@ -1163,13 +1186,26 @@ and copied one directorory up in order to use option B<--config
++ If program is run with Windows Activestate Perl, the log file is stored to
++ file C<C:/syslog.txt>.
++ 
++-=head1 SEE ALSO
+++=head1 EXIT STATUS
+++
+++Not defined.
+++
+++=head1 DEPENDENCIES
+++
+++Uses standard Perl modules.
+++
+++HTTP::Headers
+++HTTP::Request::Common
+++LWP::UserAgent
+++LWP::Simple
+++Sys::Syslog
++ 
++-syslog(3), Debian package ddclient(1)
+++=head1 STANDARDS
++ 
++-See other dyndns.org clients at http://clients.dyndns.org/
+++The client specification is at
+++https://www.dyndns.com/developers/specs/
++ 
++-=head1 BUGS
+++=head1 BUGS AND LIMITATIONS
++ 
++ =head2 Cygwin syslog
++ 
++@@ -1192,43 +1228,24 @@ you find bugs or need new features.
++ The program is primarily developed and maintained to support dyndns.org.
++ The other providers haven't been tested since 2003.
++ 
++-=head1 AVAILABILITY
++-
++-http://freshmeat.net/projects/perl-dyndns
++-
++-=head1 STANDARDS
++-
++-The client specification is at
++-https://www.dyndns.com/developers/specs/
++-
++-=head1 SCRIPT CATEGORIES
++-
++-C<CPAN/Administrative>
++-C<CPAN/Networking>
++-
++-=head1 PREREQUISITES
++-
++-HTTP::Headers
++-HTTP::Request::Common
++-LWP::UserAgent
++-LWP::Simple
++-Sys::Syslog
+++=head1 SEE ALSO
++ 
++-=head1 COREQUISITES
+++syslog(3),
+++Debian package ddclient(1)
++ 
++-None.
+++See other client software at http://clients.dyndns.org
++ 
++-=head1 OSNAMES
+++=head1 AVAILABILITY
++ 
++-C<any>
+++http://freshmeat.net/projects/perl-dyndns
++ 
++ =head1 AUTHOR
++ 
++-Copyright (C) 1999-2009 Jari Aalto. All rights reserved. This program
++-is free software; you can redistribute and/or modify program under the
++-terms of GNU General Public license v2 or later.
+++This program is free software; you can redistribute and/or modify
+++program under the terms of GNU General Public license either version 2
+++of the License, or (at your option) any later version.
++ 
++-This documentation may be distributed subject to the terms and
+++The documentation may be distributed subject to the terms and
++ conditions set forth in GNU General Public License v2 or later (GNU
++ GPL); or, at your option, distributed under the terms of GNU Free
++ Documentation License version 1.2 or later (GNU FDL).
++@@ -1247,8 +1264,8 @@ sub Help ( ; $ $ )
++     }
++     elsif ( $type eq -man )
++     {
++-        eval "use Pod::Man";
++-        $EVAL_ERROR  and  die "$id: Cannot generate Man $EVAL_ERROR";
+++	eval { require Pod::Man; 1 }
+++	    or die "$id: Cannot generate Man: $EVAL_ERROR";
++ 
++         my %options;
++         $options{center} = 'Perl Dynamic DNS Update Client';
++@@ -1258,7 +1275,7 @@ sub Help ( ; $ $ )
++     }
++     else
++     {
++-        pod2text $PROGRAM_NAME;
+++	system "pod2text $PROGRAM_NAME";
++     }
++ 
++     if ( defined $msg )
++@@ -1299,6 +1316,12 @@ sub VersionInfo ()
++     Version() . " $AUTHOR $LICENSE $URL"
++ }
++ 
+++sub VersionPrint ()
+++{
+++    print( VersionInfo() . "\n");
+++    exit 0;
+++}
+++
++ # ************************************************************** &args *******
++ #
++ #   DESCRIPTION
++@@ -1444,7 +1467,6 @@ sub HandleCommandLineArgsMain ()
++     Getopt::Long::config( qw
++     (
++         no_ignore_case
++-        require_order
++     ));
++ 
++     GetOptions      # Getopt::Long
++@@ -1502,7 +1524,7 @@ sub HandleCommandLineArgsMain ()
++         , "wildcard"            => \$wildcard
++     );
++ 
++-    $version                and print( VersionInfo() . "\n"), exit;
+++    $version                and VersionPrint();
++ 
++     $help                   and Help();
++     $helpHTML               and Help undef, -html;
++@@ -1524,6 +1546,11 @@ sub HandleCommandLineArgsMain ()
++     $OPT_MX       = 'YES'   if defined $mx;
++     $OPT_OFFLINE  = 'YES'   if defined $offline;
++ 
+++    unless ( $OPT_IP_FILE  or  $ipfileDefault )
+++    {
+++	$ipfileDefault = 'on';
+++    }
+++
++     if ( $ipfileDefault )
++     {
++         $OPT_IP_FILE = SystemLogDir();
++@@ -2691,7 +2718,7 @@ sub IPvalidate ($)
++ 
++ sub StringMatch ( $ $ )
++ {
++-    my $id = "StringMatch";
+++    my $id = "$LIB.StringMatch";
++     my ($itemRef, $searchRef  ) =  @ARG;
++ 
++     unless ( @$itemRef )
++@@ -3949,7 +3976,7 @@ sub GetIpAddressIfconfig ()
++     #       collisions:46 txqueuelen:100
++     #       Interrupt:11 Base address:0xec00
++ 
++-    # my $re = 'inet[ \t]+addr:[ \t]*(\d[\d.]+)';
+++    # my $re = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
++ 
++     my $modifier  = '(?sm)';
++     my $inet      = 'inet[ \t]+';
++@@ -3957,8 +3984,10 @@ sub GetIpAddressIfconfig ()
++ 
++     my @regexpList;
++     push @regexpList, $modifier . $inet . "addr:" . $base;
+++    push @regexpList, $modifier . $inet . '[^\r\n:]+:' . $base;
++     push @regexpList, $modifier . $inet . $base;
++ 
+++    $debug  and  print "$id: CMD [$cmd]\n";
++ 
++     my $ip;
++ 
++@@ -4010,6 +4039,9 @@ sub GetIpAddress ()
++ 
++     if ( $OPT_HTTP_PING )
++     {
+++
+++	$debug  and  print "$id: OPT_HTTP_PING\n";
+++
++         $ret = HttpPing -url    => $OPT_HTTP_PING
++                       , -regexp => $OPT_HTTP_PING_REGEXP
++                       , -login  => $OPT_HTTP_PING_LOGIN
++@@ -4018,10 +4050,12 @@ sub GetIpAddress ()
++     }
++     elsif ( $OPT_HTTP_PING_DYNDNS )
++     {
+++	$debug  and  print "$id: OPT_HTTP_PING_DYNDNS\n";
++         $ret = HttpPingDyndns();
++     }
++     elsif ( $OPT_HTTP_PING_LINKSYS )
++     {
+++	$debug  and  print "$id: OPT_HTTP_PING_LINKSYS $OPT_HTTP_PING_LINKSYS\n";
++ 
++ 	local $ARG = $OPT_HTTP_PING_LINKSYS;
++ 
++@@ -4042,10 +4076,12 @@ sub GetIpAddress ()
++     }
++     elsif ( $WIN32 )
++     {
+++	$debug  and  print "$id: WIN32\n";
++         $ret = GetIpAddressWin32();
++     }
++     elsif ( -x "/sbin/ifconfig"  or  -x "/usr/sbin/ifconfig")
++     {
+++	$debug  and  print "$id: ifconfig\n";
++         $ret = GetIpAddressIfconfig();
++     }
++     else
++@@ -5206,9 +5242,25 @@ sub TestDriver ()
++     }
++ 
++     my (@response, $ip);
++-    my $linuxDefaultRegexp = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
+++
+++    # Copy from GetIpAddressIfconfig()
+++    my $modifier  = '(?sm)';
+++    my $inet      = 'inet[ \t]+';
+++    my $base      = '[ \t]*(\d[\d.]+)';
+++
+++    my $linuxDefaultRegexp = $modifier . $inet . "addr:" . $base;
+++
++     my $regexp;
++ 
+++    # locale: pt_BR
+++    @response = split /\r?\n/, '
+++eth0      Link encap:Ethernet  Endereço de HW 00:15:c5:1b:e1:de
+++          inet end.: 189.29.36.92  Bcast:189.29.39.255  Masc:255.255.248.0';
+++
+++    $regexp =  $modifier . $inet . '[^\r\n:]+:' . $base;
+++
+++    $ip = IpAddressGenericParser $regexp, @response;
+++
++     @response = split /\r?\n/, '
++ eth0      Link encap:Ethernet  HWaddr 00:10:5A:64:8D:32
++             inet addr:12.246.164.15  Bcast:255.255.255.255  Mask:255.255.255.0
++@@ -6520,6 +6572,7 @@ sub Main ()
++ 
++ # }}}
++ 
+++# TestDriver; die;
++ # TestDriverLinksysBEFW11S4; die;
++ # TestDriverLinksysBEFW11S4v4; die;
++ # TestDriverLinksysWRT54GL; die;
+--- dyndns-2010.0301+gitdd160bd.orig/bin/dyndns.1
++++ dyndns-2010.0301+gitdd160bd/bin/dyndns.1
+@@ -1,4 +1,4 @@
+-.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.13)
++.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07)
+ .\"
+ .\" Standard preamble:
+ .\" ========================================================================
+@@ -124,7 +124,7 @@
+ .\" ========================================================================
+ .\"
+ .IX Title "DYNDNS 1"
+-.TH DYNDNS 1 "2010-03-01" "perl v5.10.1" "Perl Dynamic DNS Update Client"
++.TH DYNDNS 1 "2010-10-22" "perl v5.10.1" "Perl Dynamic DNS Update Client"
+ .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+ .\" way too many mistakes in technical documents.
+ .if n .ad l
+@@ -348,6 +348,8 @@ Windows, \f(CW%WINDIR\fR% is used. Under
+ \&    /var/log/            (system\*(Aqs standard)
+ \&    $HOME/tmp or $HOME   if process is not running under root
+ .Ve
++.Sp
++This options is by default activated if \fB\-\-file\fR is not in used.
+ .IP "\fB\-\-proxy \s-1HOST\s0\fR" 4
+ .IX Item "--proxy HOST"
+ Use \s-1HOST\s0 as outgoing \s-1HTTP\s0 proxy.
+@@ -697,6 +699,13 @@ Print informational messages.
+ Print version and contact information.
+ .SH "EXAMPLES"
+ .IX Header "EXAMPLES"
++To update \s-1IP\s0 address periodically, use \fIcrontab\fR\|(5) entry. The update
++will happen only if \s-1IP\s0 has changed since last time:
++.PP
++.Vb 1
++\&    0 0\-23 * * * perl <absolute path>/dyndns <options>
++.Ve
++.PP
+ To check current \s-1IP\s0 address:
+ .PP
+ .Vb 3
+@@ -901,13 +910,24 @@ and copied one directorory up in order t
+ .PP
+ If program is run with Windows Activestate Perl, the log file is stored to
+ file \f(CW\*(C`C:/syslog.txt\*(C'\fR.
+-.SH "SEE ALSO"
+-.IX Header "SEE ALSO"
+-\&\fIsyslog\fR\|(3), Debian package \fIddclient\fR\|(1)
++.SH "EXIT STATUS"
++.IX Header "EXIT STATUS"
++Not defined.
++.SH "DEPENDENCIES"
++.IX Header "DEPENDENCIES"
++Uses standard Perl modules.
+ .PP
+-See other dyndns.org clients at http://clients.dyndns.org/
+-.SH "BUGS"
+-.IX Header "BUGS"
++HTTP::Headers
++HTTP::Request::Common
++LWP::UserAgent
++LWP::Simple
++Sys::Syslog
++.SH "STANDARDS"
++.IX Header "STANDARDS"
++The client specification is at
++https://www.dyndns.com/developers/specs/
++.SH "BUGS AND LIMITATIONS"
++.IX Header "BUGS AND LIMITATIONS"
+ .SS "Cygwin syslog"
+ .IX Subsection "Cygwin syslog"
+ There is no syslog daemon in Cygwin. The Cygwin \s-1POSIX\s0 emulation layer takes
+@@ -926,37 +946,22 @@ you find bugs or need new features.
+ .IX Subsection "About providers hnorg and noip"
+ The program is primarily developed and maintained to support dyndns.org.
+ The other providers haven't been tested since 2003.
++.SH "SEE ALSO"
++.IX Header "SEE ALSO"
++\&\fIsyslog\fR\|(3),
++Debian package \fIddclient\fR\|(1)
++.PP
++See other client software at http://clients.dyndns.org
+ .SH "AVAILABILITY"
+ .IX Header "AVAILABILITY"
+ http://freshmeat.net/projects/perl\-dyndns
+-.SH "STANDARDS"
+-.IX Header "STANDARDS"
+-The client specification is at
+-https://www.dyndns.com/developers/specs/
+-.SH "SCRIPT CATEGORIES"
+-.IX Header "SCRIPT CATEGORIES"
+-\&\f(CW\*(C`CPAN/Administrative\*(C'\fR
+-\&\f(CW\*(C`CPAN/Networking\*(C'\fR
+-.SH "PREREQUISITES"
+-.IX Header "PREREQUISITES"
+-HTTP::Headers
+-HTTP::Request::Common
+-LWP::UserAgent
+-LWP::Simple
+-Sys::Syslog
+-.SH "COREQUISITES"
+-.IX Header "COREQUISITES"
+-None.
+-.SH "OSNAMES"
+-.IX Header "OSNAMES"
+-\&\f(CW\*(C`any\*(C'\fR
+ .SH "AUTHOR"
+ .IX Header "AUTHOR"
+-Copyright (C) 1999\-2009 Jari Aalto. All rights reserved. This program
+-is free software; you can redistribute and/or modify program under the
+-terms of \s-1GNU\s0 General Public license v2 or later.
++This program is free software; you can redistribute and/or modify
++program under the terms of \s-1GNU\s0 General Public license either version 2
++of the License, or (at your option) any later version.
+ .PP
+-This documentation may be distributed subject to the terms and
++The documentation may be distributed subject to the terms and
+ conditions set forth in \s-1GNU\s0 General Public License v2 or later (\s-1GNU\s0
+ \&\s-1GPL\s0); or, at your option, distributed under the terms of \s-1GNU\s0 Free
+ Documentation License version 1.2 or later (\s-1GNU\s0 \s-1FDL\s0).
+--- dyndns-2010.0301+gitdd160bd.orig/bin/dyndns.pl
++++ dyndns-2010.0301+gitdd160bd/bin/dyndns.pl
+@@ -62,6 +62,27 @@
+ 
+ #   Standard perl modules
+ 
++# ****************************************************************************
++#
++#   Globals
++#
++# ****************************************************************************
++
++use vars qw ( $VERSION );
++
++#   This is for use of Makefile.PL and ExtUtils::MakeMaker
++#
++#   The following variable is updated by Emacs setup whenever
++#   this file is saved.
++
++$VERSION = '2010.1011.1220';
++
++# ****************************************************************************
++#
++#   Standard perl modules
++#
++# ****************************************************************************
++
+ use strict;
+ use English;
+ use File::Basename;
+@@ -69,7 +90,25 @@ use Getopt::Long;
+ use autouse 'Pod::Text'     => qw( pod2text );
+ use autouse 'Pod::Html'     => qw( pod2html );
+ 
+-#   External CPAN moudules
++IMPORT: # This is just a syntactic sugar: actually no-op
++{
++    #   Import following environment variables
++
++    use Env;
++    use vars qw
++    (
++        $PATH
++        $TMPDIR
++        $SYSTEMROOT
++        $WINDIR
++    );
++}
++
++# ****************************************************************************
++#
++#   Modules from CPAN
++#
++# ****************************************************************************
+ 
+ my @REQUIRE_FATAL =   # Without these the program won't work
+ (
+@@ -87,29 +126,6 @@ my @REQUIRE_OPTIONAL =
+ #  Will be set at runtime
+ my @FEATURE_LIST_MODULES;
+ 
+-IMPORT: # This is just a syntactic sugar: actually no-op
+-{
+-    #   Import following environment variables
+-
+-    use Env;
+-    use vars qw
+-    (
+-        $PATH
+-        $TMPDIR
+-        $SYSTEMROOT
+-        $WINDIR
+-    );
+-
+-    use vars qw ( $VERSION );
+-
+-    #   This is for use of Makefile.PL and ExtUtils::MakeMaker
+-    #
+-    #   The following variable is updated by Emacs setup whenever
+-    #   this file is saved.
+-
+-    $VERSION = '2010.0301.1321';
+-}
+-
+ # }}}
+ # {{{ Initialize
+ 
+@@ -626,6 +642,8 @@ Windows, %WINDIR% is used. Under Linux t
+     /var/log/            (system's standard)
+     $HOME/tmp or $HOME   if process is not running under root
+ 
++This options is by default activated if B<--file> is not in used.
++
+ =item B<--proxy HOST>
+ 
+ Use HOST as outgoing HTTP proxy.
+@@ -971,6 +989,11 @@ Print version and contact information.
+ 
+ =head1 EXAMPLES
+ 
++To update IP address periodically, use crontab(5) entry. The update
++will happen only if IP has changed since last time:
++
++    0 0-23 * * * perl <absolute path>/dyndns <options>
++
+ To check current IP address:
+ 
+   dyndns --query [--urlping...]
+@@ -1163,13 +1186,26 @@ and copied one directorory up in order t
+ If program is run with Windows Activestate Perl, the log file is stored to
+ file C<C:/syslog.txt>.
+ 
+-=head1 SEE ALSO
++=head1 EXIT STATUS
++
++Not defined.
++
++=head1 DEPENDENCIES
++
++Uses standard Perl modules.
++
++HTTP::Headers
++HTTP::Request::Common
++LWP::UserAgent
++LWP::Simple
++Sys::Syslog
+ 
+-syslog(3), Debian package ddclient(1)
++=head1 STANDARDS
+ 
+-See other dyndns.org clients at http://clients.dyndns.org/
++The client specification is at
++https://www.dyndns.com/developers/specs/
+ 
+-=head1 BUGS
++=head1 BUGS AND LIMITATIONS
+ 
+ =head2 Cygwin syslog
+ 
+@@ -1192,43 +1228,24 @@ you find bugs or need new features.
+ The program is primarily developed and maintained to support dyndns.org.
+ The other providers haven't been tested since 2003.
+ 
+-=head1 AVAILABILITY
+-
+-http://freshmeat.net/projects/perl-dyndns
+-
+-=head1 STANDARDS
+-
+-The client specification is at
+-https://www.dyndns.com/developers/specs/
+-
+-=head1 SCRIPT CATEGORIES
+-
+-C<CPAN/Administrative>
+-C<CPAN/Networking>
+-
+-=head1 PREREQUISITES
+-
+-HTTP::Headers
+-HTTP::Request::Common
+-LWP::UserAgent
+-LWP::Simple
+-Sys::Syslog
++=head1 SEE ALSO
+ 
+-=head1 COREQUISITES
++syslog(3),
++Debian package ddclient(1)
+ 
+-None.
++See other client software at http://clients.dyndns.org
+ 
+-=head1 OSNAMES
++=head1 AVAILABILITY
+ 
+-C<any>
++http://freshmeat.net/projects/perl-dyndns
+ 
+ =head1 AUTHOR
+ 
+-Copyright (C) 1999-2009 Jari Aalto. All rights reserved. This program
+-is free software; you can redistribute and/or modify program under the
+-terms of GNU General Public license v2 or later.
++This program is free software; you can redistribute and/or modify
++program under the terms of GNU General Public license either version 2
++of the License, or (at your option) any later version.
+ 
+-This documentation may be distributed subject to the terms and
++The documentation may be distributed subject to the terms and
+ conditions set forth in GNU General Public License v2 or later (GNU
+ GPL); or, at your option, distributed under the terms of GNU Free
+ Documentation License version 1.2 or later (GNU FDL).
+@@ -1247,8 +1264,8 @@ sub Help ( ; $ $ )
+     }
+     elsif ( $type eq -man )
+     {
+-        eval "use Pod::Man";
+-        $EVAL_ERROR  and  die "$id: Cannot generate Man $EVAL_ERROR";
++	eval { require Pod::Man; 1 }
++	    or die "$id: Cannot generate Man: $EVAL_ERROR";
+ 
+         my %options;
+         $options{center} = 'Perl Dynamic DNS Update Client';
+@@ -1258,7 +1275,7 @@ sub Help ( ; $ $ )
+     }
+     else
+     {
+-        pod2text $PROGRAM_NAME;
++	system "pod2text $PROGRAM_NAME";
+     }
+ 
+     if ( defined $msg )
+@@ -1299,6 +1316,12 @@ sub VersionInfo ()
+     Version() . " $AUTHOR $LICENSE $URL"
+ }
+ 
++sub VersionPrint ()
++{
++    print( VersionInfo() . "\n");
++    exit 0;
++}
++
+ # ************************************************************** &args *******
+ #
+ #   DESCRIPTION
+@@ -1444,7 +1467,6 @@ sub HandleCommandLineArgsMain ()
+     Getopt::Long::config( qw
+     (
+         no_ignore_case
+-        require_order
+     ));
+ 
+     GetOptions      # Getopt::Long
+@@ -1502,7 +1524,7 @@ sub HandleCommandLineArgsMain ()
+         , "wildcard"            => \$wildcard
+     );
+ 
+-    $version                and print( VersionInfo() . "\n"), exit;
++    $version                and VersionPrint();
+ 
+     $help                   and Help();
+     $helpHTML               and Help undef, -html;
+@@ -1524,6 +1546,11 @@ sub HandleCommandLineArgsMain ()
+     $OPT_MX       = 'YES'   if defined $mx;
+     $OPT_OFFLINE  = 'YES'   if defined $offline;
+ 
++    unless ( $OPT_IP_FILE  or  $ipfileDefault )
++    {
++	$ipfileDefault = 'on';
++    }
++
+     if ( $ipfileDefault )
+     {
+         $OPT_IP_FILE = SystemLogDir();
+@@ -2691,7 +2718,7 @@ sub IPvalidate ($)
+ 
+ sub StringMatch ( $ $ )
+ {
+-    my $id = "StringMatch";
++    my $id = "$LIB.StringMatch";
+     my ($itemRef, $searchRef  ) =  @ARG;
+ 
+     unless ( @$itemRef )
+@@ -3949,7 +3976,7 @@ sub GetIpAddressIfconfig ()
+     #       collisions:46 txqueuelen:100
+     #       Interrupt:11 Base address:0xec00
+ 
+-    # my $re = 'inet[ \t]+addr:[ \t]*(\d[\d.]+)';
++    # my $re = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
+ 
+     my $modifier  = '(?sm)';
+     my $inet      = 'inet[ \t]+';
+@@ -3957,8 +3984,10 @@ sub GetIpAddressIfconfig ()
+ 
+     my @regexpList;
+     push @regexpList, $modifier . $inet . "addr:" . $base;
++    push @regexpList, $modifier . $inet . '[^\r\n:]+:' . $base;
+     push @regexpList, $modifier . $inet . $base;
+ 
++    $debug  and  print "$id: CMD [$cmd]\n";
+ 
+     my $ip;
+ 
+@@ -4010,6 +4039,9 @@ sub GetIpAddress ()
+ 
+     if ( $OPT_HTTP_PING )
+     {
++
++	$debug  and  print "$id: OPT_HTTP_PING\n";
++
+         $ret = HttpPing -url    => $OPT_HTTP_PING
+                       , -regexp => $OPT_HTTP_PING_REGEXP
+                       , -login  => $OPT_HTTP_PING_LOGIN
+@@ -4018,10 +4050,12 @@ sub GetIpAddress ()
+     }
+     elsif ( $OPT_HTTP_PING_DYNDNS )
+     {
++	$debug  and  print "$id: OPT_HTTP_PING_DYNDNS\n";
+         $ret = HttpPingDyndns();
+     }
+     elsif ( $OPT_HTTP_PING_LINKSYS )
+     {
++	$debug  and  print "$id: OPT_HTTP_PING_LINKSYS $OPT_HTTP_PING_LINKSYS\n";
+ 
+ 	local $ARG = $OPT_HTTP_PING_LINKSYS;
+ 
+@@ -4042,10 +4076,12 @@ sub GetIpAddress ()
+     }
+     elsif ( $WIN32 )
+     {
++	$debug  and  print "$id: WIN32\n";
+         $ret = GetIpAddressWin32();
+     }
+     elsif ( -x "/sbin/ifconfig"  or  -x "/usr/sbin/ifconfig")
+     {
++	$debug  and  print "$id: ifconfig\n";
+         $ret = GetIpAddressIfconfig();
+     }
+     else
+@@ -5206,9 +5242,25 @@ sub TestDriver ()
+     }
+ 
+     my (@response, $ip);
+-    my $linuxDefaultRegexp = '(?sm)inet[ \t]+addr:[ \t]*(\d[\d.]+)';
++
++    # Copy from GetIpAddressIfconfig()
++    my $modifier  = '(?sm)';
++    my $inet      = 'inet[ \t]+';
++    my $base      = '[ \t]*(\d[\d.]+)';
++
++    my $linuxDefaultRegexp = $modifier . $inet . "addr:" . $base;
++
+     my $regexp;
+ 
++    # locale: pt_BR
++    @response = split /\r?\n/, '
++eth0      Link encap:Ethernet  Endereço de HW 00:15:c5:1b:e1:de
++          inet end.: 189.29.36.92  Bcast:189.29.39.255  Masc:255.255.248.0';
++
++    $regexp =  $modifier . $inet . '[^\r\n:]+:' . $base;
++
++    $ip = IpAddressGenericParser $regexp, @response;
++
+     @response = split /\r?\n/, '
+ eth0      Link encap:Ethernet  HWaddr 00:10:5A:64:8D:32
+             inet addr:12.246.164.15  Bcast:255.255.255.255  Mask:255.255.255.0
+@@ -6520,6 +6572,7 @@ sub Main ()
+ 
+ # }}}
+ 
++# TestDriver; die;
+ # TestDriverLinksysBEFW11S4; die;
+ # TestDriverLinksysBEFW11S4v4; die;
+ # TestDriverLinksysWRT54GL; die;
diff -Nru dyndns-2010.1011+git8070c97/debian/patches/series dyndns-2010.0301+gitdd160bd/debian/patches/series
--- dyndns-2010.1011+git8070c97/debian/patches/series	1970-01-01 02:00:00.000000000 +0200
+++ dyndns-2010.0301+gitdd160bd/debian/patches/series	2010-10-22 09:12:06.000000000 +0300
@@ -0,0 +1 @@
+debian-changes-2010.0301+gitdd160bd-2
diff -Nru dyndns-2010.1011+git8070c97/debian/rules dyndns-2010.0301+gitdd160bd/debian/rules
--- dyndns-2010.1011+git8070c97/debian/rules	2010-10-11 15:25:47.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/debian/rules	2010-10-22 09:09:06.000000000 +0300
@@ -1,14 +1,21 @@
 #!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
 
 PACKAGE = dyndns
 DOCDIR  = debian/$(PACKAGE)/usr/share/doc/$(PACKAGE)/doc
 
-override_dh_auto_install:
+install:
+	# target: install
+	dh_testdir
+	dh_prep
+	dh_install
 	$(MAKE) prefix=/usr \
 		DESTDIR=debian/$(PACKAGE) \
 		INSTALL_OBJS_DOC="" \
 		DOCDIR=$(DOCDIR) \
-		PERL=perl \
 		install
 
 	mv $(DOCDIR)/examples $(DOCDIR)/..
@@ -16,7 +23,29 @@
 	# Nothing but manual pages, remove
 	rm -rf $(DOCDIR)
 
+binary-indep: install
+	# target: binary-indep -- Build architecture independent files
+	dh_testdir
+	dh_testroot
+	dh_install
+	dh_installdocs
+	dh_installman
+	dh_installchangelogs
+	dh_perl
+	dh_strip
+	dh_compress
+	dh_fixperms
+	dh_installdeb
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep
+
 %:
 	dh  $@
 
+.PHONY: install
+.PHONY: binary binary-indep
+
 # End of file
diff -Nru dyndns-2010.1011+git8070c97/doc/manual/index.html dyndns-2010.0301+gitdd160bd/doc/manual/index.html
--- dyndns-2010.1011+git8070c97/doc/manual/index.html	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/doc/manual/index.html	2010-03-01 15:25:47.000000000 +0200
@@ -34,10 +34,8 @@
 	<li><a href="#troubleshooting">TROUBLESHOOTING</a></li>
 	<li><a href="#environment">ENVIRONMENT</a></li>
 	<li><a href="#files">FILES</a></li>
-	<li><a href="#exit_status">EXIT STATUS</a></li>
-	<li><a href="#dependencies">DEPENDENCIES</a></li>
-	<li><a href="#standards">STANDARDS</a></li>
-	<li><a href="#bugs_and_limitations">BUGS AND LIMITATIONS</a></li>
+	<li><a href="#see_also">SEE ALSO</a></li>
+	<li><a href="#bugs">BUGS</a></li>
 	<ul>
 
 		<li><a href="#cygwin_syslog">Cygwin syslog</a></li>
@@ -45,8 +43,12 @@
 		<li><a href="#about_providers_hnorg_and_noip">About providers hnorg and noip</a></li>
 	</ul>
 
-	<li><a href="#see_also">SEE ALSO</a></li>
 	<li><a href="#availability">AVAILABILITY</a></li>
+	<li><a href="#standards">STANDARDS</a></li>
+	<li><a href="#script_categories">SCRIPT CATEGORIES</a></li>
+	<li><a href="#prerequisites">PREREQUISITES</a></li>
+	<li><a href="#corequisites">COREQUISITES</a></li>
+	<li><a href="#osnames">OSNAMES</a></li>
 	<li><a href="#author">AUTHOR</a></li>
 </ul>
 
@@ -274,7 +276,6 @@
     /var/log/dyndns/     (if directory exists)
     /var/log/            (system's standard)
     $HOME/tmp or $HOME   if process is not running under root</pre>
-<p>This options is by default activated if <strong>--file</strong> is not in used.</p>
 </dd>
 <dt><strong><a name="proxy_host" class="item"><strong>--proxy HOST</strong></a></strong></dt>
 
@@ -615,10 +616,6 @@
 </p>
 <hr />
 <h1><a name="examples">EXAMPLES</a></h1>
-<p>To update IP address periodically, use <code>crontab(5)</code> entry. The update
-will happen only if IP has changed since last time:</p>
-<pre>
-    0 0-23 * * * perl &lt;absolute path&gt;/dyndns &lt;options&gt;</pre>
 <p>To check current IP address:</p>
 <pre>
   dyndns --query [--urlping...]
@@ -804,28 +801,13 @@
 <p>
 </p>
 <hr />
-<h1><a name="exit_status">EXIT STATUS</a></h1>
-<p>Not defined.</p>
-<p>
-</p>
-<hr />
-<h1><a name="dependencies">DEPENDENCIES</a></h1>
-<p>Uses standard Perl modules.</p>
-<p>HTTP::Headers
-HTTP::Request::Common
-LWP::UserAgent
-LWP::Simple
-Sys::Syslog</p>
-<p>
-</p>
-<hr />
-<h1><a name="standards">STANDARDS</a></h1>
-<p>The client specification is at
-<a href="https://www.dyndns.com/developers/specs/">https://www.dyndns.com/developers/specs/</a></p>
+<h1><a name="see_also">SEE ALSO</a></h1>
+<p><code>syslog(3)</code>, Debian package <code>ddclient(1)</code></p>
+<p>See other dyndns.org clients at <a href="http://clients.dyndns.org/">http://clients.dyndns.org/</a></p>
 <p>
 </p>
 <hr />
-<h1><a name="bugs_and_limitations">BUGS AND LIMITATIONS</a></h1>
+<h1><a name="bugs">BUGS</a></h1>
 <p>
 </p>
 <h2><a name="cygwin_syslog">Cygwin syslog</a></h2>
@@ -849,23 +831,47 @@
 <p>
 </p>
 <hr />
-<h1><a name="see_also">SEE ALSO</a></h1>
-<p><code>syslog(3)</code>,
-Debian package <code>ddclient(1)</code></p>
-<p>See other client software at <a href="http://clients.dyndns.org">http://clients.dyndns.org</a></p>
+<h1><a name="availability">AVAILABILITY</a></h1>
+<p><a href="http://freshmeat.net/projects/perl-dyndns">http://freshmeat.net/projects/perl-dyndns</a></p>
 <p>
 </p>
 <hr />
-<h1><a name="availability">AVAILABILITY</a></h1>
-<p><a href="http://freshmeat.net/projects/perl-dyndns">http://freshmeat.net/projects/perl-dyndns</a></p>
+<h1><a name="standards">STANDARDS</a></h1>
+<p>The client specification is at
+<a href="https://www.dyndns.com/developers/specs/">https://www.dyndns.com/developers/specs/</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="script_categories">SCRIPT CATEGORIES</a></h1>
+<p><code>CPAN/Administrative</code>
+<code>CPAN/Networking</code></p>
+<p>
+</p>
+<hr />
+<h1><a name="prerequisites">PREREQUISITES</a></h1>
+<p>HTTP::Headers
+HTTP::Request::Common
+LWP::UserAgent
+LWP::Simple
+Sys::Syslog</p>
+<p>
+</p>
+<hr />
+<h1><a name="corequisites">COREQUISITES</a></h1>
+<p>None.</p>
+<p>
+</p>
+<hr />
+<h1><a name="osnames">OSNAMES</a></h1>
+<p><code>any</code></p>
 <p>
 </p>
 <hr />
 <h1><a name="author">AUTHOR</a></h1>
-<p>This program is free software; you can redistribute and/or modify
-program under the terms of GNU General Public license either version 2
-of the License, or (at your option) any later version.</p>
-<p>The documentation may be distributed subject to the terms and
+<p>Copyright (C) 1999-2009 Jari Aalto. All rights reserved. This program
+is free software; you can redistribute and/or modify program under the
+terms of GNU General Public license v2 or later.</p>
+<p>This documentation may be distributed subject to the terms and
 conditions set forth in GNU General Public License v2 or later (GNU
 GPL); or, at your option, distributed under the terms of GNU Free
 Documentation License version 1.2 or later (GNU FDL).</p>
diff -Nru dyndns-2010.1011+git8070c97/doc/manual/index.txt dyndns-2010.0301+gitdd160bd/doc/manual/index.txt
--- dyndns-2010.1011+git8070c97/doc/manual/index.txt	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/doc/manual/index.txt	2010-03-01 15:25:47.000000000 +0200
@@ -208,8 +208,6 @@
             /var/log/            (system's standard)
             $HOME/tmp or $HOME   if process is not running under root
 
-        This options is by default activated if --file is not in used.
-
     --proxy HOST
         Use HOST as outgoing HTTP proxy.
 
@@ -523,11 +521,6 @@
         Print version and contact information.
 
 EXAMPLES
-    To update IP address periodically, use crontab(5) entry. The update will
-    happen only if IP has changed since last time:
-
-        0 0-23 * * * perl <absolute path>/dyndns <options>
-
     To check current IP address:
 
       dyndns --query [--urlping...]
@@ -709,19 +702,12 @@
     If program is run with Windows Activestate Perl, the log file is stored
     to file "C:/syslog.txt".
 
-EXIT STATUS
-    Not defined.
-
-DEPENDENCIES
-    Uses standard Perl modules.
-
-    HTTP::Headers HTTP::Request::Common LWP::UserAgent LWP::Simple
-    Sys::Syslog
+SEE ALSO
+    syslog(3), Debian package ddclient(1)
 
-STANDARDS
-    The client specification is at https://www.dyndns.com/developers/specs/
+    See other dyndns.org clients at http://clients.dyndns.org/
 
-BUGS AND LIMITATIONS
+BUGS
   Cygwin syslog
     There is no syslog daemon in Cygwin. The Cygwin POSIX emulation layer
     takes care about syslog requests. On NT and above systems it logs to the
@@ -740,21 +726,32 @@
     The program is primarily developed and maintained to support dyndns.org.
     The other providers haven't been tested since 2003.
 
-SEE ALSO
-    syslog(3), Debian package ddclient(1)
-
-    See other client software at http://clients.dyndns.org
-
 AVAILABILITY
     http://freshmeat.net/projects/perl-dyndns
 
+STANDARDS
+    The client specification is at https://www.dyndns.com/developers/specs/
+
+SCRIPT CATEGORIES
+    "CPAN/Administrative" "CPAN/Networking"
+
+PREREQUISITES
+    HTTP::Headers HTTP::Request::Common LWP::UserAgent LWP::Simple
+    Sys::Syslog
+
+COREQUISITES
+    None.
+
+OSNAMES
+    "any"
+
 AUTHOR
-    This program is free software; you can redistribute and/or modify
-    program under the terms of GNU General Public license either version 2
-    of the License, or (at your option) any later version.
-
-    The documentation may be distributed subject to the terms and conditions
-    set forth in GNU General Public License v2 or later (GNU GPL); or, at
-    your option, distributed under the terms of GNU Free Documentation
-    License version 1.2 or later (GNU FDL).
+    Copyright (C) 1999-2009 Jari Aalto. All rights reserved. This program is
+    free software; you can redistribute and/or modify program under the
+    terms of GNU General Public license v2 or later.
+
+    This documentation may be distributed subject to the terms and
+    conditions set forth in GNU General Public License v2 or later (GNU
+    GPL); or, at your option, distributed under the terms of GNU Free
+    Documentation License version 1.2 or later (GNU FDL).
 
diff -Nru dyndns-2010.1011+git8070c97/INSTALL dyndns-2010.0301+gitdd160bd/INSTALL
--- dyndns-2010.1011+git8070c97/INSTALL	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/INSTALL	2010-03-01 15:25:47.000000000 +0200
@@ -16,7 +16,8 @@
         Run makefile with appropriate parameters. The program is
         installed without any file extension (*.pl):
 
-            make DESTDIR= prefix=/usr/local install
+            perl Makefile.PL
+            make DESTDIR= PREFIX=/usr/local ETCDIR=/etc/perl-dyndns install
 
 	To test the installation (to see how files are installed):
 
@@ -33,12 +34,16 @@
 
 Usage
 
-	The program contains --daemon mode, which makes program to
+	The program contain --daemon mode, which makes program to
 	sleep and wake periodically. This can be used e.g. under
 	Windows.
 
-	If cron(1) is available, it is recommended to use standard
-	crontab(5) entry to periodically run the program. See
-	manual page and section EXAMPLES.
+	However, if cron(1) is available, it is recommended to use
+	standard crontab(5) entry to periodically run the program,
+	say every 1h. This will conserve memeory and CPU resources.
+	A system wide crontab entry example for Linux:
+
+	   # /etc/cron.d/perl-dyndns
+	   0 0-23 * * * perl /usr/local/bin/perl-dyndns <options>
 
 End of file
diff -Nru dyndns-2010.1011+git8070c97/Makefile dyndns-2010.0301+gitdd160bd/Makefile
--- dyndns-2010.1011+git8070c97/Makefile	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/Makefile	2010-03-01 15:25:47.000000000 +0200
@@ -76,7 +76,6 @@
 VERSION		= $(DATE)
 RELEASE		= $(PACKAGE)-$(VERSION)
 
-PERL		= perl
 BIN		= $(PACKAGE)
 PL_SCRIPT	= bin/$(BIN).pl
 
@@ -105,7 +104,7 @@
 
 realclean: clean
 
-dist-git: test
+dist-git:
 	rm -f $(DIST_DIR)/$(RELEASE)*
 
 	git archive --format=tar --prefix=$(RELEASE)/ master | \
@@ -118,8 +117,8 @@
 
 # The "gt" is maintainer's program frontend to Git
 # Rule: dist-snap - [maintainer] release snapshot from Git repository
-dist-snap: test
-	@echo gt tar -q -z -p $(PACKAGE) -c -D master
+dist-snap:
+	echo gt tar -q -z -p $(PACKAGE) -c -D master
 
 # Rule: dist - [maintainer] release from Git repository
 dist: dist-git
diff -Nru dyndns-2010.1011+git8070c97/README dyndns-2010.0301+gitdd160bd/README
--- dyndns-2010.1011+git8070c97/README	2010-10-11 15:23:51.000000000 +0300
+++ dyndns-2010.0301+gitdd160bd/README	2010-03-01 15:25:47.000000000 +0200
@@ -18,25 +18,21 @@
     doc/license/LICENSE.txt 	Licensing information
     ChangeLog			Project change records
 
-Project details
+Project contacts
 
     Homepage
-
-	http://freshmeat.net/projects/perl-dyndns
+      http://freshmeat.net/projects/perl-dyndns
 
     Reporting bugs
-
-	See freshmeat page
+      See freshmeat page
 
     Source code repository
-
-	See freshmeat page
+      See freshmeat page
 
     Depends
+      Perl (any version)
 
-	Perl (any version)
-
-	Extenal CPAN libraries (required):
+      Extenal CPAN libraries:
 
 	  [ Debian: libwww-perl ]
 	  HTTP::Request::Common
@@ -44,12 +40,9 @@
 	  LWP::UserAgent
 	  LWP::Simple
 
-	Extenal CPAN libraries (optional):
-
-	  Used only if module is available. In Debian this is packaged
-	  as libsys-syslog-perl
-
-		Sys::Syslog
+	  # optional: used only is available
+	  [ Debian: libsys-syslog-perl ]
+	  Sys::Syslog
 
 	External commands needed:
 

