dns/ddclient: Update to v3.10 RC2
PR: 266415 Reported by: fbsd-bugzilla@schlachter.ca Approved by: mjl@luckie.org.nz (maintainer)
This commit is contained in:
parent
6cf595b31f
commit
e37f7e5ab5
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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'),
|
|
@ -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;
|
|
@ -0,0 +1,3 @@
|
|||
@sample(,,600) etc/ddclient.conf.sample
|
||||
etc/periodic/daily/ddclient_force
|
||||
sbin/ddclient
|
Loading…
Reference in New Issue