Merge pull request #231 from ddclient/dead-provider

Remove dead provider
This commit is contained in:
Richard Hansen 2020-07-06 12:47:55 -04:00 committed by GitHub
commit e621afe375
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 8 additions and 199 deletions

View file

@ -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

View file

@ -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

View file

@ -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)
## ##

View file

@ -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
## ##