Compare commits
7 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 0173d7bb82 | |||
| 420b1c3286 | |||
| 4cb4a36158 | |||
|
|
5b2aaac98a | ||
|
|
9003ab34c2 | ||
| 6d967fb725 | |||
| a2d706ce18 |
283
Revert-tests-only-skip-HTTPD-tests.patch
Normal file
283
Revert-tests-only-skip-HTTPD-tests.patch
Normal file
@@ -0,0 +1,283 @@
|
||||
From 1cd1de937f329d9bcf510ffe2ae1f5f02b626b51 Mon Sep 17 00:00:00 2001
|
||||
From: vlefebvre <valentin.lefebvre@suse.com>
|
||||
Date: Mon, 10 Mar 2025 09:42:06 +0100
|
||||
Subject: [PATCH] Revert tests only skip HTTPD tests
|
||||
|
||||
This reverts commit 8cf322e1628723c4ad15c378d68dfe52d44729c4.
|
||||
---
|
||||
configure.ac | 3 +--
|
||||
t/geturl_connectivity.pl | 7 ++++---
|
||||
t/lib/ddclient/t/HTTPD.pm | 35 +++++------------------------------
|
||||
t/protocol_directnic.pl | 7 ++++---
|
||||
t/protocol_dnsexit2.pl | 7 ++++---
|
||||
t/protocol_dyndns2.pl | 6 ++++--
|
||||
t/skip.pl | 7 ++++---
|
||||
t/ssl-validate.pl | 6 ++++--
|
||||
t/update_nics.pl | 7 ++++---
|
||||
t/use_web.pl | 7 ++++---
|
||||
10 files changed, 38 insertions(+), 54 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 4ccecc8..49daf65 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -87,7 +87,6 @@ m4_foreach_w([_m], [
|
||||
# then some tests will fail. Only prints a warning if not installed.
|
||||
m4_foreach_w([_m], [
|
||||
B
|
||||
- Exporter
|
||||
File::Spec::Functions
|
||||
File::Temp
|
||||
List::Util
|
||||
@@ -101,6 +100,7 @@ m4_foreach_w([_m], [
|
||||
# prints a warning if not installed.
|
||||
m4_foreach_w([_m], [
|
||||
Carp
|
||||
+ Exporter
|
||||
HTTP::Daemon=6.12
|
||||
HTTP::Daemon::SSL
|
||||
HTTP::Message::PSGI
|
||||
@@ -112,7 +112,6 @@ m4_foreach_w([_m], [
|
||||
Test::Warnings
|
||||
Time::HiRes
|
||||
URI
|
||||
- parent
|
||||
], [AX_PROG_PERL_MODULES([_m], [],
|
||||
[AC_MSG_WARN([some tests may be skipped due to missing module _m])])])
|
||||
|
||||
diff --git a/t/geturl_connectivity.pl b/t/geturl_connectivity.pl
|
||||
index d3f2033..b0dd94d 100644
|
||||
--- a/t/geturl_connectivity.pl
|
||||
+++ b/t/geturl_connectivity.pl
|
||||
@@ -1,11 +1,12 @@
|
||||
use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::ip;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
$ddclient::globals{'ssl_ca_file'} = $ca_file;
|
||||
|
||||
for my $ipv ('4', '6') {
|
||||
diff --git a/t/lib/ddclient/t/HTTPD.pm b/t/lib/ddclient/t/HTTPD.pm
|
||||
index 997e451..6879372 100644
|
||||
--- a/t/lib/ddclient/t/HTTPD.pm
|
||||
+++ b/t/lib/ddclient/t/HTTPD.pm
|
||||
@@ -7,42 +7,21 @@ use warnings;
|
||||
use parent qw(ddclient::Test::Fake::HTTPD);
|
||||
|
||||
use Exporter qw(import);
|
||||
+use JSON::PP;
|
||||
use Test::More;
|
||||
BEGIN { require 'ddclient'; }
|
||||
use ddclient::t::ip;
|
||||
|
||||
our @EXPORT = qw(
|
||||
httpd
|
||||
- httpd_ok httpd_required $httpd_supported $httpd_support_error
|
||||
httpd_ipv6_ok httpd_ipv6_required $httpd_ipv6_supported $httpd_ipv6_support_error
|
||||
httpd_ssl_ok httpd_ssl_required $httpd_ssl_supported $httpd_ssl_support_error
|
||||
$ca_file $certdir $other_ca_file
|
||||
$textplain
|
||||
);
|
||||
|
||||
-our $httpd_supported;
|
||||
-our $httpd_support_error;
|
||||
-BEGIN {
|
||||
- $httpd_supported = eval {
|
||||
- require parent; parent->import(qw(ddclient::Test::Fake::HTTPD));
|
||||
- require JSON::PP; JSON::PP->import();
|
||||
- 1;
|
||||
- } or $httpd_support_error = $@;
|
||||
-}
|
||||
-
|
||||
-sub httpd_ok {
|
||||
- ok($httpd_supported, "HTTPD is supported") or diag($httpd_support_error);
|
||||
-}
|
||||
-
|
||||
-sub httpd_required {
|
||||
- plan(skip_all => $httpd_support_error) if !$httpd_supported;
|
||||
-}
|
||||
-
|
||||
-our $httpd_ssl_supported = $httpd_supported;
|
||||
-our $httpd_ssl_support_error = $httpd_support_error;
|
||||
-$httpd_ssl_supported = eval { require HTTP::Daemon::SSL; 1; }
|
||||
- or $httpd_ssl_support_error = $@
|
||||
- if $httpd_ssl_supported;
|
||||
+our $httpd_ssl_support_error;
|
||||
+our $httpd_ssl_supported = eval { require HTTP::Daemon::SSL; 1; } or $httpd_ssl_support_error = $@;
|
||||
|
||||
sub httpd_ssl_ok {
|
||||
ok($httpd_ssl_supported, "SSL is supported") or diag($httpd_ssl_support_error);
|
||||
@@ -52,11 +31,8 @@ sub httpd_ssl_required {
|
||||
plan(skip_all => $httpd_ssl_support_error) if !$httpd_ssl_supported;
|
||||
}
|
||||
|
||||
-our $httpd_ipv6_supported = $httpd_supported;
|
||||
-our $httpd_ipv6_support_error = $httpd_support_error;
|
||||
-$httpd_ipv6_supported = $ipv6_supported
|
||||
- or $httpd_ipv6_support_error = $ipv6_support_error
|
||||
- if $httpd_ipv6_supported;
|
||||
+our $httpd_ipv6_support_error;
|
||||
+our $httpd_ipv6_supported = $ipv6_supported or $httpd_ipv6_support_error = $ipv6_support_error;
|
||||
$httpd_ipv6_supported = eval { require HTTP::Daemon; HTTP::Daemon->VERSION(6.12); }
|
||||
or $httpd_ipv6_support_error = $@
|
||||
if $httpd_ipv6_supported;
|
||||
@@ -136,7 +112,6 @@ sub httpd {
|
||||
my ($ipv, $ssl) = @_;
|
||||
$ipv //= '';
|
||||
$ssl = !!$ssl;
|
||||
- return undef if !$httpd_supported;
|
||||
return undef if $ipv eq '6' && !$httpd_ipv6_supported;
|
||||
return undef if $ssl && !$httpd_ssl_supported;
|
||||
if (!defined($daemons{$ipv}{$ssl})) {
|
||||
diff --git a/t/protocol_directnic.pl b/t/protocol_directnic.pl
|
||||
index bc96152..e2675dc 100644
|
||||
--- a/t/protocol_directnic.pl
|
||||
+++ b/t/protocol_directnic.pl
|
||||
@@ -2,11 +2,12 @@ use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(); }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::Logger;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
ddclient::load_json_support('directnic');
|
||||
|
||||
httpd()->run(sub {
|
||||
diff --git a/t/protocol_dnsexit2.pl b/t/protocol_dnsexit2.pl
|
||||
index 9991e7c..37a9210 100644
|
||||
--- a/t/protocol_dnsexit2.pl
|
||||
+++ b/t/protocol_dnsexit2.pl
|
||||
@@ -2,11 +2,12 @@ use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(); }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::Logger;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
local $ddclient::globals{debug} = 1;
|
||||
local $ddclient::globals{verbose} = 1;
|
||||
|
||||
diff --git a/t/protocol_dyndns2.pl b/t/protocol_dyndns2.pl
|
||||
index a5091cb..c481efb 100644
|
||||
--- a/t/protocol_dyndns2.pl
|
||||
+++ b/t/protocol_dyndns2.pl
|
||||
@@ -2,10 +2,12 @@ use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
use MIME::Base64;
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::Logger;
|
||||
|
||||
-httpd_required();
|
||||
|
||||
httpd()->run(sub {
|
||||
my ($req) = @_;
|
||||
diff --git a/t/skip.pl b/t/skip.pl
|
||||
index 3f0ba3a..1ee68a3 100644
|
||||
--- a/t/skip.pl
|
||||
+++ b/t/skip.pl
|
||||
@@ -1,11 +1,12 @@
|
||||
use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::ip;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
httpd('4')->run(
|
||||
sub { return [200, ['Content-Type' => 'text/plain'], ['127.0.0.1 skip 127.0.0.2']]; });
|
||||
httpd('6')->run(
|
||||
diff --git a/t/ssl-validate.pl b/t/ssl-validate.pl
|
||||
index 6bea9a3..ac5f58f 100644
|
||||
--- a/t/ssl-validate.pl
|
||||
+++ b/t/ssl-validate.pl
|
||||
@@ -1,13 +1,15 @@
|
||||
use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::ip;
|
||||
|
||||
local $ddclient::globals{debug} = 1;
|
||||
local $ddclient::globals{verbose} = 1;
|
||||
|
||||
-httpd_required();
|
||||
httpd_ssl_required();
|
||||
|
||||
httpd('4', 1)->run(sub { return [200, $textplain, ['127.0.0.1']]; });
|
||||
diff --git a/t/update_nics.pl b/t/update_nics.pl
|
||||
index e0fe679..d656c0f 100644
|
||||
--- a/t/update_nics.pl
|
||||
+++ b/t/update_nics.pl
|
||||
@@ -6,11 +6,12 @@ BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(
|
||||
use List::Util qw(max);
|
||||
use Scalar::Util qw(refaddr);
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::ip;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
httpd('4')->run();
|
||||
httpd('6')->run() if httpd('6');
|
||||
local %ddclient::builtinweb = (
|
||||
diff --git a/t/use_web.pl b/t/use_web.pl
|
||||
index 130034a..9411ae8 100644
|
||||
--- a/t/use_web.pl
|
||||
+++ b/t/use_web.pl
|
||||
@@ -1,11 +1,12 @@
|
||||
use Test::More;
|
||||
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||
-use ddclient::t::HTTPD;
|
||||
+BEGIN {
|
||||
+ eval { require ddclient::t::HTTPD; 1; } or plan(skip_all => $@);
|
||||
+ ddclient::t::HTTPD->import();
|
||||
+}
|
||||
use ddclient::t::ip;
|
||||
|
||||
-httpd_required();
|
||||
-
|
||||
my $builtinweb = 't/use_web.pl builtinweb';
|
||||
my $h = 't/use_web.pl hostname';
|
||||
|
||||
--
|
||||
2.47.0
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:243cd832abd3cdd2b49903e1b5ed7f450e2d9c4c0eaf8ce4fe692c244d3afd77
|
||||
size 278314
|
||||
3
ddclient-4.0.0.tar.gz
Normal file
3
ddclient-4.0.0.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:15c73d4b61e8e4974707379df1dbf15ab9f933835c6968947d2b56173388c6f0
|
||||
size 362232
|
||||
@@ -1,32 +1,34 @@
|
||||
--- ddclient-3.10.0/ddclient.conf.in.bak 2022-12-27 12:41:54.160794070 +0100
|
||||
+++ ddclient-3.10.0/ddclient.conf.in 2022-12-27 12:43:39.501317859 +0100
|
||||
@@ -18,10 +18,10 @@
|
||||
######################################################################
|
||||
daemon=300 # check every 300 seconds
|
||||
syslog=yes # log update msgs to syslog
|
||||
-mail=root # mail all msgs to root
|
||||
+#mail=root # mail all msgs to root
|
||||
mail-failure=root # mail failed update msgs to root
|
||||
-pid=@runstatedir@/ddclient.pid # record PID in file.
|
||||
-ssl=yes # use ssl-support. Works with
|
||||
+pid=/run/ddclient/ddclient.pid # record PID in file.
|
||||
+ssl=no # use ssl-support. Works with
|
||||
# ssl-library
|
||||
# postscript=script # run script after updating. The
|
||||
# new IP is added as argument.
|
||||
@@ -56,6 +56,9 @@
|
||||
--- ddclient-4.0.0/ddclient.conf.in 2025-01-19 20:31:09.000000000 +0100
|
||||
+++ ddclient-4.0.0-new/ddclient.conf.in 2025-03-07 17:10:53.824762865 +0100
|
||||
@@ -23,12 +23,13 @@
|
||||
|
||||
daemon=300 # check every 300 seconds
|
||||
syslog=yes # log update msgs to syslog
|
||||
-mail=root # mail all msgs to root
|
||||
+#mail=root # mail all msgs to root
|
||||
mail-failure=root # mail failed update msgs to root
|
||||
# mail-from=root # set the email "From:" header to "root". If
|
||||
# unset (the default) or empty, the from address
|
||||
# depends on your system's default behavior.
|
||||
-pid=@runstatedir@/ddclient.pid # record PID in file.
|
||||
+pid=/run/ddclient/ddclient.pid # record PID in file.
|
||||
+ssl=no # use ssl-support. Works with
|
||||
# postscript=script # run script after updating. The new IP is
|
||||
# added as argument.
|
||||
#
|
||||
#use=ip, ip=127.0.0.1 # via static IP's
|
||||
#use=if, if=eth0 # via interfaces
|
||||
@@ -66,6 +67,9 @@ pid=@runstatedir@/ddclient.pid # record
|
||||
#
|
||||
#use=ip, ip=127.0.0.1 # via static IP's
|
||||
#use=if, if=eth0 # via interfaces
|
||||
+#use=if, if=ippp0 # when using ISDN
|
||||
+#use=if, if=ppp0 # when using DSL
|
||||
+#use=if, if=tun0 # when using tunnel device
|
||||
#use=web # via web
|
||||
#use=web # via web
|
||||
#
|
||||
#protocol=dyndns2 # default protocol
|
||||
@@ -69,6 +72,17 @@
|
||||
#backupmx=yes|no # host is primary MX?
|
||||
#wildcard=yes|no # add wildcard CNAME?
|
||||
#protocol=dyndns2 # default protocol
|
||||
@@ -79,6 +83,17 @@ pid=@runstatedir@/ddclient.pid # record
|
||||
#backupmx=yes|no # host is primary MX?
|
||||
#wildcard=yes|no # add wildcard CNAME?
|
||||
|
||||
+## selfhost dynamic addresses
|
||||
+## http://cms.selfhost.de/cgi-bin/selfhost?p=faq&show=113
|
||||
@@ -36,7 +38,7 @@
|
||||
+# login=your-selfhost-login, \
|
||||
+# password=your-selfhost-password \
|
||||
+# your.selfhost.bz
|
||||
+
|
||||
+
|
||||
+##
|
||||
+
|
||||
##
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
--- ddclient-3.10.0/ddclient.in.bak 2022-12-27 12:47:57.318599529 +0100
|
||||
+++ ddclient-3.10.0/ddclient.in 2022-12-27 12:48:06.902647037 +0100
|
||||
@@ -1051,6 +1051,7 @@
|
||||
print STDERR "${program}: can not fork ($!)\n";
|
||||
exit -1;
|
||||
--- ddclient-4.0.0/ddclient.in 2025-01-19 20:31:09.000000000 +0100
|
||||
+++ ddclient-4.0.0-new/ddclient.in 2025-03-07 17:20:48.303727503 +0100
|
||||
@@ -1473,6 +1473,7 @@ sub main {
|
||||
if ($pid < 0) {
|
||||
fatal("failed to fork: %s", $!);
|
||||
} elsif ($pid) {
|
||||
+ sleep(1);
|
||||
exit 0;
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- ddclient-3.11.2/configure.ac.orig 2024-10-30 10:23:41.442181020 +0100
|
||||
+++ ddclient-3.11.2/configure.ac 2024-10-30 10:24:22.006324398 +0100
|
||||
@@ -11,7 +11,7 @@
|
||||
# tap-driver.sh, so build-aux/tap-driver.sh is checked in to keep the
|
||||
# above AC_REQUIRE_AUX_FILE line from causing configure to complain
|
||||
# about a mising file if the user has Automake 1.11.)
|
||||
-AM_INIT_AUTOMAKE([1.11 -Wall -Werror foreign subdir-objects parallel-tests])
|
||||
+AM_INIT_AUTOMAKE([1.11 -Wall foreign subdir-objects parallel-tests])
|
||||
AM_SILENT_RULES
|
||||
|
||||
AC_PROG_MKDIR_P
|
||||
155
ddclient.changes
155
ddclient.changes
@@ -1,3 +1,150 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 10 08:45:27 UTC 2025 - Valentin Lefebvre <valentin.lefebvre@suse.com>
|
||||
|
||||
- Some tests fails when PSGI dependencies is not prevent, revert source commit
|
||||
8cf322e allows skipping them.
|
||||
See https://github.com/ddclient/ddclient/issues/815
|
||||
[+ Revert-tests-only-skip-HTTPD-tests.patch]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 7 17:03:56 UTC 2025 - Valentin Lefebvre <valentin.lefebvre@suse.com>
|
||||
|
||||
- Update to 4.0.0
|
||||
* BREAKING CHANGES: ddclient now looks for `ddclient.conf` in
|
||||
`${sysconfdir}/ddclient` by default instead of `${sysconfdir}`.
|
||||
* To retain the previous behavior, pass `'--with-confdir=${sysconfdir}'` to
|
||||
`configure`.
|
||||
* The `--ssl` option is now enabled by default.
|
||||
* Unencrypted (plain) HTTP is now used instead of encrypted (TLS) HTTP if the
|
||||
URL uses `http://` instead of `https://`, even if the `--ssl` option is
|
||||
enabled.
|
||||
* The string argument to `--cmdv4` or `--cmdv6` is now executed as-is by the
|
||||
system's shell, matching the behavior of the deprecated `--cmd` option.
|
||||
This makes it possible to pass command-line arguments, which reduces the
|
||||
need for a custom wrapper script. Beware that the string is also subject to
|
||||
the shell's command substitution, quote handling, variable expansion, field
|
||||
splitting, etc., so you may need to add extra escaping to ensure that any
|
||||
special characters are preserved literally.
|
||||
* The default web service for `--webv4` and `--webv6` has changed from Google
|
||||
Domains (which has shut down) to ipify.
|
||||
* Invalid command-line options or values are now fatal errors (instead of
|
||||
discarded with a warning).
|
||||
* All log messages are now written to STDERR, not a mix of STDOUT and STDERR.
|
||||
* For `--protocol=freedns` and `--protocol=nfsn`, the core module
|
||||
`Digest::SHA` is now required. Previously, `Digest::SHA1` was used (if
|
||||
available) as an alternative to `Digest::SHA`.
|
||||
* The `he` built-in web IP discovery service (`--webv4=he`, `--webv6=he`, and
|
||||
`--web=he`) was renamed to `he.net` for consistency with the new `he.net`
|
||||
protocol. The old name is still accepted but is deprecated and will be
|
||||
removed in a future version of ddclient.
|
||||
* Deprecated built-in web IP discovery services are not listed in the output
|
||||
of `--list-web-services`.
|
||||
* `dyndns2`: Support for "wait" response lines has been removed. The Dyn
|
||||
documentation does not mention such responses, and the code to handle them,
|
||||
untouched since at least 2006, is believed to be obsolete.
|
||||
* `dyndns2`: The obsolete `static` and `custom` options have been removed.
|
||||
Setting the options may produce a warning.
|
||||
* The diagnostic `--geturl` command-line argument was removed.
|
||||
* `easydns`: The default value for `min-interval` was increased from 5m to 10m
|
||||
to match easyDNS documentation.
|
||||
* `woima`: The dyn.woima.fi service appears to be defunct so support was
|
||||
removed.
|
||||
* `googledomains`: Support was removed because the service shut down.
|
||||
* The `--retry` option was removed.
|
||||
* New `--mail-from` option to control the "From:" header of email messages.
|
||||
* Simultaneous/separate updating of IPv4 (A) records and IPv6 (AAAA) records
|
||||
is now supported in the following services: `gandi`
|
||||
* `porkbun`: Added support for subdomains.
|
||||
* `gandi`: Added support for personal access tokens.
|
||||
* Comments after the `\` line continuation character are now supported.
|
||||
* Minor improvements to `--help` output.
|
||||
* Improved formatting of ddclient's version number.
|
||||
* Updated sample systemd service unit file to improve logging in the systemd
|
||||
journal.
|
||||
* The second and subsequent lines in a multi-line log message now have a
|
||||
different prefix to distinguish them from separate log messages.
|
||||
* Log messages now include context, making it easier to troubleshoot issues.
|
||||
* `emailonly`: New `protocol` option that simply emails you when your IP
|
||||
address changes.
|
||||
* `he.net`: Added support for updating Hurricane Electric records.
|
||||
* `dyndns2`, `domeneshop`, `dnsmadeeasy`, `keysystems`: The `server` option
|
||||
can now include `http://` or `https://` to control the use of TLS. If
|
||||
omitted, the value of the `ssl` option is used to determine the scheme.
|
||||
* `ddns.fm`: New `protocol` option for updating [DDNS.FM](https://ddns.fm/)
|
||||
records.
|
||||
* `inwx`: New `protocol` option for updating [INWX](https://www.inwx.com/)
|
||||
records.
|
||||
* `domeneshop`: Add IPv6 support.
|
||||
* `duckdns`: Multiple hosts with the same IP address are now updated together.
|
||||
* `directnic`: Added support for updatng Directnic records.
|
||||
* `porkbun`: The update URL hostname is now configurable via the `server`
|
||||
option.
|
||||
* `dnsexit2`: Multiple hosts are updated in a single API call when possible.
|
||||
* Fixed numerous bugs in cache file (recap) handling.
|
||||
* Fixed numerous bugs in command-line option and configuration file
|
||||
processing.
|
||||
* `noip`: Fixed failure to honor IP discovery settings in some circumstances.
|
||||
* Fixed `--usev6` with providers that have not yet been updated to use the new
|
||||
separate IPv4/IPv6 logic.
|
||||
* HTTP redirects (301, 302) are now followed.
|
||||
* `keysystems`: Fixed update URL.
|
||||
* `dondominio`: Fixed response parsing.
|
||||
* Fixed `--web-ssl-validate` and `--fw-ssl-validate` options, which were
|
||||
ignored in some cases (defaulting to validate).
|
||||
* Explicitly setting `--web-skip`, `--webv4-skip`, `--webv6-skip`,
|
||||
`--fw-skip`, `--fwv4-skip`, and `--fwv6-skip` to the empty string now
|
||||
disables any built-in default skip. Before, setting to the empty string had
|
||||
no effect.
|
||||
* `--use=disabled` now works.
|
||||
* `--retry` and `--daemon` are incompatible with each other; ddclient now
|
||||
errors out if both are provided.
|
||||
* `--usev4=cisco` and `--usev4=cisco-asa` now work.
|
||||
* Fixed "Scalar value better written as" Perl warning.
|
||||
* Fixed "Invalid Value for keyword 'wtime' = ''" warning.
|
||||
* Fixed unnecessary repeated updates for some services.
|
||||
* Fixed DNSExit provider when configured with a zone and non-identical
|
||||
hostname.
|
||||
* `infomaniak`: Fixed frequent forced updates after 25 days (`max-interval`).
|
||||
* `infomaniak`: Fixed incorrect parsing of server response.
|
||||
* `infomaniak`: Fixed incorrect handling of `nochg` responses.
|
||||
* `regfishde`: Fixed IPv6 support.
|
||||
* `easydns`: IPv4 and IPv6 addresses are now updated separately to be
|
||||
consistent with the easyDNS documentation.
|
||||
* `easydns`: Fixed parsing of result code from server response.
|
||||
* `easydns`: Fixed successful updates treated as failed updates.
|
||||
* Any IP addresses in an HTTP response's headers or in an HTTP error
|
||||
response's body are now ignored when obtaining the IP address from a
|
||||
web-based IP discovery service (`--usev4=webv4`, `--usev6=webv6`) or from a
|
||||
router/firewall device.
|
||||
* `yandex`: Errors are now retried.
|
||||
* `gandi`: Fixed handling of error responses.
|
||||
* `dyndns2`: Fixed handling of responses for multi-host updates.
|
||||
* `porkbun`: The default update URL was updated from `porkbun.com` to
|
||||
`api.porkbun.com`.
|
||||
- specfile:
|
||||
* Update the buildrequires to get corresponding dependencies for
|
||||
Tumbleweed.
|
||||
* ddclient.conf is now installing in /etc/ddclient/ddclient.conf
|
||||
-Addapt patches with new version
|
||||
* ddclient-config.patch
|
||||
* ddclient-delay-main-process-for-systemd.patch
|
||||
* disable-ip-test.patch
|
||||
- Removing patch deal upstream
|
||||
* ddclient-disable-automake-treating-warnings-as-error.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 9 19:44:26 UTC 2025 - chris@computersalat.de
|
||||
|
||||
- sync spec and changes file with SUSE_SLE-15_Update
|
||||
- remove obsolete deps
|
||||
* perl(IO::Socket::SSL)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 25 17:03:41 UTC 2024 - Valentin Lefebvre <valentin.lefebvre@suse.com>
|
||||
|
||||
- ddclient.service: Do not restrict access to devices, can conflicts
|
||||
with ipmi. [bsc#1232044]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 30 09:31:48 UTC 2024 - Andreas Vetter <vetter@physik.uni-wuerzburg.de>
|
||||
|
||||
@@ -11,6 +158,12 @@ Mon Feb 5 10:10:56 UTC 2024 - Michal Suchanek <msuchanek@suse.com>
|
||||
|
||||
- Use sysuser-tools to create user.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 18 15:12:17 UTC 2023 - Valentin Lefebvre <valentin.lefebvre@suse.com>
|
||||
|
||||
- Remove buildRequires to perl(HTTP::Message::PSGI) not available and needed
|
||||
only for tests.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 23 17:05:39 UTC 2023 - Valentin Lefebvre <valentin.lefebvre@suse.com>
|
||||
|
||||
@@ -119,7 +272,7 @@ Tue Jul 12 16:08:36 UTC 2022 - chris@computersalat.de
|
||||
- update ddclient-config.patch
|
||||
* fix PID file path
|
||||
- merge ddclient-replace-varrun-with-run.patch into
|
||||
ddclient-config.patc
|
||||
ddclient-config.patch
|
||||
- merge changes file with SLES Maintained pkg
|
||||
- update Source to %{name}-%{version}
|
||||
|
||||
|
||||
@@ -8,7 +8,9 @@ Wants=network-online.target nss-lookup.target
|
||||
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
|
||||
ProtectSystem=full
|
||||
ProtectHome=true
|
||||
PrivateDevices=true
|
||||
PrivateDevices=false
|
||||
DevicePolicy=closed
|
||||
DeviceAllow=char-ipmidev rw
|
||||
ProtectHostname=true
|
||||
ProtectClock=true
|
||||
ProtectKernelTunables=true
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package ddclient
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
Name: ddclient
|
||||
Version: 3.11.2
|
||||
Version: 4.0.0
|
||||
Release: 0
|
||||
Summary: A Perl Client to Update Dynamic DNS Entries
|
||||
License: GPL-2.0-or-later
|
||||
@@ -30,22 +30,28 @@ Source3: %{name}-tmpfiles.conf
|
||||
Patch0: %{name}-config.patch
|
||||
Patch1: %{name}-delay-main-process-for-systemd.patch
|
||||
Patch2: disable-ip-test.patch
|
||||
Patch3: %{name}-disable-automake-treating-warnings-as-error.patch
|
||||
Patch3: Revert-tests-only-skip-HTTPD-tests.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: curl
|
||||
BuildRequires: make
|
||||
BuildRequires: sysuser-tools
|
||||
BuildRequires: perl(HTTP::Daemon)
|
||||
# For Leap 15.X
|
||||
%if 0%{?sle_version} >= 150500 && 0%{?is_opensuse}
|
||||
BuildRequires: perl(HTTP::Message::PSGI)
|
||||
BuildRequires: perl(IO::Socket::SSL)
|
||||
%else
|
||||
# For Leap 16 and TW
|
||||
%if 0%{?suse_version} >= 1600 && 0%{?is_opensuse}
|
||||
BuildRequires: perl(HTTP::Message::PSGI)
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: perl(Test::MockModule)
|
||||
BuildRequires: perl(Test::Warnings)
|
||||
Requires: curl
|
||||
Requires: perl >= 5.10.1
|
||||
Requires(pre): %fillup_prereq
|
||||
Requires(pre): shadow
|
||||
Recommends: perl-IO-Socket-SSL
|
||||
BuildArch: noarch
|
||||
%{?systemd_requires}
|
||||
%sysusers_requires
|
||||
@@ -81,7 +87,7 @@ make
|
||||
find examples -name *exe -delete
|
||||
mkdir -p %{buildroot}%{_sbindir}/
|
||||
mv %{buildroot}%{_bindir}/%{name} %{buildroot}%{_sbindir}/%{name}
|
||||
sed -i -e "s,%{_localstatedir}/run/,/run/%{name}/," %{buildroot}%{_sysconfdir}/%{name}.conf
|
||||
sed -i -e "s,%{_localstatedir}/run/,/run/%{name}/," %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf
|
||||
install -D -m 644 %{SOURCE1} %{buildroot}/%{_unitdir}/%{name}.service
|
||||
install -D -m 644 %{SOURCE3} %{buildroot}%{_tmpfilesdir}/%{name}.conf
|
||||
ln -s service %{buildroot}%{_sbindir}/rc%{name}
|
||||
@@ -110,7 +116,8 @@ make VERBOSE=1 check
|
||||
|
||||
%files
|
||||
%doc COPY* README* examples
|
||||
%config(noreplace) %attr(600,%{name},root) %{_sysconfdir}/%{name}.conf
|
||||
%dir %{_sysconfdir}/%{name}
|
||||
%config(noreplace) %attr(600,%{name},root) %{_sysconfdir}/%{name}/%{name}.conf
|
||||
%{_unitdir}/%{name}.service
|
||||
%{_tmpfilesdir}/ddclient.conf
|
||||
%ghost %dir %attr(755,%{name},%{name}) /run/%{name}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
--- ddclient-3.10.0/Makefile.am.bak 2022-12-27 13:47:28.996235989 +0100
|
||||
+++ ddclient-3.10.0/Makefile.am 2022-12-27 13:47:34.848264936 +0100
|
||||
@@ -62,7 +62,6 @@
|
||||
-I'$(abs_top_srcdir)'/t/lib \
|
||||
-MDevel::Autoflush
|
||||
--- ddclient-4.0.0/Makefile.am 2025-01-19 20:31:09.000000000 +0100
|
||||
+++ ddclient-4.0.0-new/Makefile.am 2025-03-07 17:24:07.447374713 +0100
|
||||
@@ -59,7 +59,6 @@ AM_PL_LOG_FLAGS = -Mstrict -w \
|
||||
handwritten_tests = \
|
||||
t/builtinfw_query.pl \
|
||||
t/check_value.pl \
|
||||
- t/get_ip_from_if.pl \
|
||||
t/is-and-extract-ipv4.pl \
|
||||
t/is-and-extract-ipv6.pl \
|
||||
t/is-and-extract-ipv6-global.pl \
|
||||
t/geturl_connectivity.pl \
|
||||
t/geturl_response.pl \
|
||||
t/group_hosts_by.pl \
|
||||
|
||||
Reference in New Issue
Block a user