oddments/ddns.git
4 years agoCatch SSL errors
Michael Tremer [Mon, 3 Aug 2015 19:00:57 +0000 (20:00 +0100)] 
Catch SSL errors

Properly catch SSL errors. When a connection could not be
established, the ddns client will try again. If an invalid
certificate is presented future updates are held back for
the usual time.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoBump version to 008 008
Stefan Schantl [Thu, 9 Jul 2015 19:44:05 +0000 (21:44 +0200)] 
Bump version to 008

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agonamecheap: Fix undeclared variable.
Stefan Schantl [Thu, 9 Jul 2015 19:29:48 +0000 (21:29 +0200)] 
namecheap: Fix undeclared variable.

Fixes #10897.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoAdd DNSmadeEasy as new provider.
Marco Götze [Wed, 22 Apr 2015 18:36:07 +0000 (20:36 +0200)] 
Add DNSmadeEasy as new provider.

Fixes #10811.

Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoCatch 'Internal Server Error' on update
Michael Tremer [Sat, 4 Jul 2015 10:25:17 +0000 (12:25 +0200)] 
Catch 'Internal Server Error' on update

When there is an internal server error, we won't log an error
and hold off updates for a while. This is an error on the
provider's side and the client must retry in order to update
the hostname.

This error was seen with selfhost.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoSoft-fail on network errors
Michael Tremer [Tue, 23 Jun 2015 22:34:33 +0000 (22:34 +0000)] 
Soft-fail on network errors

When an update could not be performed because of a network
error (host unreachable/no route to host) we should not
log an error to the database and hold off updates for a
long time.

Those errors are usually caused by local configuration
errors and the servers of the providers should not be
bothered with update requests as those won't reach them
any way.

The client will try to resend the update at the next
update call.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoCatch "no route to host" errors
Michael Tremer [Tue, 23 Jun 2015 22:34:32 +0000 (22:34 +0000)] 
Catch "no route to host" errors

When there is no route to a target host, we will throw
a DDNSNetworkError so that this error can be handled afterwards.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agoconfigure: Fix systemd detection
Michael Tremer [Tue, 23 Jun 2015 22:34:50 +0000 (22:34 +0000)] 
configure: Fix systemd detection

libsystem-daemon does not exist any more in newer versions of
systemd so that we will need to check libsystemd.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
4 years agodatabase: Open database for the search operations, too
Michael Tremer [Sun, 26 Apr 2015 18:15:33 +0000 (20:15 +0200)] 
database: Open database for the search operations, too

4 years agoUpdate .gitignore for systemd service files
Michael Tremer [Sat, 25 Apr 2015 11:22:39 +0000 (13:22 +0200)] 
Update .gitignore for systemd service files

4 years agoPerform lazy initialization of the database
Michael Tremer [Sat, 25 Apr 2015 11:18:07 +0000 (13:18 +0200)] 
Perform lazy initialization of the database

The database will only be initialized when it is actually
needed. That makes starting up ddns a bit faster and allows
us to execute it as non-root for simple commands like
"list-providers".

If the database path is not writable at all, the database
feature is disable and an error message is logged. This
will hopefully help us to perform the DNS update even when
there is a local misconfiguration.

4 years agoUpdate translations
Michael Tremer [Sat, 4 Apr 2015 11:19:55 +0000 (13:19 +0200)] 
Update translations

4 years agoAdd joker.com as new provider.
Leo-Andres Hoffmann [Tue, 31 Mar 2015 20:23:14 +0000 (22:23 +0200)] 
Add joker.com as new provider.

commit 0ad7929664513caf1e03b93af2ae4cdcf04a80ef
Author: Leo-Andres <hofmann@leo-andres.de>
Date:   Tue Mar 17 01:55:27 2015 +0100

    Add provider joker.com

commit 4eb19f1c582aa32c08d150744449771ad7566eab
Author: Leo-Andres <hofmann@leo-andres.de>
Date:   Tue Mar 17 01:54:52 2015 +0100

    Add provider joker.com

commit 0d3d890bc94b3eec49d44f87d66033c622b5bfd9
Author: Leo-Andres <hofmann@leo-andres.de>
Date:   Tue Mar 17 01:54:15 2015 +0100

    Add provider joker.com

4 years agoBump version to 007 007
Stefan Schantl [Wed, 4 Mar 2015 19:41:15 +0000 (20:41 +0100)] 
Bump version to 007

4 years agoMerge branch 'strato-dep-mx'
Stefan Schantl [Wed, 4 Mar 2015 19:40:25 +0000 (20:40 +0100)] 
Merge branch 'strato-dep-mx'

4 years agostrato: Add mx and backupmx flags to update request.
Stefan Schantl [Mon, 2 Mar 2015 20:07:00 +0000 (21:07 +0100)] 
strato: Add mx and backupmx flags to update request.

Add the deprecated mx and backupmx flags to the update request for strato,
because this provider still uses them. The providers implementation anyway seems
to be broken because already set entries get lost when an update is performed
without given mx and backupmx flags.

Fixes #10754.

4 years agoAdd support for systemd.
Stefan Schantl [Thu, 19 Feb 2015 20:29:46 +0000 (21:29 +0100)] 
Add support for systemd.

This commit adds an optional support for systemd and contains
a service file to execute the client and a systemd timer file for
a periodic execution.

Fixes #10698.

4 years agoAdd domains.google.com as provider.
Stefan Schantl [Wed, 18 Feb 2015 17:44:27 +0000 (18:44 +0100)] 
Add domains.google.com as provider.

Fixes #10720.

4 years agoAdd loopia.se as new provider.
Stefan Schantl [Wed, 18 Feb 2015 17:04:40 +0000 (18:04 +0100)] 
Add loopia.se as new provider.

Fixes #10744.

4 years ago Bump version to 006 006
Stefan Schantl [Sun, 8 Feb 2015 22:07:34 +0000 (23:07 +0100)] 
 Bump version to 006

4 years agoMerge remote-tracking branch 'origin/man-pages'
Stefan Schantl [Sun, 8 Feb 2015 22:05:27 +0000 (23:05 +0100)] 
Merge remote-tracking branch 'origin/man-pages'

Conflicts:
configure.ac

4 years agoAdd 'xlhost.de' as new provider.
Michael Buhr [Tue, 14 Oct 2014 17:40:39 +0000 (23:40 +0600)] 
Add 'xlhost.de' as new provider.

4 years agoAdd ddnss.de as new provider.
Stefan Schantl [Sat, 24 Jan 2015 14:01:24 +0000 (15:01 +0100)] 
Add ddnss.de as new provider.

4 years agoMerge branch 'zoneedit-10645'
Stefan Schantl [Thu, 22 Jan 2015 17:21:47 +0000 (18:21 +0100)] 
Merge branch 'zoneedit-10645'

4 years agoeasydns.com: Provider does not use the DynDNS 2 Protocol.
Stefan Schantl [Thu, 22 Jan 2015 17:03:05 +0000 (18:03 +0100)] 
easydns.com: Provider does not use the DynDNS 2 Protocol.

The provider uses return codes which are different from the used one in the
DynDNS 2 Protocol. Therefore we directly need to handle them in the easydns class.

The provider also supports to remove the assigned address from a host, but currently
only supports IPv4.

4 years agospdns.de: Fix authentication.
Stefan Schantl [Mon, 5 Jan 2015 20:37:55 +0000 (21:37 +0100)] 
spdns.de: Fix authentication.

There was a simple copy and paste issue which prevents a
correct authentication with username and password against the
providers API.

4 years agoAdd changeip.com as new provider.
Stefan Schantl [Wed, 22 Oct 2014 19:39:09 +0000 (21:39 +0200)] 
Add changeip.com as new provider.

Fixes #10639.

4 years agozoneedit.com: Provider do not use the DynDNS2 protocol.
Stefan Schantl [Wed, 22 Oct 2014 17:50:52 +0000 (19:50 +0200)] 
zoneedit.com: Provider do not use the DynDNS2 protocol.

Fixes #10645.

4 years agoBump version to 005 005
Michael Tremer [Wed, 15 Oct 2014 21:52:57 +0000 (23:52 +0200)] 
Bump version to 005

4 years agoUpdate translations
Michael Tremer [Mon, 29 Sep 2014 14:29:15 +0000 (14:29 +0000)] 
Update translations

4 years agodatabase: Add an index on the hostname column
Michael Tremer [Mon, 29 Sep 2014 14:19:36 +0000 (14:19 +0000)] 
database: Add an index on the hostname column

4 years agonsupdate.info: Don't repeat failed updates
Michael Tremer [Mon, 29 Sep 2014 14:10:09 +0000 (14:10 +0000)] 
nsupdate.info: Don't repeat failed updates

As requested by Thomas Waldmann <twaldmann@thinkmo.de>
from nsupdate.info (#10603)

4 years agoHold back further updates after failed updates for a while
Michael Tremer [Mon, 29 Sep 2014 14:03:46 +0000 (14:03 +0000)] 
Hold back further updates after failed updates for a while

Partly addresses #10603

4 years agoImprove man pages
Michael Tremer [Thu, 25 Sep 2014 12:50:27 +0000 (14:50 +0200)] 
Improve man pages

4 years agoconfigure: Fix typos
Michael Tremer [Thu, 25 Sep 2014 12:14:52 +0000 (14:14 +0200)] 
configure: Fix typos

5 years agoUpdate translations
Michael Tremer [Tue, 16 Sep 2014 18:50:52 +0000 (20:50 +0200)] 
Update translations

5 years agonsupdate.info: Use generic url for IPv4 and v6 address updates.
Stefan Schantl [Sun, 14 Sep 2014 20:47:38 +0000 (22:47 +0200)] 
nsupdate.info: Use generic url for IPv4 and v6 address updates.

5 years agoDynU: Fix typo in function call
Michael Tremer [Sun, 14 Sep 2014 20:18:53 +0000 (20:18 +0000)] 
DynU: Fix typo in function call

5 years agoAdd runtime check for providers if all dependencies are met
Michael Tremer [Sun, 14 Sep 2014 19:54:13 +0000 (19:54 +0000)] 
Add runtime check for providers if all dependencies are met

5 years agoAdd option to ignore removal of IP addresses
Michael Tremer [Sun, 14 Sep 2014 19:30:27 +0000 (19:30 +0000)] 
Add option to ignore removal of IP addresses

On systems that had connectivity to e.g. IPv6 which they don't
have any more need to remove the IPv6 address from the DNS system.
Most providers do not support this and hence this case is completely
ignored and the invalid record is left in the DNS system.

5 years agoMerge branch 'database'
Michael Tremer [Sun, 14 Sep 2014 18:10:43 +0000 (18:10 +0000)] 
Merge branch 'database'

5 years agoAdd myonlineportal.net as new provider.
Gerald Hansen [Sun, 14 Sep 2014 09:41:03 +0000 (11:41 +0200)] 
Add myonlineportal.net as new provider.

Fixes #10623.

5 years agonsupdate.info: Use "token" instead of "secret" in config file.
Stefan Schantl [Wed, 10 Sep 2014 19:10:24 +0000 (21:10 +0200)] 
nsupdate.info: Use "token" instead of "secret" in config file.

For compatiblity reasons to previously used "secret" is still supported.

5 years agospdns.de: Add support for IPv6.
Stefan Schantl [Wed, 10 Sep 2014 18:35:42 +0000 (20:35 +0200)] 
spdns.de: Add support for IPv6.

Fixes #10585.

5 years agoCreate database to track updates that have been performed
Michael Tremer [Tue, 9 Sep 2014 10:42:20 +0000 (10:42 +0000)] 
Create database to track updates that have been performed

5 years agoMove away from the proto = configuration option
Michael Tremer [Wed, 10 Sep 2014 13:40:08 +0000 (13:40 +0000)] 
Move away from the proto = configuration option

Configuring this by the user does not make much sense
and makes configuration more complicated.

The update() method now will call update_protocol()
for IPv6 and IPv4 (if both are supported) and execute
an update for each protocol individually.

5 years agoAdd support for generating manpages.
Stefan Schantl [Tue, 9 Sep 2014 20:33:53 +0000 (22:33 +0200)] 
Add support for generating manpages.

5 years agoAdd xsl stylesheet for html page generation.
Stefan Schantl [Tue, 9 Sep 2014 20:33:20 +0000 (22:33 +0200)] 
Add xsl stylesheet for html page generation.

5 years agoAdd ddns.conf.5 manpage.
Stefan Schantl [Tue, 9 Sep 2014 17:40:05 +0000 (19:40 +0200)] 
Add ddns.conf.5 manpage.

5 years agoAdd ddns.1 manpage.
Stefan Schantl [Sun, 27 Jul 2014 19:26:25 +0000 (21:26 +0200)] 
Add ddns.1 manpage.

5 years agozzzz.io: Also support IPv6
Michael Tremer [Sun, 7 Sep 2014 18:58:29 +0000 (18:58 +0000)] 
zzzz.io: Also support IPv6

5 years agoHandle HTTP error 404 generically
Michael Tremer [Sun, 7 Sep 2014 18:42:12 +0000 (18:42 +0000)] 
Handle HTTP error 404 generically

5 years agoAdd a missing handle information to sample.conf
Stefan Schantl [Sun, 7 Sep 2014 13:32:36 +0000 (15:32 +0200)] 
Add a missing handle information to sample.conf

5 years agoAdd zzzz.io as new provider.
Stefan Schantl [Sun, 7 Sep 2014 12:28:00 +0000 (14:28 +0200)] 
Add zzzz.io as new provider.

Only added support for IPv4 because of #10608. Filed a new bug for
adding the IPv6 support as #10612 when the locking issue has been solved.

Fixes #10584.

5 years agoMerge branch 'nsupdate.info-fixes'
Stefan Schantl [Wed, 3 Sep 2014 06:01:27 +0000 (08:01 +0200)] 
Merge branch 'nsupdate.info-fixes'

5 years agoMerge branch 'dyns.cx'
Stefan Schantl [Wed, 3 Sep 2014 06:00:57 +0000 (08:00 +0200)] 
Merge branch 'dyns.cx'

5 years agonsupdate.info: Fix website URL.
Stefan Schantl [Wed, 3 Sep 2014 05:55:12 +0000 (07:55 +0200)] 
nsupdate.info: Fix website URL.

5 years agospdns.de: Add support for token based auth.
Stefan Schantl [Thu, 28 Aug 2014 20:11:52 +0000 (22:11 +0200)] 
spdns.de: Add support for token based auth.

Fixes #10587.

5 years agoAdd dyns.cx|net as new provider.
Stefan Schantl [Thu, 28 Aug 2014 19:29:59 +0000 (21:29 +0200)] 
Add dyns.cx|net as new provider.

5 years agoMerge remote-tracking branch 'stevee/ddns-fixes'
Michael Tremer [Thu, 28 Aug 2014 18:56:42 +0000 (20:56 +0200)] 
Merge remote-tracking branch 'stevee/ddns-fixes'

5 years agoMerge remote-tracking branch 'stevee/fixes'
Michael Tremer [Thu, 28 Aug 2014 18:56:38 +0000 (20:56 +0200)] 
Merge remote-tracking branch 'stevee/fixes'

5 years agoAdd "badagent" response handling for DDNSProtocolDynDNS2.
Stefan Schantl [Thu, 28 Aug 2014 18:47:37 +0000 (20:47 +0200)] 
Add "badagent" response handling for DDNSProtocolDynDNS2.

5 years agoFix typo in DynDNS2 proto response code.
Stefan Schantl [Thu, 28 Aug 2014 18:44:27 +0000 (20:44 +0200)] 
Fix typo in DynDNS2 proto response code.

5 years agoAdded domopoli.de to README
Christian Erpelding [Thu, 28 Aug 2014 13:03:40 +0000 (15:03 +0200)] 
Added domopoli.de to README

5 years agoAdded domopoli.de as DDNS provider
Christian Erpelding [Wed, 27 Aug 2014 12:00:16 +0000 (14:00 +0200)] 
Added domopoli.de as DDNS provider

5 years agoAdded support for selecting a DNS zone nsupdate should use.
Manuel Worschech [Sat, 16 Aug 2014 20:17:04 +0000 (22:17 +0200)] 
Added support for selecting a DNS zone nsupdate should use.

5 years agoBump version to 004. 004
Michael Tremer [Tue, 5 Aug 2014 17:47:15 +0000 (19:47 +0200)] 
Bump version to 004.

5 years agoPrint "already up to date" message only in debugging mode
Michael Tremer [Tue, 5 Aug 2014 17:37:54 +0000 (19:37 +0200)] 
Print "already up to date" message only in debugging mode

5 years agoUpdate translations.
Michael Tremer [Mon, 4 Aug 2014 14:58:06 +0000 (14:58 +0000)] 
Update translations.

5 years agoCatch temporary problems with resolving DNS entries.
Michael Tremer [Mon, 4 Aug 2014 14:53:54 +0000 (14:53 +0000)] 
Catch temporary problems with resolving DNS entries.

5 years agoUse raw configuration parser.
Michael Tremer [Mon, 4 Aug 2014 14:33:48 +0000 (14:33 +0000)] 
Use raw configuration parser.

Using special python formatting characters like the percent
symbol (%) was not possible.

5 years agoAdd a program prefix to syslog messages.
Michael Tremer [Thu, 24 Jul 2014 11:23:36 +0000 (13:23 +0200)] 
Add a program prefix to syslog messages.

5 years agoUpdate translations.
Michael Tremer [Sat, 19 Jul 2014 10:42:29 +0000 (12:42 +0200)] 
Update translations.

5 years agoREADME: Mention support for nsupdate
Michael Tremer [Sat, 19 Jul 2014 10:39:50 +0000 (12:39 +0200)] 
README: Mention support for nsupdate

5 years agoBump version to 003. 003
Michael Tremer [Fri, 18 Jul 2014 13:29:29 +0000 (15:29 +0200)] 
Bump version to 003.

5 years agodynu: Fix updating if no IPv6 address is available.
Stefan Schantl [Tue, 15 Jul 2014 10:03:43 +0000 (12:03 +0200)] 
dynu: Fix updating if no IPv6 address is available.

5 years agoentrydns: Drop accidently commited send method.
Stefan Schantl [Tue, 15 Jul 2014 09:23:04 +0000 (11:23 +0200)] 
entrydns: Drop accidently commited send method.

5 years agoLog HTTP header for status codes != 200
Michael Tremer [Mon, 14 Jul 2014 15:50:20 +0000 (15:50 +0000)] 
Log HTTP header for status codes != 200

5 years agoFix inheritance of DynDNS protocol 2 class
Michael Tremer [Mon, 14 Jul 2014 15:49:52 +0000 (15:49 +0000)] 
Fix inheritance of DynDNS protocol 2 class

5 years agoDon't log a successful image if no update was performed
Michael Tremer [Mon, 14 Jul 2014 15:39:36 +0000 (15:39 +0000)] 
Don't log a successful image if no update was performed

When no update is necessary, there should no successful
message be logged.

5 years agoMerge remote-tracking branch 'stevee/opendns'
Michael Tremer [Mon, 14 Jul 2014 12:06:38 +0000 (14:06 +0200)] 
Merge remote-tracking branch 'stevee/opendns'

5 years agoAdd opendns as new provider.
Stefan Schantl [Sun, 13 Jul 2014 15:44:33 +0000 (17:44 +0200)] 
Add opendns as new provider.

5 years agoAdd entrydns as new provider.
Stefan Schantl [Sun, 13 Jul 2014 15:34:41 +0000 (17:34 +0200)] 
Add entrydns as new provider.

5 years agoBump version to 002. 002
Michael Tremer [Fri, 11 Jul 2014 13:46:50 +0000 (15:46 +0200)] 
Bump version to 002.

5 years agoMerge remote-tracking branch 'stevee/fixes'
Michael Tremer [Wed, 9 Jul 2014 19:03:06 +0000 (19:03 +0000)] 
Merge remote-tracking branch 'stevee/fixes'

5 years agoMerge remote-tracking branch 'stevee/nsupdate.info'
Michael Tremer [Wed, 9 Jul 2014 18:58:15 +0000 (18:58 +0000)] 
Merge remote-tracking branch 'stevee/nsupdate.info'

5 years agoAdd nsupdate.info as new provider.
Stefan Schantl [Wed, 9 Jul 2014 18:56:11 +0000 (20:56 +0200)] 
Add nsupdate.info as new provider.

5 years agoAdd enom.com as new provider.
Stefan Schantl [Wed, 9 Jul 2014 17:12:12 +0000 (19:12 +0200)] 
Add enom.com as new provider.

5 years agoMove XML response parser into own class.
Stefan Schantl [Wed, 9 Jul 2014 16:49:44 +0000 (18:49 +0200)] 
Move XML response parser into own class.

5 years agoFreeDNSAfraid: Readd missing lines.
Stefan Schantl [Wed, 9 Jul 2014 16:34:01 +0000 (18:34 +0200)] 
FreeDNSAfraid: Readd missing lines.

Readd missing lines which accidently have been removed while fixing merge conflicts.

5 years agoconfigure: Display some more variables at the end of the script execution
Michael Tremer [Tue, 8 Jul 2014 18:06:16 +0000 (18:06 +0000)] 
configure: Display some more variables at the end of the script execution

5 years agoconfigure: Check for existance of nsupdate
Michael Tremer [Tue, 8 Jul 2014 18:04:02 +0000 (18:04 +0000)] 
configure: Check for existance of nsupdate

5 years agoFix cathing errors.
Michael Tremer [Mon, 7 Jul 2014 18:26:40 +0000 (18:26 +0000)] 
Fix cathing errors.

5 years agoAdd support for the BIND nsupdate utility
Michael Tremer [Mon, 7 Jul 2014 18:25:14 +0000 (18:25 +0000)] 
Add support for the BIND nsupdate utility

5 years agoBump version to 001. 001
Michael Tremer [Sun, 6 Jul 2014 09:24:49 +0000 (11:24 +0200)] 
Bump version to 001.

5 years agoAllow a missing [config] section.
Michael Tremer [Sun, 6 Jul 2014 09:23:57 +0000 (11:23 +0200)] 
Allow a missing [config] section.

5 years agoAutomatically register all provider classes.
Michael Tremer [Sat, 5 Jul 2014 22:05:24 +0000 (00:05 +0200)] 
Automatically register all provider classes.

5 years agoFix broken link.
Michael Tremer [Sat, 5 Jul 2014 21:43:55 +0000 (23:43 +0200)] 
Fix broken link.

5 years agoMove DynDNS protocol into an extra class.
Michael Tremer [Sat, 5 Jul 2014 21:36:48 +0000 (23:36 +0200)] 
Move DynDNS protocol into an extra class.

Therefore we cannot accidentially inherit anything that
we don't want to inherit from the DynDNS provider class.

5 years agoAdd README file.
Michael Tremer [Wed, 25 Jun 2014 11:16:12 +0000 (13:16 +0200)] 
Add README file.