Hello community,

here is the log from the commit of package ddclient for openSUSE:Factory 
checked in at 2014-01-03 14:57:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ddclient (Old)
 and      /work/SRC/openSUSE:Factory/.ddclient.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ddclient"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ddclient/ddclient.changes        2013-12-05 
21:35:25.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ddclient.new/ddclient.changes   2014-01-03 
14:57:48.000000000 +0100
@@ -1,0 +2,14 @@
+Tue Dec 31 17:02:59 UTC 2013 - [email protected]
+
+- update to 3.8.2
+  * adding support by ChangeIP
+  * sha-1 patch  to allow Digest::SHA
+  * allow reuse of use
+  * preventing deep sleep - see bug #46
+  * Fallback to iproute if ifconfig doesn't work
+- drop ddclient-3.8.1-update_nic.patch: upstream changed the "use"
+  logic
+- move all sample-* to examples under the documentation directory
+- update source url on sourceforge
+
+-------------------------------------------------------------------

Old:
----
  ddclient-3.8.1-update_nic.patch
  ddclient-3.8.1.tar.bz2

New:
----
  ddclient-3.8.2.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ddclient.spec ++++++
--- /var/tmp/diff_new_pack.qIjGTh/_old  2014-01-03 14:57:48.000000000 +0100
+++ /var/tmp/diff_new_pack.qIjGTh/_new  2014-01-03 14:57:48.000000000 +0100
@@ -20,16 +20,15 @@
 Summary:        A Perl Client to Update Dynamic DNS Entries
 License:        GPL-2.0+
 Group:          Productivity/Networking/DNS/Utilities
-Version:        3.8.1
+Version:        3.8.2
 Release:        0
 Url:            http://ddclient.sourceforge.net/
-Source0:        
http://switch.dl.sourceforge.net/sourceforge/ddclient/%{name}-%{version}.tar.bz2
+Source0:        
http://prdownloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
 Source1:        %{name}.service
 Source2:        %{name}.sysconfig
 Source3:        %{name}-tmpfiles.conf
 Source4:        rc.%{name}
 Patch0:         %{name}-3.8.1-config.patch
-Patch1:         %{name}-3.8.1-update_nic.patch
 BuildRequires:  pkgconfig(systemd)
 BuildArch:      noarch
 Requires(pre):  %fillup_prereq
@@ -52,11 +51,10 @@
 %prep
 %setup
 %patch0
-%patch1
 rm -f sample-etc_ddclient.conf.orig
 chmod a-x sample-*
 mkdir examples
-mv sample-ddclient-wrapper.sh examples
+mv sample-* examples
 
 %build
 #%%configure
@@ -76,7 +74,7 @@
 %{__mkdir_p} %{buildroot}%{_sysconfdir}/init.d
 %endif
 %{__install} -m 755 %{name} %{buildroot}%{_sbindir}/
-%{__install} -m 644 sample-etc_ddclient.conf 
%{buildroot}%{_sysconfdir}/%{name}.conf
+%{__install} -m 644 examples/sample-etc_ddclient.conf 
%{buildroot}%{_sysconfdir}/%{name}.conf
 # init script and config file
 %if 0%{?suse_version} >=1230
 %{__install} -m 644 %{SOURCE1} %{buildroot}/%{_unitdir}/%{name}.service
@@ -113,7 +111,7 @@
 
 %files
 %defattr(-, root, root)
-%doc COPY* README* sample* examples
+%doc COPY* README* examples
 %config(noreplace) %attr(600,root,root) %{_sysconfdir}/%{name}.conf
 %if 0%{?suse_version} >=1230
 %{_unitdir}/%{name}.service

