Merge pull request #231 from ddclient/dead-provider
Remove dead provider
This commit is contained in:
commit
e621afe375
4 changed files with 8 additions and 199 deletions
|
|
@ -49,6 +49,8 @@ repository history](https://github.com/ddclient/ddclient/commits/master).
|
||||||
Rather than rely on the default, users should explicitly set the `use`
|
Rather than rely on the default, users should explicitly set the `use`
|
||||||
option.
|
option.
|
||||||
* The `fw-banlocal` option is deprecated and no longer does anything.
|
* The `fw-banlocal` option is deprecated and no longer does anything.
|
||||||
|
* Removed support for defunct dtdns service
|
||||||
|
* Removed support for defunct Hammernode service
|
||||||
|
|
||||||
## 2020-01-08 v3.9.1
|
## 2020-01-08 v3.9.1
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ on many dynamic DNS services.
|
||||||
Dynamic DNS services currently supported include:
|
Dynamic DNS services currently supported include:
|
||||||
|
|
||||||
DynDNS.com - See http://www.dyndns.com for details on obtaining a free account.
|
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.
|
Zoneedit - See http://www.zoneedit.com for details.
|
||||||
EasyDNS - See http://www.easydns.com for details.
|
EasyDNS - See http://www.easydns.com for details.
|
||||||
NameCheap - See http://www.namecheap.com for details
|
NameCheap - See http://www.namecheap.com for details
|
||||||
|
|
@ -19,7 +18,6 @@ Dynamic DNS services currently supported include:
|
||||||
Noip - See http://www.noip.com/ for details
|
Noip - See http://www.noip.com/ for details
|
||||||
Freedns - See http://freedns.afraid.org/ for details
|
Freedns - See http://freedns.afraid.org/ for details
|
||||||
ChangeIP - See http://www.changeip.com/ for details
|
ChangeIP - See http://www.changeip.com/ for details
|
||||||
dtdns - See http://www.dtdns.com/ for details
|
|
||||||
nsupdate - See nsupdate(1) and ddns-confgen(8) for details
|
nsupdate - See nsupdate(1) and ddns-confgen(8) for details
|
||||||
CloudFlare - See https://www.cloudflare.com/ for details
|
CloudFlare - See https://www.cloudflare.com/ for details
|
||||||
Google - See http://www.google.com/domains for details
|
Google - See http://www.google.com/domains for details
|
||||||
|
|
|
||||||
|
|
@ -117,15 +117,6 @@ ssl=yes # use ssl-support. Works with
|
||||||
# password=your-easydns-password \
|
# password=your-easydns-password \
|
||||||
# your.any.domain,your-2nd.any.domain
|
# your.any.domain,your-2nd.any.domain
|
||||||
|
|
||||||
##
|
|
||||||
## Hammernode (hn.org) dynamic addresses
|
|
||||||
##
|
|
||||||
# server=dup.hn.org, \
|
|
||||||
# protocol=hammernode1, \
|
|
||||||
# login=your-hn-login, \
|
|
||||||
# password=your-hn-password \
|
|
||||||
# your-hn-host.hn.org,your-2nd-hn-host.hn.org
|
|
||||||
|
|
||||||
##
|
##
|
||||||
## dslreports.com dynamic-host monitoring
|
## dslreports.com dynamic-host monitoring
|
||||||
##
|
##
|
||||||
|
|
@ -195,15 +186,6 @@ ssl=yes # use ssl-support. Works with
|
||||||
# password=my-changeip.com-password \
|
# password=my-changeip.com-password \
|
||||||
# myhost.changeip.org
|
# myhost.changeip.org
|
||||||
|
|
||||||
##
|
|
||||||
## DtDNS (www.dtdns.com)
|
|
||||||
##
|
|
||||||
# protocol=dtdns,
|
|
||||||
# server=www.dtdns.com,
|
|
||||||
# client=ddclient,
|
|
||||||
# password=my-dtdns.com-password
|
|
||||||
# myhost.dtdns.net, otherhost.dtdns.net
|
|
||||||
|
|
||||||
##
|
##
|
||||||
## CloudFlare (www.cloudflare.com)
|
## CloudFlare (www.cloudflare.com)
|
||||||
##
|
##
|
||||||
|
|
|
||||||
185
ddclient.in
185
ddclient.in
|
|
@ -494,16 +494,6 @@ my %services = (
|
||||||
'host' => setv(T_NUMBER, 1, 1, 0, undef),
|
'host' => setv(T_NUMBER, 1, 1, 0, undef),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'dtdns' => {
|
|
||||||
'updateable' => undef,
|
|
||||||
'update' => \&nic_dtdns_update,
|
|
||||||
'examples' => \&nic_dtdns_examples,
|
|
||||||
'variables' => {
|
|
||||||
%{$variables{'service-common-defaults'}},
|
|
||||||
'client' => setv(T_STRING, 0, 1, $program, undef),
|
|
||||||
'login' => setv(T_LOGIN, 0, 0, 'unused', undef),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'duckdns' => {
|
'duckdns' => {
|
||||||
'updateable' => undef,
|
'updateable' => undef,
|
||||||
'update' => \&nic_duckdns_update,
|
'update' => \&nic_duckdns_update,
|
||||||
|
|
@ -577,16 +567,6 @@ my %services = (
|
||||||
'server' => setv(T_FQDNP, 1, 0, 'domains.google.com', undef),
|
'server' => setv(T_FQDNP, 1, 0, 'domains.google.com', undef),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'hammernode1' => {
|
|
||||||
'updateable' => undef,
|
|
||||||
'update' => \&nic_hammernode1_update,
|
|
||||||
'examples' => \&nic_hammernode1_examples,
|
|
||||||
'variables' => {
|
|
||||||
%{$variables{'service-common-defaults'}},
|
|
||||||
'min-interval' => setv(T_DELAY, 0, 0, interval('5m'), 0),
|
|
||||||
'server' => setv(T_FQDNP, 1, 0, 'dup.hn.org', undef),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'namecheap' => {
|
'namecheap' => {
|
||||||
'updateable' => undef,
|
'updateable' => undef,
|
||||||
'update' => \&nic_namecheap_update,
|
'update' => \&nic_namecheap_update,
|
||||||
|
|
@ -2414,15 +2394,15 @@ Host definitions look like:
|
||||||
[name=value [,name=value]*]* a.host.domain [,b.host.domain] [login] [password]
|
[name=value [,name=value]*]* a.host.domain [,b.host.domain] [login] [password]
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
protocol=hammernode1, \\
|
protocol=noip, \\
|
||||||
login=my-hn-login, password=my-hn-password myhost.hn.org
|
login=your-username, password=your-password myhost.noip.com
|
||||||
login=my-login, password=my-password myhost.dyndns.org,my2nd.dyndns.org
|
login=your-username, password=your-password myhost.noip.com,myhost2.noip.com
|
||||||
|
|
||||||
specifies two host definitions.
|
specifies two host definitions.
|
||||||
|
|
||||||
The first definition will use the hammernode1 protocol,
|
The first definition will use the noip protocol,
|
||||||
my-hn-login and my-hn-password to update the ip-address of
|
your-username and your-password to update the ip-address of
|
||||||
myhost.hn.org and my2ndhost.hn.org.
|
myhost.noip.com and my2ndhost.noip.com.
|
||||||
|
|
||||||
The second host definition will use the current default protocol
|
The second host definition will use the current default protocol
|
||||||
('dyndns2'), my-login and my-password to update the ip-address of
|
('dyndns2'), my-login and my-password to update the ip-address of
|
||||||
|
|
@ -3073,81 +3053,7 @@ sub nic_dslreports1_update {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
######################################################################
|
|
||||||
## nic_hammernode1_examples
|
|
||||||
######################################################################
|
|
||||||
sub nic_hammernode1_examples {
|
|
||||||
return <<"EoEXAMPLE";
|
|
||||||
o 'hammernode1'
|
|
||||||
|
|
||||||
The 'hammernode1' protocol is the protocol used by the free dynamic
|
|
||||||
DNS service offered by Hammernode at www.hn.org
|
|
||||||
|
|
||||||
Configuration variables applicable to the 'hammernode1' protocol are:
|
|
||||||
protocol=hammernode1 ##
|
|
||||||
server=fqdn.of.service ## defaults to members.dyndns.org
|
|
||||||
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=hammernode1, \\
|
|
||||||
login=my-hn.org-login, \\
|
|
||||||
password=my-hn.org-password \\
|
|
||||||
myhost.hn.org
|
|
||||||
|
|
||||||
## multiple host update
|
|
||||||
protocol=hammernode1, \\
|
|
||||||
login=my-hn.org-login, \\
|
|
||||||
password=my-hn.org-password, \\
|
|
||||||
myhost.hn.org,my2ndhost.hn.org
|
|
||||||
EoEXAMPLE
|
|
||||||
}
|
|
||||||
######################################################################
|
|
||||||
## nic_hammernode1_update
|
|
||||||
######################################################################
|
|
||||||
sub nic_hammernode1_update {
|
|
||||||
debug("\nnic_hammernode1_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'}/vanity/update";
|
|
||||||
$url .= "?ver=1";
|
|
||||||
$url .= "&ip=";
|
|
||||||
$url .= $ip if $ip;
|
|
||||||
|
|
||||||
my $reply = geturl({
|
|
||||||
proxy => opt('proxy'),
|
|
||||||
url => $url,
|
|
||||||
login => $config{$h}{'login'},
|
|
||||||
password => $config{$h}{'password'},
|
|
||||||
}) // '';
|
|
||||||
if (!$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 /<!--\s+DDNS_Response_Code=101\s+-->/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_zoneedit1_examples
|
## nic_zoneedit1_examples
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
@ -4038,85 +3944,6 @@ sub nic_changeip_update {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
######################################################################
|
|
||||||
## nic_dtdns_examples
|
|
||||||
######################################################################
|
|
||||||
sub nic_dtdns_examples {
|
|
||||||
return <<"EoEXAMPLE";
|
|
||||||
o 'dtdns'
|
|
||||||
|
|
||||||
The 'dtdns' protocol is the protocol used by the dynamic hostname services
|
|
||||||
of the 'DtDNS' dns services. This is currently used by the free
|
|
||||||
dynamic DNS service offered by www.dtdns.com.
|
|
||||||
|
|
||||||
Configuration variables applicable to the 'dtdns' protocol are:
|
|
||||||
protocol=dtdns ##
|
|
||||||
server=www.fqdn.of.service ## defaults to www.dtdns.com
|
|
||||||
password=service-password ## password registered with the service
|
|
||||||
client=name_of_updater ## defaults to $program (10 chars max, no spaces)
|
|
||||||
fully.qualified.host ## the host registered with the service.
|
|
||||||
|
|
||||||
Example ${program}.conf file entries:
|
|
||||||
## single host update
|
|
||||||
protocol=dtdns, \\
|
|
||||||
password=my_password, \\
|
|
||||||
client=ddclient \\
|
|
||||||
myhost.dtdns.net
|
|
||||||
|
|
||||||
EoEXAMPLE
|
|
||||||
}
|
|
||||||
|
|
||||||
######################################################################
|
|
||||||
## nic_dtdns_update
|
|
||||||
## by Achim Franke
|
|
||||||
######################################################################
|
|
||||||
sub nic_dtdns_update {
|
|
||||||
debug("\nnic_dtdns_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);
|
|
||||||
|
|
||||||
# Set the URL that we're going to to update
|
|
||||||
my $url;
|
|
||||||
$url = "http://$config{$h}{'server'}/api/autodns.cfm";
|
|
||||||
$url .= "?id=";
|
|
||||||
$url .= $h;
|
|
||||||
$url .= "&pw=";
|
|
||||||
$url .= $config{$h}{'password'};
|
|
||||||
$url .= "&ip=";
|
|
||||||
$url .= $ip;
|
|
||||||
$url .= "&client=";
|
|
||||||
$url .= $config{$h}{'client'};
|
|
||||||
|
|
||||||
# Try to get URL
|
|
||||||
my $reply = geturl({ proxy => opt('proxy'), url => $url });
|
|
||||||
|
|
||||||
# No response, declare as failed
|
|
||||||
if (!defined($reply) || !$reply) {
|
|
||||||
failed("updating %s: Could not connect to %s.", $h, $config{$h}{'server'});
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
last if !header_ok($h, $reply);
|
|
||||||
|
|
||||||
# Response found, just declare as success (this is ugly, we need more error checking)
|
|
||||||
if ($reply =~ /now\spoints\sto/) {
|
|
||||||
$config{$h}{'ip'} = $ip;
|
|
||||||
$config{$h}{'mtime'} = $now;
|
|
||||||
$config{$h}{'status'} = 'good';
|
|
||||||
success("updating %s: good: IP address set to %s", $h, $ip);
|
|
||||||
} else {
|
|
||||||
my @reply = split /\n/, $reply;
|
|
||||||
my $returned = pop(@reply);
|
|
||||||
$config{$h}{'status'} = 'failed';
|
|
||||||
failed("updating %s: Server said: '%s'", $h, $returned);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
######################################################################
|
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
## nic_googledomains_examples
|
## nic_googledomains_examples
|
||||||
##
|
##
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue