diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-09-06 10:28:05 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-09-06 10:28:05 +0100 |
commit | f1af93971b7490792d8541bc790e0d8c6d787059 (patch) | |
tree | a38046712bbc3a3844d77452d16c84e716caa3d4 /net-misc/dhcpcd | |
parent | fc637fb28da700da71ec2064d65ca5a7a31b9c6c (diff) |
gentoo resync : 06.08.2019
Diffstat (limited to 'net-misc/dhcpcd')
-rw-r--r-- | net-misc/dhcpcd/Manifest | 7 | ||||
-rw-r--r-- | net-misc/dhcpcd/dhcpcd-8.0.3.ebuild (renamed from net-misc/dhcpcd/dhcpcd-8.0.2-r1.ebuild) | 4 | ||||
-rw-r--r-- | net-misc/dhcpcd/dhcpcd-8.0.4.ebuild | 144 | ||||
-rw-r--r-- | net-misc/dhcpcd/files/dhcpcd-8.0.2-string_termination.patch | 80 |
4 files changed, 148 insertions, 87 deletions
diff --git a/net-misc/dhcpcd/Manifest b/net-misc/dhcpcd/Manifest index aa83e8587874..c2b1b5f2d533 100644 --- a/net-misc/dhcpcd/Manifest +++ b/net-misc/dhcpcd/Manifest @@ -1,9 +1,10 @@ -AUX dhcpcd-8.0.2-string_termination.patch 1827 BLAKE2B d90f757e740cf73adc76d82705f669bd0d43415f523ff01d11c0afe911ab744cf5d36b32906209abc110eff2355f1687b2055cfac4a22085ba4aee65c74e5e27 SHA512 1d232efc8c822534dd55a5e5998392e4ded7b9051b69413a7ef44b450a1e050c651467148d560008fd537a5388873ba0d2efe9f4f6e4b7829f3f6ae87d82971e AUX dhcpcd.initd 328 BLAKE2B 72ef6bb16e4f80b440890112cd399eca1057ae42ddc96ee1a29482a048682dd34e065bb68876329ecfe2f1db4c084e320f4185b3029b89c2328d6ab27a1a7e80 SHA512 6d3220155f2d9ed3e3a00afd378eeb70d435e19804201f8bb35498f1f7f3dfdaeaa2f4a01a18f5e96b457d9c173bc6a206b3e67ebf6d95da7e7b350dcd153fde AUX dhcpcd.service 227 BLAKE2B e24aa85c15d0211856b02508b681f7e3c1f8b8b1743f31ced9600c2c33da04b61f2166cad7696776ae81ce1be5701cae2691f6dfd86aaf8679f20e459e87c7e5 SHA512 4a030dc291fa7deba9c1f33d61dafdda710247ef7f3743c28e46b767a190e359e468433147bda23c82fae9c93ec31cd68905bfdb51cb8c2d9176ea789b31b14e DIST dhcpcd-7.2.3.tar.xz 213552 BLAKE2B 5f89e11424b85702b05da6207ec346480c029de1416cc8892471de428ca0a4395a8915700e2237bfa2b133648973bc2a7c7d15aa2d0ba492f96fbf3908d7f613 SHA512 271cca422fad10eaf842acfd5b590c0ad537f5f23ee919a3928d8ad98463ab03bde21c0bc08741ea9618ee31095160a7c00066155eae2c74b17c49af65ba566f -DIST dhcpcd-8.0.2.tar.xz 222408 BLAKE2B fb27a33cd64c7aeedb28e05c885c860618d923ac857895b9fdc7daa608f433587bea1e6630fd9897426b371a45b8a336e1edaa804d76eda6e9fc2adc1411aed2 SHA512 a6e3aa66800adc8b209324bae02a6e373e2623735bf0695ffec4a7c972d65c3498f55e4da62f93df0bc6cddb4bee8ab667b3743b5b25cd5f4cc9da4d1f8e15c4 +DIST dhcpcd-8.0.3.tar.xz 223104 BLAKE2B ca1b35e0fc0f8b345d2a55e380aa4e10b864f18f4b5368659875ef5efc955fac442b0505b0192578d83fa8c3b304942e50aa082d753e98dc3cd44237100f106c SHA512 0a740286181e1b24e7ac5157f60727c2a3abd81080235efc8ba86628bb8e2aa877b8d9348055c16cdae1a819f443afbf452907a25152bb936a6dc72f3a179944 +DIST dhcpcd-8.0.4.tar.xz 224236 BLAKE2B ae1bc71fef58526482d5c0b34f66d68ad4baf84979da2fa90d51ec1831ccdc2a2d77dc1a09b52b8fa58deed42ff7c6af49a165afba50decae0085788bcbb10c2 SHA512 d5ea895b841a1afcabd50013800f567c0a9c077cd409ec18c5442b3da6bac814db5e9ae4a4218076eb5119bd7ccb732d3f58e22dcbba38ede26ee668f9733ec4 EBUILD dhcpcd-7.2.3.ebuild 4407 BLAKE2B 6f5df954ec0be66be6a4f4c1b63a1dee87e78d5cab8de8cbe935bd0d2a82caf70c5dc8d513ddc69b6e317a3d44c2a527529420da71ecf1489a71cdc2f4384eb5 SHA512 aa591926ec797c71c9d28d91a64257eaee76e2fae6853925e0b0fdf9001fd6279bdae68bdd2727f500661b8142c96b3c66ab28b055fb8887c4b7d96162d42843 -EBUILD dhcpcd-8.0.2-r1.ebuild 4486 BLAKE2B 4fa85a2475043c6a24402a596a38f1ff01aa9d8df9ce03270b411060383d4382e21958b7eb69c7e1963f3b9f5a9296bdbd4cc814c7e344a759fbd0e5500d1f3b SHA512 ba68295d42423c80ab51c332b642837e19bad3126584d9f0cb210fccf9ce4d51d197e159f79b7edfefc80996bc96d98a1dba7e0dc51d213bea54ebd596960982 +EBUILD dhcpcd-8.0.3.ebuild 4420 BLAKE2B d1788540e773dc7708565dd2343989522004ad307e0ae24fad827f9ecc8ebf181d47bc34e16179f50a16ece7105761f9177cb4e310a586b0ed11a5343dc97b03 SHA512 207fb14d4e3c6089d1f4ac5816fd3635c2e38d74e0f1dd19d41aa482d5b399f90a8b352e77eec7153019168746d7f1c63499a741430a8df95f3734bf7cfd878b +EBUILD dhcpcd-8.0.4.ebuild 4420 BLAKE2B d1788540e773dc7708565dd2343989522004ad307e0ae24fad827f9ecc8ebf181d47bc34e16179f50a16ece7105761f9177cb4e310a586b0ed11a5343dc97b03 SHA512 207fb14d4e3c6089d1f4ac5816fd3635c2e38d74e0f1dd19d41aa482d5b399f90a8b352e77eec7153019168746d7f1c63499a741430a8df95f3734bf7cfd878b EBUILD dhcpcd-9999.ebuild 4420 BLAKE2B d1788540e773dc7708565dd2343989522004ad307e0ae24fad827f9ecc8ebf181d47bc34e16179f50a16ece7105761f9177cb4e310a586b0ed11a5343dc97b03 SHA512 207fb14d4e3c6089d1f4ac5816fd3635c2e38d74e0f1dd19d41aa482d5b399f90a8b352e77eec7153019168746d7f1c63499a741430a8df95f3734bf7cfd878b MISC metadata.xml 569 BLAKE2B 0507986b52ed21277e159089c7f4736602917c44f0577d62e7501d728c348b49ecf3a2c92842c8e32a59402ad2c2e4e5c3fba510e227aca738a3d763b62689fe SHA512 9083c03d22c5753f54d9525ac954df8df0cceaed07c05c14367ea2b8598e7d7ab64711c810dc89a46be8d76cba6b9aa14fa389f0d686ed12792c0bfcbabc266a diff --git a/net-misc/dhcpcd/dhcpcd-8.0.2-r1.ebuild b/net-misc/dhcpcd/dhcpcd-8.0.3.ebuild index 1696c38dcf71..d8940210a7b5 100644 --- a/net-misc/dhcpcd/dhcpcd-8.0.2-r1.ebuild +++ b/net-misc/dhcpcd/dhcpcd-8.0.3.ebuild @@ -27,10 +27,6 @@ COMMON_DEPEND="udev? ( virtual/udev )" DEPEND="${COMMON_DEPEND}" RDEPEND="${COMMON_DEPEND}" -PATCHES=( - "${FILESDIR}"/${P}-string_termination.patch #691426 -) - src_configure() { local myeconfargs=( --dbdir="${EPREFIX}/var/lib/dhcpcd" diff --git a/net-misc/dhcpcd/dhcpcd-8.0.4.ebuild b/net-misc/dhcpcd/dhcpcd-8.0.4.ebuild new file mode 100644 index 000000000000..d8940210a7b5 --- /dev/null +++ b/net-misc/dhcpcd/dhcpcd-8.0.4.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit systemd toolchain-funcs + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://roy.marples.name/git/dhcpcd.git" +else + MY_P="${P/_alpha/-alpha}" + MY_P="${MY_P/_beta/-beta}" + MY_P="${MY_P/_rc/-rc}" + SRC_URI="https://roy.marples.name/downloads/${PN}/${MY_P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="A fully featured, yet light weight RFC2131 compliant DHCP client" +HOMEPAGE="https://roy.marples.name/projects/dhcpcd" +LICENSE="BSD-2" +SLOT="0" +IUSE="elibc_glibc +embedded ipv6 kernel_linux +udev" + +COMMON_DEPEND="udev? ( virtual/udev )" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" + +src_configure() { + local myeconfargs=( + --dbdir="${EPREFIX}/var/lib/dhcpcd" + --libexecdir="${EPREFIX}/lib/dhcpcd" + --localstatedir="${EPREFIX}/var" + --prefix="${EPREFIX}" + --with-hook=ntp.conf + $(use_enable embedded) + $(use_enable ipv6) + $(usex elibc_glibc '--with-hook=yp.conf' '') + $(usex kernel_linux '--rundir=${EPREFIX}/run' '') + $(usex udev '' '--without-dev --without-udev') + CC="$(tc-getCC)" + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + keepdir /var/lib/dhcpcd + newinitd "${FILESDIR}"/${PN}.initd ${PN} + systemd_dounit "${FILESDIR}"/${PN}.service +} + +pkg_postinst() { + local dbdir="${EROOT}"/var/lib/dhcpcd old_files=() + + local old_old_duid="${EROOT}"/var/lib/dhcpcd/dhcpcd.duid + local old_duid="${EROOT}"/etc/dhcpcd.duid + local new_duid="${dbdir}"/duid + if [[ -e "${old_old_duid}" ]] ; then + # Upgrade the duid file to the new format if needed + if ! grep -q '..:..:..:..:..:..' "${old_old_duid}"; then + sed -i -e 's/\(..\)/\1:/g; s/:$//g' "${old_old_duid}" + fi + + # Move the duid to /etc, a more sensible location + if [[ ! -e "${old_duid}" ]] ; then + cp -p "${old_old_duid}" "${new_duid}" + fi + old_files+=( "${old_old_duid}" ) + fi + + # dhcpcd-7 moves the files out of /etc + if [[ -e "${old_duid}" ]] ; then + if [[ ! -e "${new_duid}" ]] ; then + cp -p "${old_duid}" "${new_duid}" + fi + old_files+=( "${old_duid}" ) + fi + local old_secret="${EROOT}"/etc/dhcpcd.secret + local new_secret="${dbdir}"/secret + if [[ -e "${old_secret}" ]] ; then + if [[ ! -e "${new_secret}" ]] ; then + cp -p "${old_secret}" "${new_secret}" + fi + old_files+=( "${old_secret}" ) + fi + + # dhcpcd-7 renames some files in /var/lib/dhcpcd + local old_rdm="${dbdir}"/dhcpcd-rdm.monotonic + local new_rdm="${dbdir}"/rdm_monotonic + if [[ -e "${old_rdm}" ]] ; then + if [[ ! -e "${new_rdm}" ]] ; then + cp -p "${old_rdm}" "${new_rdm}" + fi + old_files+=( "${old_rdm}" ) + fi + local lease= + for lease in "${dbdir}"/dhcpcd-*.lease*; do + [[ -f "${lease}" ]] || continue + old_files+=( "${lease}" ) + local new_lease=$(basename "${lease}" | sed -e "s/dhcpcd-//") + [[ -e "${dbdir}/${new_lease}" ]] && continue + cp "${lease}" "${dbdir}/${new_lease}" + done + + # Warn about removing stale files + if [[ -n "${old_files[@]}" ]] ; then + elog + elog "dhcpcd-7 has copied dhcpcd.duid and dhcpcd.secret from" + elog "${EROOT}/etc to ${dbdir}" + elog "and copied leases in ${dbdir} to new files with the dhcpcd-" + elog "prefix dropped." + elog + elog "You should remove these files if you don't plan on reverting" + elog "to an older version:" + local old_file= + for old_file in ${old_files[@]}; do + elog " ${old_file}" + done + fi + + if [ -z "${REPLACING_VERSIONS}" ]; then + elog + elog "dhcpcd has zeroconf support active by default." + elog "This means it will always obtain an IP address even if no" + elog "DHCP server can be contacted, which will break any existing" + elog "failover support you may have configured in your net configuration." + elog "This behaviour can be controlled with the noipv4ll configuration" + elog "file option or the -L command line switch." + elog "See the dhcpcd and dhcpcd.conf man pages for more details." + + elog + elog "Dhcpcd has duid enabled by default, and this may cause issues" + elog "with some dhcp servers. For more information, see" + elog "https://bugs.gentoo.org/show_bug.cgi?id=477356" + fi + + if ! has_version net-dns/bind-tools; then + elog + elog "If you activate the lookup-hostname hook to look up your hostname" + elog "using the dns, you need to install net-dns/bind-tools." + fi +} diff --git a/net-misc/dhcpcd/files/dhcpcd-8.0.2-string_termination.patch b/net-misc/dhcpcd/files/dhcpcd-8.0.2-string_termination.patch deleted file mode 100644 index a1bc19ec974d..000000000000 --- a/net-misc/dhcpcd/files/dhcpcd-8.0.2-string_termination.patch +++ /dev/null @@ -1,80 +0,0 @@ -https://bugs.gentoo.org/691426 - -diff --git a/src/dhcp-common.c b/src/dhcp-common.c -index 08ab9493..9f556557 100644 ---- a/src/dhcp-common.c -+++ b/src/dhcp-common.c -@@ -645,14 +645,16 @@ print_option(FILE *fp, const char *prefix, const struct dhcp_opt *opt, - if (fputc('=', fp) == EOF) - return -1; - if (dl == 0) -- return 1; -+ goto out; - - if (opt->type & OT_RFC1035) { - char domain[NS_MAXDNAME]; - - sl = decode_rfc1035(domain, sizeof(domain), data, dl); -- if (sl == 0 || sl == -1) -- return sl; -+ if (sl == -1) -+ return -1; -+ if (sl == 0) -+ goto out; - if (valid_domainname(domain, opt->type) == -1) - return -1; - return efprintf(fp, "%s", domain); -@@ -693,9 +695,7 @@ print_option(FILE *fp, const char *prefix, const struct dhcp_opt *opt, - return -1; - } - } -- if (fputc('\0', fp) == EOF) -- return -1; -- return 1; -+ goto out; - } - - t = data; -@@ -760,6 +760,7 @@ print_option(FILE *fp, const char *prefix, const struct dhcp_opt *opt, - } - } - -+out: - if (fputc('\0', fp) == EOF) - return -1; - return 1; -diff --git a/src/script.c b/src/script.c -index 74aef1b1..3dee7b08 100644 ---- a/src/script.c -+++ b/src/script.c -@@ -33,6 +33,7 @@ - #include <netinet/in.h> - #include <arpa/inet.h> - -+#include <assert.h> - #include <ctype.h> - #include <errno.h> - #include <signal.h> -@@ -477,12 +478,21 @@ dumplease: - fp = NULL; - #endif - -+ /* Count the terminated env strings. -+ * assert that the terminations are correct. */ - nenv = 0; - endp = buf + buf_pos; - for (bufp = buf; bufp < endp; bufp++) { -- if (*bufp == '\0') -+ if (*bufp == '\0') { -+#ifndef NDEBUG -+ if (bufp + 1 < endp) -+ assert(*(bufp + 1) != '\0'); -+#endif - nenv++; -+ } - } -+ assert(*--bufp == '\0'); -+ - if (ctx->script_envlen < nenv) { - env = reallocarray(ctx->script_env, nenv + 1, sizeof(*env)); - if (env == NULL) |