++++++ ddclient-3.8.1.tar.bz2 -> ddclient-3.8.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/ChangeLog new/ddclient-3.8.2/ChangeLog
--- old/ddclient-3.8.1/ChangeLog        2009-01-27 20:14:39.000000000 +0100
+++ new/ddclient-3.8.2/ChangeLog        1970-01-01 01:00:00.000000000 +0100
@@ -1,292 +0,0 @@
-2008-12-04  wimpunk
-
-       * [r106] ddclient: help about postscript added
-
-2008-11-19  wimpunk
-
-       * [r105] ddclient, patches/password.patch: Added better password
-         handling sended by Ingo Schwarze
-       * [r104] TODO, sample-ddclient-wrapper.sh: Added ddclient wrapper
-         script
-       * [r103] ddclient: Extra fix for multiple IP's
-
-2008-11-01  wimpunk
-
-       * [r102] sample-etc_ddclient.conf: Added some remarks concerning
-         the postscript. See
-         https://sourceforge.net/forum/message.php?msg_id=5550545
-
-2008-09-30  wimpunk
-
-       * [r101] ddclient, patches/multiple-ip.patch: Added support for
-         multiple IP adresses. See
-         http://permalink.gmane.org/gmane.network.dns.ddclient.user/17
-       * [r100] patches/namecheap.patch: extra comments added to namecheap
-         patch
-
-2008-07-04  wimpunk
-
-       * [r99] patches/namecheap.patch: namecheap patch added to patches
-         section
-
-2008-06-13  wimpunk
-
-       * [r98] .: New trunk created based on the old trunk/svn
-       * [r96] svn: Moved old trunk/svn to ddclient and it will be the new
-         trunk
-       * [r95] svn: Ignoring test configuration
-       * [r94] svn/.cvsignore, svn/RELEASENOTE, svn/UPGRADE: Added some
-         release related files
-       * [r93] svn/patches/no-host.patch: Added not used no-host patch to
-         patches section
-
-2008-06-05  wimpunk
-
-       * [r90] svn/ddclient: Added more info about the daemon interval
-       * [r89] svn/ddclient: Preventing error while reading cache when ip
-         wasn't set correctly before
-       * [r88] svn/ddclient: Preventing an error when trying to send a
-         message on mail-failure
-
-2008-06-02  wimpunk
-
-       * [r87] svn/ddclient, svn/sample-etc_ddclient.conf: Modified
-         documentation about zoneedit based on the comments from Oren Held
-
-2008-03-04  wimpunk
-
-       * [r86] svn/patches/ddclient.daemon-timeout.patch: Added patch
-         which was applied to rev 27 (posted by James deBoer)
-
-2008-02-19  wimpunk
-
-       * [r85] svn/patches/eurodns.patch: Patch modified to apply on
-         ddclient 3.7.3
-
-2008-02-08  wimpunk
-
-       * [r84] svn/patches/mail-on-kill.patch: Added mail-on-kill patch to
-         patches section
-
-2008-02-05  wimpunk
-
-       * [r83] svn/ddclient: Sending mail when killed, not after
-         TERM-signal
-       * [r82] svn/README: Added creation of cache dir
-
-2007-10-29  wimpunk
-
-       * [r81] svn/ddclient, svn/patches/ubuntu/default-timeout.patch:
-         Added and applied default timeout patch from
-         https://bugs.launchpad.net/ubuntu/+source/ddclient/+bug/116066
-
-2007-08-29  wimpunk
-
-       * [r80] svn/ddclient, svn/patches/ddclient-noip.patch: Added
-         ddclient-noip.patch send by Kurt Bussche.
-
-2007-08-07  wimpunk
-
-       * [r78] svn/ddclient: Updated version number to 3.7.3
-
-2007-08-01  wimpunk
-
-       * [r77] svn/ddclient, svn/patches/typo_dnspark.patch: Applied
-         typo_dnspark.patch send by Marco
-
-2007-07-31  wimpunk
-
-       * [r76] svn/README.ssl: Renamed dyndns.org to dyndns.com
-       * [r75] svn/README: Removed ^M at line 37
-       * [r74] svn/ddclient: Removed line 183, comments on Vigor 2200 USB
-
-2007-07-30  wimpunk
-
-       * [r73] svn: Ignoring ChangeLog since autogenerated
-       * [r72] svn/Changelog: Notification about changed ChangeLog
-         configuration
-       * [r71] svn/patches/ubuntu/dyndns_com.diff: Removed patch since
-         it's invalid
-       * [r70] svn/patches/opendns.patch: Added not applied opendns.patch,
-         see tracker #1758564
-       * [r69] svn/patches/debianpatches,
-         svn/patches/debianpatches/abuse_msg.diff,
-         svn/patches/debianpatches/cachedir.diff,
-         svn/patches/debianpatches/cisco_fw.diff,
-         svn/patches/debianpatches/config_path.diff,
-         svn/patches/debianpatches/daemon_check.diff,
-         svn/patches/debianpatches/daemon_interval.diff,
-         svn/patches/debianpatches/help_nonroot(2).diff,
-         svn/patches/debianpatches/help_nonroot.diff,
-         svn/patches/debianpatches/ip-up_run-parts.diff,
-         svn/patches/debianpatches/maxinterval.diff,
-         svn/patches/debianpatches/readme.txt,
-         svn/patches/debianpatches/sample_path.diff,
-         svn/patches/debianpatches/smc-barricade-7401bra.patch,
-         svn/patches/debianpatches/smc-barricade-fw-alt.diff,
-         svn/patches/debianpatches/update-new-config.patch,
-         svn/patches/ubuntu, svn/patches/ubuntu/checked_ssl_load.diff,
-         svn/patches/ubuntu/config_path.diff,
-         svn/patches/ubuntu/daemon_interval.diff,
-         svn/patches/ubuntu/dyndns_com.diff,
-         svn/patches/ubuntu/sample_ubuntu.diff, svn/patches/ubuntu/series,
-         svn/patches/ubuntu/smc-barricade-fw-alt.diff: Added debian and
-         ubuntu patches
-
-2007-07-29  wimpunk
-
-       * [r68] svn/TODO: Added url to feature request dyndns
-
-2007-07-12  wimpunk
-
-       * [r67] svn/README, svn/patches/readme.patch: Run dos2unix on
-         readme and it's patch which Marco Rodrigues submitted.
-       * [r66] svn/README, svn/patches/readme.patch: Partial applied
-         readme.patch. See tracker #1752931
-
-2007-07-10  wimpunk
-
-       * [r65] svn/ddclient: signature modified
-       * [r64] svn/ddclient: Added website to ddclient comments
-       * [r63] svn/patches/regex_vlan.patch: Added extra comments to the
-         patch.
-       * [r62] svn/ddclient, svn/patches/create_patch.sh,
-         svn/patches/regex_vlan.patch,
-         svn/patches/typo_namecheap_patch.diff.new: Added patches and
-         applied regex_vlan.patch. See bug #1747337
-       * [r61] svn/ddclient: Applied typo_namecheap_patch.diff send by
-         Marco Rodrigues
-
-2007-07-07  wimpunk
-
-       * [r60] svn/sample-etc_ppp_ip-up.local: Reverted the patch from
-         torsten. See [ 1749470 ] Bug in Script sample-etc_ppp_ip-up.local
-
-2007-07-04  wimpunk
-
-       * [r59] svn/release, svn/release/readme.txt: Adding some release
-         documentation
-
-2007-06-14  wimpunk
-
-       * [r57] svn/Changelog, svn/ddclient: Changed version number
-       * [r55] svn/patches, svn/patches/3com-oc-remote812.patch,
-         svn/patches/easydns.patch, svn/patches/eurodns.patch: Patches
-         directory added
-
-2007-06-12  wimpunk
-
-       * [r54] svn/ddclient: 3com-oc-remote812 patch by The_Beast via IRC:
-         see patches/3com-oc-remote812.patch
-
-2007-06-05  wimpunk
-
-       * [r53] svn/ddclient: Applied easydns.patch, patch 117054
-
-2007-05-28  wimpunk
-
-       * [r52] svn/ddclient: Changed nic_namecheap_update following the
-         suggestion of edmdude on the forum
-         (https://sourceforge.net/forum/message.php?msg_id=4316938)
-
-2007-05-19  wimpunk
-
-       * [r48] svn/ddclient: Cosmetic change about checkip
-       * [r47] svn/ddclient: Applied checked_ssl_load.diff from ubuntu
-       * [r46] svn/ddclient: Removed the two empty lines at the end of
-         ddclient
-
-2007-02-26  wimpunk
-
-       * [r44] svn/TODO: added a TODO list
-
-2007-02-21  wimpunk
-
-       * [r43] svn/Changelog, svn/ddclient: Preventing unitialized values,
-         check https://sourceforge.net/forum/message.php?msg_id=4167772
-
-2007-01-24  wimpunk
-
-       * [r40] svn/Changelog, svn/ddclient: Changed max-interval to
-         25days. See https://www.dyndns.com/services/dns/dyndns/faq.html
-
-2006-12-03  wimpunk
-
-       * [r39] svn/Changelog, svn/ddclient: Applied maxinterval.diff:
-         Increase max interval for updates.
-         See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=129370
-         http://www.dyndns.com/support/services/dyndns/faq.html#q15
-       * [r38] svn/ddclient: Applied cisco_fw.diff: Use configured
-         hostname for firewall access with
-         -use=cisco (closes: #345712). Thanks to Per Carlson for the
-         patch!
-         See http://bugs.debian.org/345712.
-
-2006-12-02  wimpunk
-
-       * [r37] svn/Changelog, svn/ddclient: Applied
-         smc-barricade-7401bra.patch: Support for SMC Barricade 7401BRA FW
-         firewall (submitted by Torsten)
-         Changelog modified for all previous patches from Torsten
-       * [r36] svn/ddclient: Applied update-new-config.patch: Force update
-         if config has changed
-         (submitted by Torsten)
-       * [r35] svn/sample-etc_ppp_ip-up.local: Applied
-         ip-up_run-parts.diff: Fix parameter in ip-up script.
-         (submitted by Torsten)
-       * [r34] svn/ddclient: Applied help_nonroot.diff: Allow calling the
-         help function as non-root.
-         (submitted by Torsten)
-       * [r33] svn/ddclient: Applied cachedir.diff: Original ddclient
-         stores a cache file in /etc which
-         would belong in /var/cache in my opinion and according to the
-         FHS. Patch
-         changes that. (submitted by Torsten)
-       * [r32] svn/ddclient: Applied abuse_msg.diff: ddclient still
-         reports the email to contact dyndns.org
-         but they prefer a web form today (IIRC). This patch adjusts the
-         abuse warning
-         printed by ddclient. (submitted by Torsten)
-       * [r31] svn/Changelog: Changed Changelog syntax
-
-2006-11-27  wimpunk
-
-       * [r30] svn/Changelog, svn/ddclient: Don't send any mail when in
-         not running daemon mode (patch submitted by Daniel Thaler)
-
-2006-11-03  wimpunk
-
-       * [r28] svn/Changelog, svn/ddclient: Added patch "Patch: Treat
-         --daemon values as intervals"
-         (submitted by James deBoer)
-
-2006-09-30  wimpunk
-
-       * [r22] svn/Changelog, svn/sample-etc_rc.d_init.d_ddclient.ubuntu:
-         Added initscript for Ubuntu (posted by Paolo Martinelli)
-
-2006-09-14  wimpunk
-
-       * [r21] svn/Changelog, svn/ddclient: URL of zoneedit has changed
-         (see bug #1558483)
-
-2006-06-14  wimpunk
-
-       * [r11] svn/Changelog, svn/ddclient: Changed version number
-       * [r8] ., html, svn, xml: Created trunk and tags, moved directories
-         to it
-       * [r6] Changed the order of perl and update of README.ssl
-
-2006-06-11  ddfisher
-
-       * [r5] see Changelog
-
-2006-06-10  ddfisher
-
-       * [r4] updated changelog
-       * [r3] See Changelog
-
-2006-05-22  wimpunk
-
-       * [r2] Reorganise
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/README new/ddclient-3.8.2/README
--- old/ddclient-3.8.1/README   2011-07-11 23:04:21.000000000 +0200
+++ new/ddclient-3.8.2/README   1970-01-01 01:00:00.000000000 +0100
@@ -1,176 +0,0 @@
-===============================================================================
-DDCLIENT v3.6.7
-
-ddclient is a Perl client used to update dynamic DNS entries for accounts
-on many dynamic DNS services.
-
-IMPORTANT:     The format and options used by ddclient have CHANGED.
-               Please examine the sample configuration file.
-               It is highly recommended that you take advantage of the
-               new daemon mode of operation.
-
-IMPORTANT:     The installation location for the ddclient script has changed 
from
-                       /root/bin/
-               to
-                       /usr/sbin/
-
-===============================================================================
-
-Dynamic DNS services currently supported include:
-
-DynDNS.com  - See http://www.dyndns.com for details on obtaining a free 
account.
-Hammernode  - See http://www.hn.org for details on obtaining a free account.
-Zoneedit    - See http://www.zoneedit.com for details.
-EasyDNS     - See http://www.easydns.com for details.
-NameCheap   - See http://www.namecheap.com for details
-ConCont     - See http://www.dydns.za.net for details
-DnsPark     - See http://www.dnspark.com for details
-DslReports  - See http://www.dslreports.com for details
-Sitelutions - see http://www.sitelutions.com for details
-Loopia      - See http://www.loopia.se for details
-
-DDclient now supports many of cable/dsl broadband routers. 
-
-Comments, suggestions and requests: use the forums on 
-       http://sourceforge.net/projects/ddclient/
-
-The code was originally written by Paul Burry and is now hosted and maintained 
 
-through sourceforge.net. Please check out http://ddclient.sf.net
-
--------------------------------------------------------------------------------
-REQUIREMENTS:
-
-- one or more accounts from one of the dynamic DNS services
-
-- Perl 5.004 or later
-  (you need the IO::Socket::SSL perl library for ssl-support)
-
-- Linux or probably any common Unix system
-
--------------------------------------------------------------------------------
-INSTALLATION:
-
-  cp ddclient /usr/sbin/
-  mkdir /etc/ddclient
-  mkdir /var/cache/ddclient
-  cp sample-etc_ddclient.conf /etc/ddclient/ddclient.conf
-  vi /etc/ddclient/ddclient.conf
-  -- and change hostnames, logins, and passwords appropriately
-
-  ## For those using Redhat style rc files and using daemon-mode:
-  cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient
-  ## enable automatic startup when booting
-  ## check your distribution
-  /sbin/chkconfig --add ddclient
-  ## start the first time by hand
-  /etc/rc.d/init.d/ddclient start
-
-  ## If you are not using daemon-mode, configure cron and dhcp or ppp
-  ## as described below.
-
--------------------------------------------------------------------------------
-TROUBLESHOOTING:
-
-  1. enable debugging and verbose messages.
-       $ ddclient -daemon=0 -debug -verbose -noquiet
-
-  2. Do you need to specify a proxy?
-     If so, just add a
-       proxy=your.isp.proxy
-     to the ddclient.conf file.
-
-  3. Define the IP address of your router with fw=xxx.xxx.xxx.xxx in
-     /etc/ddclient/ddclient.conf and then try
-       $ ddclient -daemon=0 -query
-     to see if the router status web page can be understood.
-
-  4. Need support for another router/firewall?
-     Define the router status page yourself with:
-       fw=url-to-your-router's-status-page
-       fw-skip=any-string-preceding-your-IP-address
-
-     ddclient does something like this to provide builtin support for 
-     common routers.
-     For example, the Linksys routers could have been added with:
-        fw=192.168.1.1/Status.htm
-       fw-skip=WAN.*?IP Address
-
-     OR
-     Send me the output from:
-      $ ddclient -geturl {fw-ip-status-url} [-login login [-password password]]
-     and I'll add it to the next release!
-
-     ie. for my fw/router I used:
-       $ ddclient -geturl 192.168.1.254/status.htm
-
-  5. Some broadband routers require the use of a password when ddclient
-     accesses its status page to determine the router's WAN IP address.
-     If this is the case for your router, add
-       fw-login=your-router-login
-       fw-password=your-router-password
-     to the beginning of your ddclient.conf file.
-     Note that some routers use either 'root' or 'admin' as their login
-     while some others accept anything.
-
--------------------------------------------------------------------------------
-USING DDCLIENT WITH ppp
-
-If you are using a ppp connection, you can easily update your DynDNS
-entry with each connection, with:
-  ## configure pppd to update DynDNS with each connection
-  cp sample-etc_ppp_ip-up.local /etc/ppp/ip-up.local
-
-Alternatively, you may just configure ddclient to operate as a daemon
-and monitor your ppp interface.
-
--------------------------------------------------------------------------------
-USING DDCLIENT WITH cron
-
-If you have not configured ddclient to use daemon-mode, you'll need to
-configure cron to force an update once a month so that the dns entry will
-not become stale.
-
-  ## configure cron to force an update twice a month
-  cp sample-etc_cron.d_ddclient /etc/cron.d/ddclient
-  vi /etc/cron.d/ddclient
-
--------------------------------------------------------------------------------
-USING DDCLIENT WITH dhcpcd-1.3.17
-
-If you are using dhcpcd-1.3.17 or thereabouts, you can easily update
-your DynDNS entry automatically every time your lease is obtained
-or renewed by creating an executable file named:
-  /etc/dhcpc/dhcpcd-{your-interface}.exe
-ie.:
-  cp sample-etc_dhcpc_dhcpcd-eth0.exe /etc/dhcpc/dhcpcd-{your-interface}.exe
-
-In my case, it is named dhcpcd-eth0.exe and contains the lines:
-  #!/bin/sh
-  PATH=/usr/sbin:/root/bin:${PATH}
-  logger -t dhcpcd IP address changed to $1
-  ddclient -proxy fasthttp.sympatico.ca -wildcard -ip $1 | logger -t ddclient 
-  exit 0
-
-Other DHCP clients may have another method of calling out to programs
-for updating DNS entries. 
-
-Alternatively, you may just configure ddclient to operate as a daemon
-and monitor your ethernet interface.
-
--------------------------------------------------------------------------------
-USING DDCLIENT WITH dhclient
-
-If you are using the ISC DHCP client (dhclient), you can update 
-your DynDNS entry automatically every time your lease is obtained
-or renewed by creating an executable file named:
-  /etc/dhclient-exit-hooks
-ie.:
-  cp sample-etc_dhclient-exit-hooks /etc/dhclient-exit-hooks
-
-Edit /etc/dhclient-exit-hooks to change any options required.
-
-Alternatively, you may just configure ddclient to operate as a daemon
-and monitor your ethernet interface.
-
--------------------------------------------------------------------------------
-$Id: README 112 2009-09-10 10:21:19Z wimpunk $
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/README.md new/ddclient-3.8.2/README.md
--- old/ddclient-3.8.1/README.md        1970-01-01 01:00:00.000000000 +0100
+++ new/ddclient-3.8.2/README.md        2013-12-26 10:04:25.000000000 +0100
@@ -0,0 +1,173 @@
+===============================================================================
+# DDCLIENT v3.8.2
+
+ddclient is a Perl client used to update dynamic DNS entries for accounts
+on many dynamic DNS services.
+
+===============================================================================
+
+Dynamic DNS services currently supported include:
+
+    DynDNS.com  - See http://www.dyndns.com for details on obtaining a free 
account.
+    Hammernode  - See http://www.hn.org for details on obtaining a free 
account.
+    Zoneedit    - See http://www.zoneedit.com for details.
+    EasyDNS     - See http://www.easydns.com for details.
+    NameCheap   - See http://www.namecheap.com for details
+    ConCont     - See http://www.dydns.za.net for details
+    DnsPark     - See http://www.dnspark.com for details
+    DslReports  - See http://www.dslreports.com for details
+    Sitelutions - See http://www.sitelutions.com for details
+    Loopia      - See http://www.loopia.se for details
+    Noip        - See http://www.noip.com/ for details
+    Freedns     - See http://freedns.afraid.org/ for details
+    ChangeIP    - See http://www.changeip.com/ for details
+    dtdns       - See http://www.dtdns.com/ for details
+
+DDclient now supports many of cable/dsl broadband routers. 
+
+Comments, suggestions and requests: use the forums on 
+       http://sourceforge.net/projects/ddclient/
+
+The code was originally written by Paul Burry and is now hosted and maintained 
 
+through sourceforge.net. Please check out http://ddclient.sf.net
+
+-------------------------------------------------------------------------------
+REQUIREMENTS:
+
+- one or more accounts from one of the dynamic DNS services
+
+- Perl 5.004 or later
+  (you need the IO::Socket::SSL perl library for ssl-support)
+
+- Linux or probably any common Unix system
+
+-------------------------------------------------------------------------------
+INSTALLATION:
+
+    cp ddclient /usr/sbin/
+    mkdir /etc/ddclient
+    mkdir /var/cache/ddclient
+    cp sample-etc_ddclient.conf /etc/ddclient/ddclient.conf
+    vi /etc/ddclient/ddclient.conf
+    -- and change hostnames, logins, and passwords appropriately
+
+    ## For those using Redhat style rc files and using daemon-mode:
+    cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient
+    ## enable automatic startup when booting
+    ## check your distribution
+    /sbin/chkconfig --add ddclient
+    ## start the first time by hand
+    /etc/rc.d/init.d/ddclient start
+
+    ## If you are not using daemon-mode, configure cron and dhcp or ppp
+    ## as described below.
+
+-------------------------------------------------------------------------------
+TROUBLESHOOTING:
+
+  1. enable debugging and verbose messages.
+        ``$ ddclient -daemon=0 -debug -verbose -noquiet``
+
+  2. Do you need to specify a proxy?
+     If so, just add a
+       ``proxy=your.isp.proxy``
+     to the ddclient.conf file.
+
+  3. Define the IP address of your router with ``fw=xxx.xxx.xxx.xxx`` in
+     ``/etc/ddclient/ddclient.conf`` and then try
+       ``$ ddclient -daemon=0 -query``
+     to see if the router status web page can be understood.
+
+  4. Need support for another router/firewall?
+     Define the router status page yourself with:
+       ``fw=url-to-your-router``'s-status-page
+       ``fw-skip=any-string-preceding-your-IP-address``
+
+     ddclient does something like this to provide builtin support for 
+     common routers.
+     For example, the Linksys routers could have been added with:
+     
+        fw=192.168.1.1/Status.htm
+           fw-skip=WAN.*?IP Address
+
+     OR
+     Send me the output from:
+      $ ddclient -geturl {fw-ip-status-url} [-login login [-password password]]
+     and I'll add it to the next release!
+
+     ie. for my fw/router I used:
+       $ ddclient -geturl 192.168.1.254/status.htm
+
+  5. Some broadband routers require the use of a password when ddclient
+     accesses its status page to determine the router's WAN IP address.
+     If this is the case for your router, add
+       fw-login=your-router-login
+       fw-password=your-router-password
+     to the beginning of your ddclient.conf file.
+     Note that some routers use either 'root' or 'admin' as their login
+     while some others accept anything.
+
+-------------------------------------------------------------------------------
+USING DDCLIENT WITH ppp
+
+If you are using a ppp connection, you can easily update your DynDNS
+entry with each connection, with:
+
+    ## configure pppd to update DynDNS with each connection
+    cp sample-etc_ppp_ip-up.local /etc/ppp/ip-up.local
+
+Alternatively, you may just configure ddclient to operate as a daemon
+and monitor your ppp interface.
+
+-------------------------------------------------------------------------------
+USING DDCLIENT WITH cron
+
+If you have not configured ddclient to use daemon-mode, you'll need to
+configure cron to force an update once a month so that the dns entry will
+not become stale.
+
+    ## configure cron to force an update twice a month
+    cp sample-etc_cron.d_ddclient /etc/cron.d/ddclient
+    vi /etc/cron.d/ddclient
+
+-------------------------------------------------------------------------------
+USING DDCLIENT WITH dhcpcd-1.3.17
+
+If you are using dhcpcd-1.3.17 or thereabouts, you can easily update
+your DynDNS entry automatically every time your lease is obtained
+or renewed by creating an executable file named:
+    /etc/dhcpc/dhcpcd-{your-interface}.exe
+ie.:
+    cp sample-etc_dhcpc_dhcpcd-eth0.exe /etc/dhcpc/dhcpcd-{your-interface}.exe
+
+In my case, it is named dhcpcd-eth0.exe and contains the lines:
+
+    #!/bin/sh
+    PATH=/usr/sbin:/root/bin:${PATH}
+    logger -t dhcpcd IP address changed to $1
+    ddclient -proxy fasthttp.sympatico.ca -wildcard -ip $1 | logger -t 
ddclient 
+    exit 0
+
+Other DHCP clients may have another method of calling out to programs
+for updating DNS entries. 
+
+Alternatively, you may just configure ddclient to operate as a daemon
+and monitor your ethernet interface.
+
+-------------------------------------------------------------------------------
+USING DDCLIENT WITH dhclient
+
+If you are using the ISC DHCP client (dhclient), you can update 
+your DynDNS entry automatically every time your lease is obtained
+or renewed by creating an executable file named:
+    /etc/dhclient-exit-hooks
+ie.:
+    cp sample-etc_dhclient-exit-hooks /etc/dhclient-exit-hooks
+
+Edit /etc/dhclient-exit-hooks to change any options required.
+
+Alternatively, you may just configure ddclient to operate as a daemon
+and monitor your ethernet interface.
+
+-------------------------------------------------------------------------------
+$Id: README.md 157 2013-12-26 09:02:05Z wimpunk $
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/RELEASENOTE 
new/ddclient-3.8.2/RELEASENOTE
--- old/ddclient-3.8.1/RELEASENOTE      2011-07-11 23:13:44.000000000 +0200
+++ new/ddclient-3.8.2/RELEASENOTE      2013-12-26 10:04:25.000000000 +0100
@@ -1,10 +1,11 @@
-Once again it has been to before releasing a new version of ddclient.  This
-version has some minor changes which are all logged in the ChangeLog file.
+It's been a while and has been announced a while agobut here is new release of 
+ddclient. There are some important changes and some documentation is modified.
+A detailed overview can be found in ChangeLog but here's a quick overview:
+
+       * adding support by ChangeIP - patch send by Michele Giorato
+       * sha-1 patch send by pirast to allow Digest::SHA
+       * allow reuse of use - patch send by Rodrigo Araujo
+       * preventing deep sleep - see [bugs:#46]
+       * Fallback to iproute if ifconfig doesn't work send by Maccied Grela
 
-       * Fixing #28: FreeDNS.afraid.org changed api slightly
-       * Added dtdns-support
-       * Added support for longer password
-       * Added cisco-asa patch
-       * Added support for LoopiaDNS
 
-Hopefully we will be able to release the next version of ddclient much sooner.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/ddclient new/ddclient-3.8.2/ddclient
--- old/ddclient-3.8.1/ddclient 2011-07-11 23:04:21.000000000 +0200
+++ new/ddclient-3.8.2/ddclient 2013-12-26 10:04:25.000000000 +0100
@@ -1,7 +1,7 @@
 #!/usr/bin/perl -w
 #!/usr/local/bin/perl -w
 ######################################################################
-# $Id: ddclient 130 2011-07-11 21:02:07Z wimpunk $
+# $Id: ddclient 157 2013-12-26 09:02:05Z wimpunk $
 #
 # DDCLIENT - a Perl client for updating DynDNS information
 #
@@ -20,9 +20,9 @@
 use Sys::Hostname;
 use IO::Socket;
 
-my ($VERSION) = q$Revision: 130 $ =~ /(\d+)/;
+my ($VERSION) = q$Revision: 157 $ =~ /(\d+)/;
 
-my $version  = "3.8.1";
+my $version  = "3.8.2";
 my $programd  = $0; 
 $programd =~ s%^.*/%%;
 my $program   = $programd;
@@ -554,6 +554,16 @@
                          $variables{'service-common-defaults'},
                        ),
     },
+    'changeip' => {
+        'updateable' => undef,
+        'update'     => \&nic_changeip_update,
+        'examples'   => \&nic_changeip_examples,
+        'variables'  => merge(
+                         { 'server'       => setv(T_FQDNP,  1, 0, 1, 
'nic.changeip.com',    undef)    },
+                         { 'min-interval' => setv(T_DELAY,  0, 0, 1, 0, 
interval('5m')),},
+                         $variables{'service-common-defaults'},
+                       ),
+    },
     'dtdns' => {
        'updateable' => undef,
        'update'     => \&nic_dtdns_update,
@@ -723,6 +733,10 @@
 
                $0 = sprintf("%s - sleeping for %s seconds", $program, $left);
                $left -= sleep $delay;
+               # preventing deep sleep - see [bugs:#46]
+               if ($left > $daemon) {
+                       $left = $daemon;
+               }
        }
        $caught_hup = 0;
        $result = 0;
@@ -773,15 +787,16 @@
                foreach my $h (sort keys %config) {
                        next if $config{$h}{'protocol'} ne lc($s);
                        $examined{$h} = 1;
-                       my $use = $config{$h}{'use'} || opt('use');
-                       local $opt{$use} = $config{$h}{$use} if 
$config{$h}{$use};
-                       # bug #13: we should only do this once
-                       # use isn't enough, we have to save the origin to.
-                       # this will break the multiple ip stuff if use has 
-                       # been used twice for the same device.
+                       # we only do this once per 'use' and argument 
combination
+                       my $use = opt('use', $h);
+                       my $arg_ip = opt('ip', $h) || '';
+                       my $arg_fw = opt('fw', $h) || '';
+                       my $arg_if = opt('if', $h) || '';
+                       my $arg_web = opt('web', $h) || '';
+                       my $arg_cmd = opt('cmd', $h) || '';
                        my $ip = "";
-                       if (defined $iplist{$use}) {
-                               $ip = $iplist{$use};
+                       if (exists 
$iplist{$use}{$arg_ip}{$arg_fw}{$arg_if}{$arg_web}{$arg_cmd}) {
+                               $ip = 
$iplist{$use}{$arg_ip}{$arg_fw}{$arg_if}{$arg_web}{$arg_cmd};
                        } else {
                                $ip = get_ip($use, $h);
                                if (!defined $ip || !$ip) {
@@ -793,7 +808,7 @@
                                        warning("malformed IP address (%s)", 
$ip);
                                        next;
                                }
-                               $iplist{$use} = $ip;
+                               
$iplist{$use}{$arg_ip}{$arg_fw}{$arg_if}{$arg_web}{$arg_cmd} = $ip;
                        }
                        $config{$h}{'wantip'} = $ip;
                        next if !nic_updateable($h, $updateable);
@@ -1779,13 +1794,18 @@
 ######################################################################
 sub load_sha1_support {
     my $sha1_loaded = eval {require Digest::SHA1};
-    unless ($sha1_loaded) {
+    my $sha_loaded = eval {require Digest::SHA};
+    unless ($sha1_loaded || $sha_loaded) {
         fatal(<<"EOM");
-Error loading the Perl module Digest::SHA1 needed for freedns update.
-On Debian, the package libdigest-sha1-perl must be installed.
+Error loading the Perl module Digest::SHA1 or Digest::SHA needed for freedns 
update.
+On Debian, the package libdigest-sha1-perl or libdigest-sha-perl must be 
installed.
 EOM
     }
-    import  Digest::SHA1 (qw/sha1_hex/);
+    if($sha1_loaded) {
+       import  Digest::SHA1 (qw/sha1_hex/);
+    } elsif($sha_loaded) {
+       import  Digest::SHA (qw/sha1_hex/);
+    }
 }
 ######################################################################
 ## geturl
@@ -1928,7 +1948,7 @@
 sub get_ip {
     my $use = lc shift;
     my $h = shift;
-    my ($ip, $arg, $reply, $url, $skip) = (undef, opt($use), '');
+    my ($ip, $arg, $reply, $url, $skip) = (undef, opt($use, $h), '');
     $arg = '' unless $arg;
 
     if ($use eq 'ip') {
@@ -1938,6 +1958,7 @@
     } elsif ($use eq 'if') {
        $skip  = opt('if-skip', $h)  || '';
        $reply = `ifconfig $arg 2> /dev/null`;
+       $reply = `ip addr list dev $arg 2> /dev/null` if $?;
        $reply = '' if $?;
 
     } elsif ($use eq 'cmd') {
@@ -3588,7 +3609,79 @@
     }
 }
 
+###################################################################### 
+## nic_changeip_examples 
+###################################################################### 
+sub nic_changeip_examples {
+return <<EoEXAMPLE;
+
+o 'changeip'
+
+The 'changeip' protocol is used by DNS services offered by changeip.com.
+
+Configuration variables applicable to the 'changeip' protocol are:
+  protocol=changeip            ##
+  server=fqdn.of.service       ## defaults to nic.changeip.com
+  login=service-login          ## login name and password registered with the 
service
+  password=service-password    ##
+  fully.qualified.host         ## the host registered with the service.
+
+Example ${program}.conf file entries:
+  ## single host update
+  protocol=changeip,                                               \\
+  login=my-my-changeip.com-login,                                  \\
+  password=my-changeip.com-password                                \\
+  myhost.changeip.org
+
+EoEXAMPLE
+} 
+
 ######################################################################
+## nic_changeip_update
+##
+## adapted by Michele Giorato
+##
+## 
https://nic.ChangeIP.com/nic/update?hostname=host.example.org&myip=66.185.162.19
+##
+######################################################################
+sub nic_changeip_update {
+
+
+    debug("\nnic_changeip_update -------------------");
+
+    ## update each configured host
+    foreach my $h (@_) {
+       my $ip = delete $config{$h}{'wantip'};
+        info("setting IP address to %s for %s", $ip, $h);
+        verbose("UPDATE:","updating %s", $h);
+
+        my $url;
+        $url   = "http://$config{$h}{'server'}/nic/update";
+        $url  .= "?hostname=$h";
+        $url  .= "&ip=";
+        $url  .= $ip if $ip;
+
+               my $reply = geturl(opt('proxy'), $url, $config{$h}{'login'}, 
$config{$h}{'password'});
+        if (!defined($reply) || !$reply) {
+            failed("updating %s: Could not connect to %s.", $h, 
$config{$h}{'server'});
+            last;
+        }
+        last if !header_ok($h, $reply);
+
+        my @reply = split /\n/, $reply;
+        if (grep /success/i, @reply) {
+            $config{$h}{'ip'}     = $ip;
+            $config{$h}{'mtime'}  = $now;
+            $config{$h}{'status'} = 'good';
+            success("updating %s: good: IP address set to %s", $h, $ip);
+        } else {
+            $config{$h}{'status'} = 'failed';
+            warning("SENT:    %s", $url) unless opt('verbose');
+            warning("REPLIED: %s", $reply);
+            failed("updating %s: Invalid reply.", $h);
+        }
+    }
+}
 
 ######################################################################
 ## nic_dtdns_examples
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ddclient-3.8.1/sample-etc_ddclient.conf 
new/ddclient-3.8.2/sample-etc_ddclient.conf
--- old/ddclient-3.8.1/sample-etc_ddclient.conf 2011-07-11 23:04:21.000000000 
+0200
+++ new/ddclient-3.8.2/sample-etc_ddclient.conf 2013-12-26 10:04:25.000000000 
+0100
@@ -1,6 +1,6 @@
 ######################################################################
 ## 
-## $Id: sample-etc_ddclient.conf 125 2011-05-19 20:31:20Z wimpunk $
+## $Id: sample-etc_ddclient.conf 150 2013-04-28 14:55:34Z wimpunk $
 ##
 ## Define default global variables with lines like:
 ##     var=value [, var=value]*
@@ -179,6 +179,16 @@
 # my.domain.tld,other.domain.tld
 
 ##
+##
+## ChangeIP (changeip.com)
+##
+## single host update
+# protocol=changeip,                   \
+# login=my-my-changeip.com-login,      \
+# password=my-changeip.com-password    \
+# myhost.changeip.org
+
+##
 ## DtDNS (www.dtdns.com)
 ##
 # protocol=dtdns,

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to