This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, next has been updated via 2f9e90ee1cfc7d535f69be244227b27a9260ee1d (commit) via 9b81a18eb9f6a97ff42427f9b8a3bece234fd88a (commit) via 7eb25cb302c28a7969a160a8672df6744c0b85af (commit) from 654a8ece848581428d91e32ff511956e840b688f (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 2f9e90ee1cfc7d535f69be244227b27a9260ee1d Author: Michael Tremer michael.tremer@ipfire.org Date: Tue Jun 17 19:26:28 2014 +0200
core80: Ship setddns.pl.
commit 9b81a18eb9f6a97ff42427f9b8a3bece234fd88a Merge: 654a8ec 7eb25cb Author: Michael Tremer michael.tremer@ipfire.org Date: Tue Jun 17 19:24:29 2014 +0200
Merge remote-tracking branch 'ferstl/dynu-ddns-fix' into next
commit 7eb25cb302c28a7969a160a8672df6744c0b85af Author: Stefan Ferstl st.ferstl@gmail.com Date: Tue Jun 17 11:22:21 2014 +0200
DDNS: Fix API call for the "Dynu" DDNS service This affects the DDNS service "dynu.ca dyn.ee dynserv.(ca|org|net|com)". DNS updates using this service were made using the URL http://dynserv.ca/ . However, the domain dynserv.ca does not exist anymore. The Dynu service is now only reachable via the dynu.com domain. This commit changes the API call according to Dynu's specification on http://www.dynu.com/Default.aspx?page=dnsapi .
-----------------------------------------------------------------------
Summary of changes: config/rootfiles/core/80/filelists/files | 1 + src/scripts/setddns.pl | 17 ++++++++--------- 2 files changed, 9 insertions(+), 9 deletions(-)
Difference in files: diff --git a/config/rootfiles/core/80/filelists/files b/config/rootfiles/core/80/filelists/files index 409e5fe..82e4376 100644 --- a/config/rootfiles/core/80/filelists/files +++ b/config/rootfiles/core/80/filelists/files @@ -1,2 +1,3 @@ etc/system-release etc/issue +usr/local/bin/setddns.pl diff --git a/src/scripts/setddns.pl b/src/scripts/setddns.pl index 5e77fce..5a19565 100644 --- a/src/scripts/setddns.pl +++ b/src/scripts/setddns.pl @@ -632,23 +632,22 @@ if ($ip ne $ipcache) { $settings{'HOSTDOMAIN'} = "$settings{'HOSTNAME'}.$settings{'DOMAIN'}"; }
- my ($out, $response) = Net::SSLeay::get_http( 'dynserv.ca', - 80, - "/dyn/dynengine.cgi?func=set&name=$settings{'LOGIN'}&pass=$settings{'PASSWORD'}&ip=$ip&domain=$settings{'DOMAIN'}", + my ($out, $response) = Net::SSLeay::get_https( 'api.dynu.com', + 443, + "/nic/update?hostname=$settings{'HOSTDOMAIN'}&myip=$ip&username=$settings{'LOGIN'}&password=$settings{'PASSWORD'}", Net::SSLeay::make_headers('User-Agent' => 'IPFire' ) ); - #Valid responses from service are: - # 02 == Domain already exists, refreshing data for ... => xxx.xxx.xxx.xxx - # + # Valid responses are 'good xxx.xxx.xxx.xxx', 'nochg' + # see http://www.dynu.com/Default.aspx?page=dnsapi for further details if ($response =~ m%HTTP/1.. 200 OK%) { - if ( $out !~ m/Domain already exists, refreshing data for/ig ) { + if ( $out !~ m/^(good|nochg)/ ) { &General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : failure ($out)"); } else { - &General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : success"); + &General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : success ($out)"); $success++; } } else { - &General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : failure (could not connect to server)"); + &General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : failure (could not connect to server---$out-$response)"); } } elsif ($settings{'SERVICE'} eq 'udmedia') {
hooks/post-receive -- IPFire 2.x development tree