summaryrefslogtreecommitdiff
path: root/net-dns/ddclient
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /net-dns/ddclient
reinit the tree, so we can have metadata
Diffstat (limited to 'net-dns/ddclient')
-rw-r--r--net-dns/ddclient/Manifest16
-rw-r--r--net-dns/ddclient/ddclient-3.8.1-r5.ebuild55
-rw-r--r--net-dns/ddclient/ddclient-3.8.2.ebuild46
-rw-r--r--net-dns/ddclient/ddclient-3.8.3.ebuild49
-rw-r--r--net-dns/ddclient/files/cmd-over-cfg.patch11
-rw-r--r--net-dns/ddclient/files/ddclient.confd2
-rw-r--r--net-dns/ddclient/files/ddclient.confd-r12
-rw-r--r--net-dns/ddclient/files/ddclient.initd-r357
-rw-r--r--net-dns/ddclient/files/ddclient.initd-r435
-rw-r--r--net-dns/ddclient/files/ddclient.service12
-rw-r--r--net-dns/ddclient/files/iproute2.patch30
-rw-r--r--net-dns/ddclient/metadata.xml15
12 files changed, 330 insertions, 0 deletions
diff --git a/net-dns/ddclient/Manifest b/net-dns/ddclient/Manifest
new file mode 100644
index 000000000000..51acea569e37
--- /dev/null
+++ b/net-dns/ddclient/Manifest
@@ -0,0 +1,16 @@
+AUX cmd-over-cfg.patch 488 SHA256 4b384d925abdae2cce0e65baa44ca0356d22aabbb669fe5183bbd652a3e2fc35 SHA512 a22ed7202b29e74ca8d4ffc597c5922cbe39da097c00876ac3e66c8f09eacd836ebb276e75753103f84699888f8e0a57abbfe839579eab0ddd48a2fa119fc70d WHIRLPOOL 0ea326e66c235e90c0c6dfd1011e1a735236ef153bdf74ac8a24ee9e7718b847311e290e41dcc5f1b10e241e81612a152a747c4a6c52b3703ea991bab740f492
+AUX ddclient.confd 97 SHA256 7a05a1c016dcffa2033da00e8a58072d0df33c31bc8b96170929032567cb44ab SHA512 3784fc11ba1b00b863b8a626910f75adb4b73f87f1887620c6ab17d68f36be4c481366ff1a8d91242c7ff62871e397ad1d4544b266405130d0fd8267f5a07f3d WHIRLPOOL ac01d8d8a5aee9a92401c47d97f5e0a556c4f065d16cabe33cde3f55f4046094a3cdc970fb2abad97589b308e005fd2f8802b38ab9a2184f425ff416bd0539b1
+AUX ddclient.confd-r1 98 SHA256 a6b1c281bfa4d963f9556f702cc4e3068e19a25991e9b6baf3547bee24974e82 SHA512 a74a3b0863fc20d740de07bfc37bee0aff6d7316ee72152241929e0a058ec34a5d76bc4429eedd69b03047f081cc0601543988b066ee246d671945a01fa0876d WHIRLPOOL a89921b9f80e0d3fb20d3c3010e59871de6f70df9fc75ee4867e3690b70ba48d7d905d1054542d1d9ddf085f8be6d3322191c9f540bb450402ef6e7eac12b0e9
+AUX ddclient.initd-r3 1312 SHA256 386d56ddae7444a2a7d3c56a2d7055bf456653ce5825b88029794065d57c796d SHA512 388725815c3fea9df57b6cd73ab9a549967aba2add3be9fe5153f57e20635c037985c28b1f1ebcb8a122737cdc6277f0711029375f7d62e03491457959ae8dd1 WHIRLPOOL 0fd42246bedf95b9b5355dc9ef64bf321e0f976b67bad762823a6c24df272bb789307950d38ea5aeb60c92483b3323f5db9909cdc6a71e68805ea2e78186e1ca
+AUX ddclient.initd-r4 856 SHA256 8e63f6d572bb2addd62f38f12e14523d68d2536cd15e0a1057b5da47bb204b94 SHA512 d68e4f01a731826f540243c1123849cc85cbffc41dc5d18c1538d63ccac03a7f535089e99074cc7a06beb6ac48b70575d60f3ad0a3a37c378eaf17c816c0cad3 WHIRLPOOL 3f495099ead40ff88d6cfc64b5a5ac7a726f4073529c14223f335570f5f941f8654c68b84804da4e4861649eac5e5be7f60e3fb762732477c1343a17623e4362
+AUX ddclient.service 234 SHA256 1c647b71c7c035933efd78b850422543c18174dd8a841d0c9b44eb8238092930 SHA512 e3c36148804ca7ea29f2d030128941a5d5a7edc6ce3a223b8e72ea8800d622169d3825d2ede6e69630e9ca57e8c62b6f3af97269e9d671e6f2d2973b4a43602f WHIRLPOOL 4b278a5899fcf3d919eed170e328bcbb0ce93ebf3c294be040ebb423ad38f691228ba78edd0372de8bef3585be74d6712b3ceadf98f8d1bd0b9816ae73fbb14c
+AUX iproute2.patch 1394 SHA256 182a2bde1aa66a79fe38ea08e5fa612a8421c2554ea1bfd179c22628899d9871 SHA512 d802421204cf398b9a0ff679b00b1a9796f4c442e3128b5965169c6153bca9beac580b94bd20ffd5235157b4ad482fdc926d9ac8a56686598aa7a25ecd0f43e0 WHIRLPOOL 54b9dff432ec2355cfbe7c7440702be1ea0fe4f40e3b766764a39b55b0cf14bd4f259e63d3b9a72aa8580d38782c7e58a98b9ecacd08723c2d440b150f849542
+DIST ddclient-3.8.1.tar.gz 48600 SHA256 f22ac7b0ec78e310d7b88a1cf636e5c00360b2ed9c087f231b3522ef3e6295f2 SHA512 d6722582dffe0c5a806176f24bd3d9117bc1210ea0137aa92138390be16e67d47b746777dc431282a664849c91626969a5e267777126bac03304c7aa34a9dad7 WHIRLPOOL 7785e6a9cacc10bfc4a21d01287602f0edf3b45e38c4f5352415160fc9857223c630b9b42f067fcabd1080be1482da549c1dccbcd8f1a5cf860c236326050f45
+DIST ddclient-3.8.2.tar.gz 46059 SHA256 3c335ed456fcd55c1ffefbaec7c75d1b13794626b1c38e6a01cc28ce3a6eac9e SHA512 8f74ce90ce4a31b8d53887b99556661343b96734ae630403434689459eaeb1354159ae26f0404b9db21a0ff4151816d1650746a13c547064748656a8c6e3f13b WHIRLPOOL f7f0c4f28f5c59ad16989813edbb7a94bc99e91a0ed7c6b93d5455abee2a7e80d96ba0d26e6016bf8a4843a44772132918ac1c8555b829f0d4ad53d30f5aa793
+DIST ddclient-3.8.3.tar.gz 54516 SHA256 debd5fec69eeb65e2331b86f5280f382416d97ed103839a65c201eef8e6d1fc9 SHA512 055b6edf91a3b72d9ba80c9dedfbc1d60f62d6879bc722735488a5a1a37fafeb2e97567da98939ccc62fd39b0846438dfad1c022635d602c67bafda178574a76 WHIRLPOOL 30cd1565e9355eaa01124e316957604446d5446f8d91feaf8e3e8172f2d5b31b4f090a98f81ef6552f0ef7b599c9d561ee1d1b06ac895a7c24d99565cfa890f4
+EBUILD ddclient-3.8.1-r5.ebuild 1416 SHA256 38bfdbdfb63712422cc168837b668fe64a03adb70f38a1322a88100cdbf014f8 SHA512 a9215c25bd9c90042267eb9c1f0c2258d86c814ac3d343c8c795ecf8eb7eda6cc3ce7fbf1823f917b60724232d118d5904cb55afa1549f875466fcefb7dfb2bb WHIRLPOOL 316c13d570897909056e813f9dde9edba433afa463ac6c6252c3b24602b9971afca0e758ee93db7daa949ec5d280f14f46ebbee8f053348613c1f3ce8129a691
+EBUILD ddclient-3.8.2.ebuild 1176 SHA256 2dabcd0307a8f3fe91180a7e8a0e696b703b72199554870d55214d6e47544a97 SHA512 b1105c13c16deda9923b1507fe6727905bc92911c3d6f206047ef4f89fc046feb08ed982448ce42743be06bc9f7eea3a5a2fa28f863459930512b5adee51335b WHIRLPOOL 615e3b86464fd44623f32f4889e74b77f132eed8550ba8e7f446aace9f65160eb1de82f8f8a0e392d20822ef9f8b33873d5bf699e689b1fb4ec99a771c20b177
+EBUILD ddclient-3.8.3.ebuild 1190 SHA256 be285957edfe217328f5dbe9c0b0c4303600a5fa6aa6ba78a4291df5c3c68a82 SHA512 584e18a5bdbc165e216e74650a3fa48fdffa1bfde112ae30ce0d7a3c677ee67dc9c988fecc9a7bf059a483dfa54837d075536cfd826a1613169140f32efde3e4 WHIRLPOOL 4a728efb7a1ef4e9a5c9fe0efce66ed53f0cc45690d598c26da88d5018df85bb8600217c35ad984da763cf2dd33a180217ca5d1276e12a9ec02e9b59e0007e4f
+MISC ChangeLog 3081 SHA256 a873900d4554c35b5a40b9ddeccd40520b52683863a2f87ef9018fd826915cab SHA512 e009342f03221e98871cd870f653b6f5226c6e0231bee04f1744f9d90c3eb8f37cb930ec52d92939c69d5768662e5dfd6f4f5385f7c383d67159e3f862c66bdb WHIRLPOOL 32f10cfe00bbc1b04aa9278d725d54b37daedf81a886d3fa4d395a08f3f7a3a8080105ffea56b4f83d0c62e15088857e67357e7b30ccc64953f8e06e46709d1e
+MISC ChangeLog-2015 11285 SHA256 d0ff9c15ab227d910126ea07009b1cdecd4d15f8aac595cf970ebc48ece52dd4 SHA512 e83f8bf3560f663d6db04e30744d443a23fc497821ee3a3339899f017e33bc2cc715f29b7358489eb35df70c7c152717ddd74b4dda71771ee54fffdbc2db1ec0 WHIRLPOOL 8893c6c7104f62e0da2f10057d5d7028f8458e0c7b654637d46b85c709f020d2f8197f3fec968f7c2dadbf214c1a24f58fbeddd4beb2b6a79217953791feeb50
+MISC metadata.xml 535 SHA256 7aee32b3e5f20c20573b4cf313ee0801949a24e06dd70a9e1c5871ea65aab88b SHA512 7803f404d9c75941f563ea91af06d41b2b694713a9484b787a566d5dff5db2be80ed92b01bcccf88c695bd5e83cb52bb71b8b44fa30f13a5dcd564c552aca72d WHIRLPOOL b307494aeeac1d7ed823ecd1a5718c977ffee0929d853fefa29c1fc49eaa88279894e476e5a5971cc99fef2d3f02716b85f8c3f22402fb6a31ddef979cf2f0ca
diff --git a/net-dns/ddclient/ddclient-3.8.1-r5.ebuild b/net-dns/ddclient/ddclient-3.8.1-r5.ebuild
new file mode 100644
index 000000000000..f4c2cb5db010
--- /dev/null
+++ b/net-dns/ddclient/ddclient-3.8.1-r5.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+inherit eutils systemd user
+
+DESCRIPTION="Perl updater client for dynamic DNS services"
+HOMEPAGE="http://ddclient.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="hardened"
+
+RDEPEND=">=dev-lang/perl-5.1
+ dev-perl/Digest-SHA1
+ dev-perl/IO-Socket-SSL
+ hardened? ( sys-apps/iproute2 )
+"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_prepare() {
+ # Remove pid line, because it is specified in /etc/init.d/ddclient
+ ebegin "Removing PID setup from ${PN}.conf"
+ if ! sed '/^pid/d' -i "sample-etc_${PN}.conf"; then
+ eerror "Failed to remove pid from /etc/${PN}/${PN}.conf"
+ fi
+ eend $?
+
+ use hardened && epatch "${FILESDIR}/iproute2.patch"
+
+ epatch "${FILESDIR}/cmd-over-cfg.patch"
+}
+
+src_install() {
+ dosbin ${PN}
+ dodoc Change* COPYRIGHT README* RELEASENOTE sample*
+
+ newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ keepdir /var/cache/${PN}
+ fowners -R ${PN}:${PN} /var/cache/${PN}
+
+ insinto /etc/${PN}
+ insopts -m 0600 -o ${PN} -g ${PN}
+ newins sample-etc_${PN}.conf ${PN}.conf
+ newins sample-etc_${PN}.conf ${PN}.conf.sample
+ fowners -R ${PN}:${PN} /etc/${PN}
+}
diff --git a/net-dns/ddclient/ddclient-3.8.2.ebuild b/net-dns/ddclient/ddclient-3.8.2.ebuild
new file mode 100644
index 000000000000..512df84b706c
--- /dev/null
+++ b/net-dns/ddclient/ddclient-3.8.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+inherit systemd user
+
+DESCRIPTION="Perl updater client for dynamic DNS services"
+HOMEPAGE="http://ddclient.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="hardened"
+
+RDEPEND=">=dev-lang/perl-5.1
+ virtual/perl-Digest-SHA
+ dev-perl/IO-Socket-SSL
+ hardened? ( sys-apps/iproute2 )
+"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_prepare() {
+ # Remove pid setting because we can't leave it user configurable and
+ # reliably setup the environment for the init script to stop ${PN}
+ ebegin "Removing PID setting from ${PN}.conf"
+ sed '/^pid/d' -i "sample-etc_${PN}.conf"
+ eend $?
+}
+
+src_install() {
+ dosbin ${PN}
+ dodoc Change* COPYRIGHT README* RELEASENOTE sample*
+
+ newinitd "${FILESDIR}/${PN}.initd-r4" ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ insopts -m 0600 -o ${PN} -g ${PN}
+ insinto /etc/${PN}
+ newins sample-etc_${PN}.conf ${PN}.conf
+ newins sample-etc_${PN}.conf ${PN}.conf.sample
+}
diff --git a/net-dns/ddclient/ddclient-3.8.3.ebuild b/net-dns/ddclient/ddclient-3.8.3.ebuild
new file mode 100644
index 000000000000..5ba587c41d29
--- /dev/null
+++ b/net-dns/ddclient/ddclient-3.8.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+inherit systemd user
+
+DESCRIPTION="Perl updater client for dynamic DNS services"
+HOMEPAGE="http://ddclient.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~x86 ~x86-fbsd"
+IUSE="cloudflare hardened"
+
+RDEPEND=">=dev-lang/perl-5.1
+ virtual/perl-Digest-SHA
+ dev-perl/IO-Socket-SSL
+ cloudflare? ( dev-perl/JSON-Any )
+ hardened? ( sys-apps/iproute2 )
+"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_prepare() {
+ default
+
+ # Remove pid setting because we can't leave it user configurable and
+ # reliably setup the environment for the init script to stop ${PN}
+ ebegin "Removing PID setting from ${PN}.conf"
+ sed '/^pid/d' -i "sample-etc_${PN}.conf" || die
+ eend $?
+}
+
+src_install() {
+ dosbin ${PN}
+ dodoc Change* COPYRIGHT README* RELEASENOTE sample*
+
+ newinitd "${FILESDIR}/${PN}.initd-r4" ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ insopts -m 0600 -o ${PN} -g ${PN}
+ insinto /etc/${PN}
+ newins sample-etc_${PN}.conf ${PN}.conf
+ newins sample-etc_${PN}.conf ${PN}.conf.sample
+}
diff --git a/net-dns/ddclient/files/cmd-over-cfg.patch b/net-dns/ddclient/files/cmd-over-cfg.patch
new file mode 100644
index 000000000000..9033873fde74
--- /dev/null
+++ b/net-dns/ddclient/files/cmd-over-cfg.patch
@@ -0,0 +1,11 @@
+--- ddclient.old 2011-11-13 10:14:59.957846596 -0500
++++ ddclient 2011-11-13 10:18:33.864245944 -0500
+@@ -773,7 +773,7 @@
+ foreach my $h (sort keys %config) {
+ next if $config{$h}{'protocol'} ne lc($s);
+ $examined{$h} = 1;
+- my $use = $config{$h}{'use'} || opt('use');
++ my $use = opt('use') || $config{$h}{'use'};
+ local $opt{$use} = $config{$h}{$use} if $config{$h}{$use};
+ # bug #13: we should only do this once
+ # use isn't enough, we have to save the origin to.
diff --git a/net-dns/ddclient/files/ddclient.confd b/net-dns/ddclient/files/ddclient.confd
new file mode 100644
index 000000000000..2408a40bb6f4
--- /dev/null
+++ b/net-dns/ddclient/files/ddclient.confd
@@ -0,0 +1,2 @@
+# No need to specify a pid in /etc/ddclient/ddclient.conf
+PIDFILE=/var/run/ddclient/ddclient.pid
diff --git a/net-dns/ddclient/files/ddclient.confd-r1 b/net-dns/ddclient/files/ddclient.confd-r1
new file mode 100644
index 000000000000..69ad0eeff87d
--- /dev/null
+++ b/net-dns/ddclient/files/ddclient.confd-r1
@@ -0,0 +1,2 @@
+# No need to specify a pid in /etc/ddclient/ddclient.conf
+#PIDFILE=/var/run/ddclient/ddclient.pid
diff --git a/net-dns/ddclient/files/ddclient.initd-r3 b/net-dns/ddclient/files/ddclient.initd-r3
new file mode 100644
index 000000000000..e0606a60b11c
--- /dev/null
+++ b/net-dns/ddclient/files/ddclient.initd-r3
@@ -0,0 +1,57 @@
+#!/sbin/openrc-run
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+if [ -d /run ] ; then
+ PIDFILE=${PIDFILE:-/run/ddclient/ddclient.pid}
+else
+ PIDFILE=${PIDFILE:-/var/run/ddclient/ddclient.pid}
+fi
+
+depend() {
+ before cron
+ need net
+ use dns logger squid
+}
+
+checkconfig() {
+ local conf="/etc/ddclient/ddclient.conf"
+
+ if [ -e "${conf}" ] ; then
+ if [ -n "$(find /etc/ddclient -maxdepth 1 -name ddclient.conf -perm +0044)" ] ; then
+ eerror "${conf} must not be world or group readable. Try:"
+ eerror " chmod 600 ${conf}"
+ eerror " chown ddclient:ddclient ${conf}"
+ return 1
+ fi
+ else
+ eerror "${conf} is needed to run ddclient"
+ eerror "There is a sample file in /etc/ddclient/"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+
+ local piddir=$(dirname ${PIDFILE})
+ if [ ! -d ${piddir} ] ; then
+ ebegin "Making ${piddir}"
+ mkdir -p ${piddir}
+ eend $?
+ ebegin "Changing permissions of ${piddir}"
+ chown ddclient:ddclient ${piddir}
+ eend $?
+ fi
+
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --user ddclient --exec /usr/sbin/ddclient \
+ --name ddclient --pidfile ${PIDFILE} -- -pid=${PIDFILE}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --signal USR1 --pidfile ${PIDFILE}
+ eend $?
+}
diff --git a/net-dns/ddclient/files/ddclient.initd-r4 b/net-dns/ddclient/files/ddclient.initd-r4
new file mode 100644
index 000000000000..c25f02965196
--- /dev/null
+++ b/net-dns/ddclient/files/ddclient.initd-r4
@@ -0,0 +1,35 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+PIDFILE="/run/ddclient/ddclient.pid"
+
+depend() {
+ before cron
+ need net
+ use dns logger squid
+}
+
+checkconfig() {
+ checkpath -f -m 0600 -o ddclient:ddclient /etc/ddclient/ddclient.conf || return 1
+ checkpath -d -m 0700 -o ddclient:ddclient /run/ddclient || return 1
+ checkpath -d -m 0700 -o ddclient:ddclient /var/cache/ddclient || return 1
+}
+
+start() {
+ checkconfig || return 1
+
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start \
+ --user ddclient \
+ --name ddclient \
+ --pidfile ${PIDFILE} \
+ --exec /usr/sbin/ddclient -- -pid=${PIDFILE}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --signal USR1 --pidfile ${PIDFILE}
+ eend $?
+}
diff --git a/net-dns/ddclient/files/ddclient.service b/net-dns/ddclient/files/ddclient.service
new file mode 100644
index 000000000000..e2d3608d44d4
--- /dev/null
+++ b/net-dns/ddclient/files/ddclient.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Dynamic DNS Update Client
+After=network.target
+ConditionPathExists=/etc/ddclient/ddclient.conf
+
+[Service]
+ExecStart=/usr/sbin/ddclient --foreground
+User=ddclient
+Group=ddclient
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-dns/ddclient/files/iproute2.patch b/net-dns/ddclient/files/iproute2.patch
new file mode 100644
index 000000000000..f81dd8c00d82
--- /dev/null
+++ b/net-dns/ddclient/files/iproute2.patch
@@ -0,0 +1,30 @@
+diff -u a/ddclient b/ddclient
+--- a/ddclient 2011-07-11 17:04:21.000000000 -0400
++++ b/ddclient 2011-08-12 20:13:15.980466303 -0400
+@@ -588,7 +588,7 @@
+ [ "ip", "=s", "-ip address : set the IP address to 'address'" ],
+ "",
+ [ "if", "=s", "-if interface : obtain IP address from 'interface'" ],
+- [ "if-skip", "=s", "-if-skip pattern : skip any IP addresses before 'pattern' in the output of ifconfig {if}" ],
++ [ "if-skip", "=s", "-if-skip pattern : skip any IP addresses before 'pattern' in the output of ip addr show {if}" ],
+ "",
+ [ "web", "=s", "-web provider|url : obtain IP address from provider's IP checking page" ],
+ [ "web-skip", "=s", "-web-skip pattern : skip any IP addresses before 'pattern' on the web provider|url" ],
+@@ -1316,7 +1316,7 @@
+
+ {
+ local $opt{'use'} = 'if';
+- foreach my $if (grep {/^[a-zA-Z]/} `ifconfig -a`) {
++ foreach my $if (grep {/^[a-zA-Z]/} `ip addr show`) {
+ $if =~ s/:?\s.*//is;
+ local $opt{'if'} = $if;
+ printf "use=if, if=%s address is %s\n", opt('if'), define(get_ip('if'), 'NOT FOUND');
+@@ -1937,7 +1937,7 @@
+
+ } elsif ($use eq 'if') {
+ $skip = opt('if-skip', $h) || '';
+- $reply = `ifconfig $arg 2> /dev/null`;
++ $reply = `ip addr show $arg 2> /dev/null`;
+ $reply = '' if $?;
+
+ } elsif ($use eq 'cmd') {
diff --git a/net-dns/ddclient/metadata.xml b/net-dns/ddclient/metadata.xml
new file mode 100644
index 000000000000..e4faff9063ad
--- /dev/null
+++ b/net-dns/ddclient/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>titanofold@gentoo.org</email>
+ <name>Aaron W. Swenson</name>
+ </maintainer>
+ <use>
+ <flag name="cloudflare">Enable support for updating IP address via CloudFlare</flag>
+ <flag name="hardened">Use iproute2 instead of ifconfig to grab an IP address</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">ddclient</remote-id>
+ </upstream>
+</pkgmetadata>