git: e37f7e5ab58f - main - dns/ddclient: Update to v3.10 RC2
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 24 Nov 2023 19:41:04 UTC
The branch main has been updated by fernape: URL: https://cgit.FreeBSD.org/ports/commit/?id=e37f7e5ab58f5d9f8f5a1a39b20f4c1bd7c50060 commit e37f7e5ab58f5d9f8f5a1a39b20f4c1bd7c50060 Author: Franco Fichtner <franco@opnsense.org> AuthorDate: 2023-11-24 11:30:38 +0000 Commit: Fernando Apesteguía <fernape@FreeBSD.org> CommitDate: 2023-11-24 19:40:20 +0000 dns/ddclient: Update to v3.10 RC2 PR: 266415 Reported by: fbsd-bugzilla@schlachter.ca Approved by: mjl@luckie.org.nz (maintainer) --- dns/ddclient/Makefile | 27 +++++------- dns/ddclient/distinfo | 6 +-- dns/ddclient/files/patch-ddclient | 85 ------------------------------------ dns/ddclient/files/patch-ddclient.in | 77 ++++++++++++++++++++++++++++++++ dns/ddclient/pkg-plist | 3 ++ 5 files changed, 93 insertions(+), 105 deletions(-) diff --git a/dns/ddclient/Makefile b/dns/ddclient/Makefile index 6e088dad7e35..02280eb8e41d 100644 --- a/dns/ddclient/Makefile +++ b/dns/ddclient/Makefile @@ -1,6 +1,6 @@ PORTNAME= ddclient DISTVERSIONPREFIX= v -DISTVERSION= 3.9.1 +DISTVERSION= 3.11.2 CATEGORIES= dns MAINTAINER= mjl@luckie.org.nz @@ -10,40 +10,33 @@ WWW= https://github.com/ddclient/ddclient LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -RUN_DEPENDS= p5-Data-Validate-IP>0:net-mgmt/p5-Data-Validate-IP +BUILD_DEPENDS= curl:ftp/curl +RUN_DEPENDS= p5-Data-Validate-IP>0:net-mgmt/p5-Data-Validate-IP \ + curl:ftp/curl -USES= perl5 tar:bzip2 +USES= autoreconf gmake perl5 tar:bzip2 +GNU_CONFIGURE= yes USE_GITHUB= yes USE_PERL5= run USE_RC_SUBR= ${PORTNAME} NO_ARCH= yes -NO_BUILD= yes SUB_FILES= pkg-message ddclient_force -PLIST_FILES= "@sample(,,600) etc/ddclient.conf.sample" \ - etc/periodic/daily/ddclient_force \ - sbin/ddclient -PORTDOCS= COPYRIGHT ChangeLog README.cisco README.ssl README.md \ +PORTDOCS= COPYRIGHT ChangeLog README.cisco README.md \ sample-etc_cron.d_ddclient sample-etc_dhclient-exit-hooks \ sample-etc_dhcpc_dhcpcd-eth0.exe sample-etc_ppp_ip-up.local -OPTIONS_DEFINE= SSL DOCS -OPTIONS_DEFAULT=SSL - -SSL_RUN_DEPENDS=ca_root_nss>0:security/ca_root_nss \ - p5-IO-Socket-SSL>0:security/p5-IO-Socket-SSL +OPTIONS_DEFINE= DOCS post-patch: @${GREP} -lR '/usr' ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} -e \ 's|/usr|${PREFIX}|g' @${REINPLACE_CMD} -e 's|%%ETCDIR%%|${PREFIX}/etc| ; \ - s|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/ddclient - @${REINPLACE_CMD} -e '/^\#\!\/usr\/local\/local/d' \ - ${WRKSRC}/ddclient + s|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/ddclient.in do-install: - (cd ${WRKSRC} && ${INSTALL_DATA} sample-etc_ddclient.conf \ + (cd ${WRKSRC} && ${INSTALL_DATA} ddclient.conf \ ${STAGEDIR}${PREFIX}/etc/ddclient.conf.sample) (cd ${WRKSRC} && ${INSTALL_SCRIPT} ddclient \ ${STAGEDIR}${PREFIX}/sbin) diff --git a/dns/ddclient/distinfo b/dns/ddclient/distinfo index 49940f28bde9..e0c0c4833289 100644 --- a/dns/ddclient/distinfo +++ b/dns/ddclient/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1603527045 -SHA256 (ddclient-ddclient-v3.9.1_GH0.tar.gz) = e4969e15cc491fc52bdcd649d4c2b0e4b1bf0c9f9dba23471c634871acc52470 -SIZE (ddclient-ddclient-v3.9.1_GH0.tar.gz) = 63469 +TIMESTAMP = 1700741617 +SHA256 (ddclient-ddclient-v3.11.2_GH0.tar.gz) = 243cd832abd3cdd2b49903e1b5ed7f450e2d9c4c0eaf8ce4fe692c244d3afd77 +SIZE (ddclient-ddclient-v3.11.2_GH0.tar.gz) = 278314 diff --git a/dns/ddclient/files/patch-ddclient b/dns/ddclient/files/patch-ddclient deleted file mode 100644 index 45d08058741a..000000000000 --- a/dns/ddclient/files/patch-ddclient +++ /dev/null @@ -1,85 +0,0 @@ ---- ddclient.orig 2018-05-23 10:25:05 UTC -+++ ddclient -@@ -25,6 +25,7 @@ use Getopt::Long; - use Sys::Hostname; - use IO::Socket; - use Data::Validate::IP; -+use POSIX 'setsid'; - - my $version = "3.8.3"; - my $programd = $0; -@@ -33,9 +34,9 @@ my $program = $programd; - $program =~ s/d$//; - my $now = time; - my $hostname = hostname(); --my $etc = ($program =~ /test/i) ? './' : '/etc/ddclient/'; --my $cachedir = ($program =~ /test/i) ? './' : '/var/cache/ddclient/'; --my $savedir = ($program =~ /test/i) ? 'URL/' : '/tmp/'; -+my $etc = ($program =~ /test/i) ? './' : '%%ETCDIR%%/'; -+my $cachedir = ($program =~ /test/i) ? './' : '/var/tmp/'; -+my $savedir = ($program =~ /test/i) ? 'URL/' : '/var/tmp/'; - my $msgs = ''; - my $last_msgs = ''; - -@@ -43,7 +44,7 @@ use vars qw($file $lineno); - local $file = ''; - local $lineno = ''; - --$ENV{'PATH'} = (exists($ENV{PATH}) ? "$ENV{PATH}:" : "") . "/sbin:/usr/sbin:/bin:/usr/bin:/etc:/usr/lib:"; -+$ENV{'PATH'} = (exists($ENV{PATH}) ? "$ENV{PATH}:" : "") . "/sbin:/usr/sbin:/bin:"; - - sub T_ANY {'any'}; - sub T_STRING {'string'}; -@@ -792,6 +793,9 @@ if (opt('foreground') || opt('force')) { - ; - } elsif (opt('daemon')) { - $SIG{'CHLD'} = 'IGNORE'; -+ chdir '/'; -+ open(STDIN, "</dev/null"); -+ open(STDOUT, ">/dev/null"); - my $pid = fork; - if ($pid < 0) { - print STDERR "${program}: can not fork ($!)\n"; -@@ -799,10 +803,9 @@ if (opt('foreground') || opt('force')) { - } elsif ($pid) { - exit 0; - } -+ setsid; - $SIG{'CHLD'} = 'DEFAULT'; -- open(STDOUT, ">/dev/null"); -- open(STDERR, ">/dev/null"); -- open(STDIN, "</dev/null"); -+ open(STDERR, "&STDOUT"); - } - - # write out the pid file if we're daemon'ized -@@ -1595,17 +1598,17 @@ sub pipecmd { - ## execute the command. - local *FD; - if (! open(FD, $cmd)) { -- printf STDERR "$program: cannot execute command %s.\n", $cmd; -+ warning("$program: cannot execute command %s.\n", $cmd); - - } elsif ($stdin && (! print FD "$stdin\n")) { -- printf STDERR "$program: failed writting to %s.\n", $cmd; -+ warning("$program: failed writing to %s.\n", $cmd); - close(FD); - - } elsif (! close(FD)) { -- printf STDERR "$program: failed closing %s.($@)\n", $cmd; -+ warning("$program: failed closing %s.($@)\n", $cmd); - - } elsif (opt('exec') && $?) { -- printf STDERR "$program: failed %s. ($@)\n", $cmd; -+ warning("$program: failed %s. ($@)\n", $cmd); - - } else { - $ok = 1; -@@ -2034,6 +2037,7 @@ sub geturl { - $sd = IO::Socket::SSL->new( - PeerAddr => $peer, - PeerPort => $port, -+ SSL_ca_file => '%%LOCALBASE%%/share/certs/ca-root-nss.crt', - Proto => 'tcp', - MultiHomed => 1, - Timeout => opt('timeout'), diff --git a/dns/ddclient/files/patch-ddclient.in b/dns/ddclient/files/patch-ddclient.in new file mode 100644 index 000000000000..0dc1a45418c6 --- /dev/null +++ b/dns/ddclient/files/patch-ddclient.in @@ -0,0 +1,77 @@ +--- ddclient.in.orig 2023-10-25 19:22:47 UTC ++++ ddclient.in +@@ -20,6 +20,7 @@ use File::Path qw(make_path); + use File::Temp; + use Getopt::Long; + use Sys::Hostname; ++use POSIX 'setsid'; + + use version 0.77; our $VERSION = version->declare('3.11.1'); + my $version = $VERSION->stringify(); +@@ -39,9 +40,9 @@ sub subst_var { + return $subst; + } + +-my $etc = subst_var('@sysconfdir@', '/etc/ddclient'); +-my $cachedir = subst_var('@localstatedir@', '/var') . '/cache/ddclient'; +-my $savedir = '/tmp'; ++my $etc = subst_var('@sysconfdir@', '/usr/local/etc'); ++my $cachedir = subst_var('@localstatedir@', '/var') . '/tmp'; ++my $savedir = '/var/tmp'; + if ($program =~ /test/i) { + $etc = '.'; + $cachedir = '.'; +@@ -59,7 +60,7 @@ use vars qw($file $lineno); + local $file = ''; + local $lineno = ''; + +-$ENV{'PATH'} = (exists($ENV{PATH}) ? "$ENV{PATH}:" : "") . "/sbin:/usr/sbin:/bin:/usr/bin:/etc:/usr/lib:"; ++$ENV{'PATH'} = (exists($ENV{PATH}) ? "$ENV{PATH}:" : "") . "/sbin:/usr/local/sbin:/bin:"; + + our %globals; + my ($result, %config, %cache); +@@ -1131,6 +1132,9 @@ sub main { + ; + } elsif (opt('daemon')) { + $SIG{'CHLD'} = 'IGNORE'; ++ chdir '/'; ++ open(STDIN, "</dev/null"); ++ open(STDOUT, ">/dev/null"); + my $pid = fork; + if ($pid < 0) { + print STDERR "${program}: can not fork ($!)\n"; +@@ -1138,10 +1142,9 @@ sub main { + } elsif ($pid) { + exit 0; + } ++ setsid; + $SIG{'CHLD'} = 'DEFAULT'; +- open(STDOUT, ">/dev/null"); +- open(STDERR, ">/dev/null"); +- open(STDIN, "</dev/null"); ++ open(STDERR, "&STDOUT"); + write_pid(); + } + +@@ -2164,17 +2167,17 @@ sub pipecmd { + ## execute the command. + local *FD; + if (!open(FD, $cmd)) { +- printf STDERR "%s: cannot execute command %s.\n", $program, $cmd; ++ warning("$program: cannot execute command %s.\n", $cmd); + + } elsif ($stdin && (!print FD "$stdin\n")) { +- printf STDERR "%s: failed writting to %s.\n", $program, $cmd; ++ warning("$program: failed writing to %s.\n", $cmd); + close(FD); + + } elsif (!close(FD)) { +- printf STDERR "%s: failed closing %s.(%s)\n", $program, $cmd, $@; ++ warning("$program: failed closing %s.($@)\n", $cmd); + + } elsif (opt('exec') && $?) { +- printf STDERR "%s: failed %s. (%s)\n", $program, $cmd, $@; ++ warning("$program: failed %s. ($@)\n", $cmd); + + } else { + $ok = 1; diff --git a/dns/ddclient/pkg-plist b/dns/ddclient/pkg-plist new file mode 100644 index 000000000000..f86be8afa6e1 --- /dev/null +++ b/dns/ddclient/pkg-plist @@ -0,0 +1,3 @@ +@sample(,,600) etc/ddclient.conf.sample +etc/periodic/daily/ddclient_force +sbin/ddclient