diff options
author | 2011-03-06 00:04:27 +0000 | |
---|---|---|
committer | 2011-03-06 00:04:27 +0000 | |
commit | 4c997983faa0bad89718e4903be277ceab133224 (patch) | |
tree | 9aad1c443c371f9db5c1ac74b2ba7800a54ab7c6 /net-misc/dhcp | |
parent | Version bump #309133 by Milan Dadok, #325605 by Stefan Behte, and #352897 by ... (diff) | |
download | gentoo-2-4c997983faa0bad89718e4903be277ceab133224.tar.gz gentoo-2-4c997983faa0bad89718e4903be277ceab133224.tar.bz2 gentoo-2-4c997983faa0bad89718e4903be277ceab133224.zip |
old
(Portage version: 2.1.9.25/cvs/Linux x86_64)
Diffstat (limited to 'net-misc/dhcp')
-rw-r--r-- | net-misc/dhcp/Manifest | 14 | ||||
-rw-r--r-- | net-misc/dhcp/dhcp-3.1.1-r1.ebuild | 242 | ||||
-rw-r--r-- | net-misc/dhcp/dhcp-3.1.1.ebuild | 238 | ||||
-rw-r--r-- | net-misc/dhcp/dhcp-3.1.2.ebuild | 239 | ||||
-rw-r--r-- | net-misc/dhcp/dhcp-3.1.3.ebuild | 247 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.0-ddns-example.patch | 13 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.0.3-dhclient-resolvconf.patch | 191 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.0.3-dhclient-stdin-conf.patch | 77 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.0.3-tr.patch | 12 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.0.3-x-option.patch | 216 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcp-3.1.1-CVE-2009-0692.patch | 14 | ||||
-rw-r--r-- | net-misc/dhcp/files/dhcpd.init | 71 |
12 files changed, 0 insertions, 1574 deletions
diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest index 72b931de7484..7d3a207043e6 100644 --- a/net-misc/dhcp/Manifest +++ b/net-misc/dhcp/Manifest @@ -1,4 +1,3 @@ -AUX dhcp-3.0-ddns-example.patch 401 RMD160 0188ae91fb58fc6f8c0d1b5bcbed58582dfed099 SHA1 c9e0f4c9ccbf1ff89076ff1bec37fb6d1276b7f0 SHA256 cf136ce92ea8f3337b9ded9c6f4f019db9782a68c63a3e8b712d26a04c2c9584 AUX dhcp-3.0-fix-perms.patch 485 RMD160 3857270dffed5feee95609aeb37d0c9ef8844945 SHA1 1217265a8a7f1416b781e9f79e8dfb8304268e6c SHA256 a805a60b36e148886887aebb797e80f642386b3e55ef4a0b5132f96a2877e018 AUX dhcp-3.0-paranoia.patch 5366 RMD160 7c64e3dac5b07ff3859fcaa7a8b0e52a0c50446c SHA1 a30103c138e480766f84644fffb1d0897709c27d SHA256 a8db9eb98397a9c1b3a0de07fc107c39dc4f6a4a331d404fc6fcc4a8dbc7aeae AUX dhcp-3.0.2-gmake.patch 1872 RMD160 d2d41c0a7e002103d68605d2492bfe716bb2889e SHA1 f60c89233f06ca8554cd5cc9ed0301b597a724f7 SHA256 b2bbfc1d1f5b4d03ff3f53b3974ec32731e5f626de8f8d127328591e4c721215 @@ -8,16 +7,11 @@ AUX dhcp-3.0.3-dhclient-metric.patch 7270 RMD160 04187868f66e03a62dafd31b4cdcdd2 AUX dhcp-3.0.3-dhclient-mtu.patch 6413 RMD160 2517c7fe58d7dca95bdbdc80e96b6260cc205e56 SHA1 da342800bafee86726570aa0a5e4e3c8bd5f1371 SHA256 0a4bff3c4c44252125f66a3a4423f677465592b84a8f7f500bad9ba4e3b5cb06 AUX dhcp-3.0.3-dhclient-no-down.patch 2332 RMD160 26d0c88534b71070e81c86c12b76a2b4ec7c9c2c SHA1 b2a00d46754414e937dc6c3d63a28b63b3b57ac9 SHA256 a5a67de79f6435d9bc4eeea416aff7a904ab567e5e8d75ecf34495bc9f2c5a44 AUX dhcp-3.0.3-dhclient-ntp.patch 5862 RMD160 73d001b7b2df36cf84aba9db76a1753c8d423a7d SHA1 cc3db6430f07f956c2ad25ed00e47d468eef2600 SHA256 80ab30eee75fb03c099416c25f031d03744011a582e8940c73077d5ee587c1ee -AUX dhcp-3.0.3-dhclient-resolvconf.patch 6659 RMD160 27e6d97ca0ca52fc85abeb4f21f4cea526cbffcb SHA1 d4808b4ba195a2fe1232136c2e36fb534a4c07c3 SHA256 3e2ec3758f6a56658aa1ef9c8ab29f655716015f0c75eba022fa6e1a5e28b1ac -AUX dhcp-3.0.3-dhclient-stdin-conf.patch 1948 RMD160 42f32a5bbfe2a937827c2972ef84cfa78c2c401c SHA1 ac7afd5ecbde5348e9acea532dab1e01e3a58e8b SHA256 e1bfd26b7da10acc4bd718e35aae4235308abcacde78dedf39533b11ab18b3ae AUX dhcp-3.0.3-libdst.patch 322 RMD160 5216c754a912cfcfc65683afcf44dbe1a7871212 SHA1 804bab67ae06269336c51183d5ff1e8ba45c20b5 SHA256 68e9a081739736980c0ad834dfa6197f940982f53d4d16054715c0346b5b9eca AUX dhcp-3.0.3-no_isc_blurb.patch 3002 RMD160 d70f89e1763bfeb23ce8f09399426983df01f7c8 SHA1 99a9fe69988226d29ccc6c2dc745ffab9b66817c SHA256 09c451cd9667fc8effcecd640f4cbe8629d41f6abacf9d1f2f923aab1f6e0bbb -AUX dhcp-3.0.3-tr.patch 377 RMD160 fe81fefb55796b4e06fa73ec180026dceef5599d SHA1 947a4002e7e2b21cd80fe0a3d0f6f044d5c6faff SHA256 05f81ad7c0e8cd2d2f3e81c0cd1aecc0f2a2787672037eca87e66a814150f5c8 -AUX dhcp-3.0.3-x-option.patch 6478 RMD160 a0fa5b3c7caf2d303a76c3d6fc135783cfa2bbc6 SHA1 4c77474307f9e657e45618f93ba9120eafd83a9e SHA256 6628629a95ee7e711f9dbce6b7d527b15f98eaf7592a1d0855d7bf65961bc3f7 AUX dhcp-3.0.4-dhclient-stdin-conf.patch 2176 RMD160 fae08899f6b57da3ec7ab0068e288bbdf2fbf2ae SHA1 c10c35dcf4a94f45f4bc98147a70e9dcf3f01dd5 SHA256 80141fe71e52774f1c7b1a02f2cbd49bc646f19753ceefc1c3605104df0cae5f AUX dhcp-3.0.5-bpf-nofallback.patch 1473 RMD160 1a5ece77cb481416935b0d2eea53e85dc4c4ee93 SHA1 d4cad638075a98606e07c633551c8a1d2f78f2e7 SHA256 b215c5ff4a282b475f28168250c05bbbc85e7c37e7af92616571d499b8c14da6 AUX dhcp-3.1.0a1-dhclient-resolvconf.patch 10316 RMD160 183bedd1660bf5a5f9dc7d002199e76aec12341c SHA1 1e0332ea31cfdbe92f3053405587f08117de8f8b SHA256 112b2ed44aab92592eb3810c61ada7f30d9d01fe43b647667326972a37b412a1 -AUX dhcp-3.1.1-CVE-2009-0692.patch 494 RMD160 42d3490a34b9559a9c0f335c2a3b8c8a2105d55f SHA1 e1c6da730672194b1771f0729c7d9f08073dfa6e SHA256 df77ad202d11e21355ed92bf015286fcd2f28ae21302283ab570ea4d9b9632af AUX dhcp-3.1.2_p1-CVE-2009-1892.patch 427 RMD160 fe7daa6834faa0f6078ef125525f6a2db0c05f37 SHA1 eb6dcedecef536f743e97e7d0b5eea0a08f5e55a SHA256 55bb136138b76d6fa9c9165b348fb2c6975b935b3bba72ea551fc8bcae4fcc9b AUX dhcp-3.1.3-dhclient-no-down.patch 2762 RMD160 bea58f58f745cbcee5d2d43f0dbabe54a1eaaafa SHA1 6ceb33afe42734b21b5ea91076b06c4fb4e9b81f SHA256 94c9dbe45063c6c600976ffab4c1fc9ac6f52f4e8077b5074f5142816ea626c4 AUX dhcp-4.0-dhclient-ntp.patch 7966 RMD160 d6dd1c3363f06712a82231eae1eb559f5a45bbb5 SHA1 3c1b373c6649c1ccb44f205fbee116c134514f4e SHA256 e93bda7f2baae9163f96ab0408bfbe885caa96a8698f9e566b8a9dc04de9359b @@ -26,23 +20,15 @@ AUX dhcp-4.2.0-errwarn-message.patch 1508 RMD160 604c680c22b620ae11e4c1ab83902a0 AUX dhcp-4.2.1-dhclient-resolvconf.patch 13742 RMD160 e226e793ab4d1302dbaf288c3077f3f6c8758b97 SHA1 d4ea97c3383c7f7769ab36c8d36674a3297dc1f9 SHA256 ddc284623b421098702d3e0cc1849b37c015e78dc510aa7efdd2e5fc9b6a849c AUX dhcp-4.2.1-nogateway.patch 1648 RMD160 820956e072e4a84ffabdee6714377ae23827b7bf SHA1 5c6c8118ee6b4b8524451827756aab052766ca09 SHA256 694caca5fbcf900cef2223307a43fb21a66fd672728cebfd873313730029acc4 AUX dhcpd.conf 1092 RMD160 936bb112c7cdf8e669b695599252d1f6626be2f3 SHA1 cbabbcea73a0cbc9692462683b983c96d6f18b0c SHA256 b86d27e0560689057b01a352474582fceb3a398eaf3b17f901378ec56284c4d5 -AUX dhcpd.init 1989 RMD160 7f6b6858020100e47efa5d6a0809b2959e551249 SHA1 2c611adc6425fd095740aa56d09d8aafb4fea58a SHA256 916bfeb81dcb3423fd4239270ac2dce2e6dc105b28a06e03b352f6bf6b30ed1e AUX dhcpd.init2 2421 RMD160 baa01ae97b227edba7653cd51735613be2dac652 SHA1 f2068ceb2d79d7992f46b31e6a6e3277a0167dce SHA256 fef93e5a7264780044a977ade27e9cc70de824063791bcd07d3db81c11c16df5 AUX dhcpd.init3 2525 RMD160 d56c77e6f2e3981c78c3fefad04347615e9d9d60 SHA1 c04f470d0cc3b262cf87cc766ceee5a35aec8b43 SHA256 69f5e6bee391a9a03554bead07c9dd5775e1fbb2a0ae515b7930cec328a8959c AUX dhcrelay.conf 421 RMD160 456edbc9bcc8d3a44db5bb6dbf0c3003c3e7419c SHA1 78ecdb000382893fb49d0052ced063955b0ad9cf SHA256 409b895ed489e75c1a08f72961b45d641b93fd9357f528abc78b1fd036b7f730 AUX dhcrelay.init 736 RMD160 04566b87bd6dbb8bb754b26409ca30b878ef3ca3 SHA1 72742b308314b2e1476b27e94212fbf4d179adc4 SHA256 cfdaff3a723be3935d06c14e171d4008f2ad3329bd05ac2e49c19bc0e14bc59c AUX dhcrelay.init2 713 RMD160 3de579e9c4544d55114c18886a7aa73a70621516 SHA1 5978ec44a7e85492c510be1a797a3dfc5dabcd05 SHA256 2cd189f463251c6ce5c6e816b9e19db0a742ace97b530f53d61a77b1cb52db20 DIST dhcp-3.1-ESV.tar.gz 797454 RMD160 c6a8d943240dde72d47bb9bfbd740ff6e68ceee9 SHA1 e1cce81ead844fbdaf7ad99ba1146efa0b8b72c0 SHA256 e316b7dc34f05e38724273a473f823719281f229a71a80bc358f8e74687fd7d7 -DIST dhcp-3.1.1.tar.gz 798228 RMD160 08ed15d26ca64928e1d3b07c631cbbfa9a3dc8cb SHA1 3f7e013cb62aed0f3af45bdd97424d8b63e9c280 SHA256 129024c7545e3e8d37e75cd5d534b50c53955592c4935189a57916e216355f6d -DIST dhcp-3.1.2.tar.gz 799626 RMD160 026ac48b176ec273397fafa8a834a21fd6331681 SHA1 a60cccec2402a35025ddaafc8ac896595188560e SHA256 80daba1e4ac220a0945778aa3c1c9eb7860c4426645660bebb8ed35a3231a2fb DIST dhcp-3.1.2p1.tar.gz 792355 RMD160 53434f8404c69e8e113cad030ec975cf13b467cc SHA1 730214fa6e70d187f1492aa3d4f1c2868ffcc8de SHA256 e0cb405e0fef0ecebec7aaed294032a06178ff28be87498596e6069ccda4341e -DIST dhcp-3.1.3.tar.gz 804097 RMD160 2337d1cc29e7be8ac973d8bfec633367dd37c12a SHA1 92fea5036c38a840f2f944b6cd1d90b18f950b7c SHA256 cb363247a897beaf5708c98d3a80dba8edd8f639d6bd1f4ada6c5a64ba51e2d4 DIST dhcp-4.2.1.tar.gz 8795980 RMD160 8ecb0608f2cdb660d27ce48b9ba09c64bb7af995 SHA1 dc9be6d2d458a5a7a921eb08281a431506fcca17 SHA256 5f10bb28740c3bd2c632f6dbd9de53fb7e9db07cd274c60c7c1884ae6d5870a1 -EBUILD dhcp-3.1.1-r1.ebuild 7581 RMD160 e3012da6c7602544a882dcc99059394eceb0ad1d SHA1 a78bf9beee75424a4c0dbdeeb79113a8d66b49b9 SHA256 2dbc3118d7955e0b31e63737732e413923810485ea929499231d41091379dc64 -EBUILD dhcp-3.1.1.ebuild 7430 RMD160 33dd30be2b4e210493421f4a50767f81ec7edb29 SHA1 33493ba5fbc4f8fbf03cad5218b7e53c413872ac SHA256 a594c7c0e519a8b9a1522c8a4033abf8d392f2675a159c4351bf41f1a5ba586d -EBUILD dhcp-3.1.2.ebuild 7470 RMD160 ce4c0c3c3122040ca19103c37981444a1429c160 SHA1 dca8a1670ffb298c32089ca58bfdc4019f3a357e SHA256 40e5f159eff7a142f64d2511d06536bd97e46170cf371d9ad2ebd9c74d61b02f EBUILD dhcp-3.1.2_p1.ebuild 7606 RMD160 4a092fb0f8337065432ad475193633dca2b381e1 SHA1 e883fef011969302fad6ede0977cb6e1a8387dc7 SHA256 765bcec429ccff09c85b0e466da0673813ed4440cdf31c316698e798892dc37d -EBUILD dhcp-3.1.3.ebuild 7697 RMD160 e30124e79caf736ad90aa90d91e23d7a0c193041 SHA1 d80cc702b12b017a1e17b363c12c103700cdd128 SHA256 36b770e0d9d337567144df45393f049f67a57ecbb08dd9d1361b27a88ab6d5a0 EBUILD dhcp-3.1.3_p1.ebuild 7772 RMD160 745ce5aa7dee055263c9518585c3c0b1bdfd54a8 SHA1 e19623ad15676759b79b50d103e72dd9ea3f6312 SHA256 9f82707e790928beef947dc872a10698d6ed60838a63d616c8cb0d97d2ade5cd EBUILD dhcp-4.2.1.ebuild 6194 RMD160 1035b980b6839f750fcc3c98228dba698fa66321 SHA1 713afe99bd4eea6c8a40d680bb92d1a76513ccf4 SHA256 d2d5d50958f1b24f98d04d46b865f0bc620e15bef17b255e4e6c61f7281317bb MISC ChangeLog 29385 RMD160 9ec4ba026b787822a87ddcb754f539e10e01a9ae SHA1 4d843bdfaf662e090adf420b6bbe556bbe946857 SHA256 0dc8fb2aa1b9c33a4768f6b6974ba241a7cbff949f617e7c25f0b85a4c14bd95 diff --git a/net-misc/dhcp/dhcp-3.1.1-r1.ebuild b/net-misc/dhcp/dhcp-3.1.1-r1.ebuild deleted file mode 100644 index 366e310796b9..000000000000 --- a/net-misc/dhcp/dhcp-3.1.1-r1.ebuild +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcp/dhcp-3.1.1-r1.ebuild,v 1.2 2010/01/15 19:00:22 ulm Exp $ - -inherit eutils flag-o-matic multilib toolchain-funcs - -MY_PV="${PV//_alpha/a}" -MY_PV="${MY_PV//_beta/b}" -MY_PV="${MY_PV//_rc/rc}" -MY_P="${PN}-${MY_PV}" -DESCRIPTION="ISC Dynamic Host Configuration Protocol" -HOMEPAGE="http://www.isc.org/products/DHCP" -SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz" - -LICENSE="as-is BSD" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="doc minimal static selinux kernel_linux" - -DEPEND="selinux? ( sec-policy/selinux-dhcp ) - kernel_linux? ( sys-apps/net-tools )" - -PROVIDE="virtual/dhcpc" - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - unpack ${A} - cd "${S}" - - # Gentoo patches - these will probably never be accepted upstream - # Enable chroot support - epatch "${FILESDIR}/${PN}"-3.0-paranoia.patch - # Fix some permission issues - epatch "${FILESDIR}/${PN}"-3.0-fix-perms.patch - # Enable dhclient to equery NTP servers - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-ntp.patch - # resolvconf support in dhclient-script - epatch "${FILESDIR}/${PN}"-3.1.0a1-dhclient-resolvconf.patch - # Fix setting hostnames on Linux - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-hostname.patch - # Allow mtu settings - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-mtu.patch - # Allow dhclient to use IF_METRIC to set route metrics - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-metric.patch - # Stop downing the interface on Linux as that breaks link dameons - # such as wpa_supplicant and netplug - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-no-down.patch - # Quiet the isc blurb - epatch "${FILESDIR}/${PN}"-3.0.3-no_isc_blurb.patch - # Enable dhclient to get extra configuration from stdin - epatch "${FILESDIR}/${PN}"-3.0.4-dhclient-stdin-conf.patch - # Disable fallback interfaces when using BPF - # This allows more than one dhclient instance on the BSD's - epatch "${FILESDIR}/${PN}"-3.0.5-bpf-nofallback.patch - - # General fixes which will probably be accepted upstream eventually - # Install libdst, #75544 - epatch "${FILESDIR}/${PN}"-3.0.3-libdst.patch - # Fix building on Gentoo/FreeBSD - epatch "${FILESDIR}/${PN}"-3.0.2-gmake.patch - - # NetworkManager support patches - # If they fail to apply to future versions they will be dropped - # Add dbus support to dhclient - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-dbus.patch - - # CVE-2009-0692: script_write_params() Stack-based buffer overflow in dhclient - # bug 275231 - epatch "${FILESDIR}/${PN}"-3.1.1-CVE-2009-0692.patch - - # Brand the version with Gentoo - # include revision if >0 - local newver="${MY_PV}-Gentoo" - [[ ${PR} != "r0" ]] && newver="${newver}-${PR}" - sed -i '/^#define DHCP_VERSION[ \t]\+/ s/'"${MY_PV}/${newver}/g" \ - includes/version.h || die - - # Change the hook script locations of the scripts - sed -i -e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \ - -e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \ - client/scripts/* || die - - # No need for the linux script to force bash, #158540. - sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die - - # Quiet the freebsd logger a little - sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die - - # Remove these options from the sample config - sed -i -e "/\(script\|host-name\|domain-name\) / d" \ - client/dhclient.conf || die - - # Build sed man pages as we don't ever support BSD 4.4 and older, #130251. - local x= - for x in Makefile.dist $(ls */Makefile.dist) ; do - sed -i -e 's/$(CATMANPAGES)/$(SEDMANPAGES)/g' "${x}" || die - done - - # Only install different man pages if we don't have en - if [[ " ${LINGUAS} " != *" en "* ]]; then - # Install Japanese man pages - if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then - einfo "Installing Japanese documention" - cp doc/ja_JP.eucJP/dhclient* client - cp doc/ja_JP.eucJP/dhcp* common - fi - fi - - # Now remove the non-english docs so there are no errors later - [[ -d doc/ja_JP.eucJP ]] && rm -rf doc/ja_JP.eucJP -} - -src_compile() { - use static && append-ldflags -static - - cat <<-END >> includes/site.h - #define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" - #define _PATH_DHCPD_PID "/var/run/dhcp/dhcpd.pid" - #define _PATH_DHCPD_DB "/var/lib/dhcp/dhcpd.leases" - #define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" - #define _PATH_DHCLIENT_DB "/var/lib/dhcp/dhclient.leases" - #define _PATH_DHCLIENT_PID "/var/run/dhcp/dhclient.pid" - #define DHCPD_LOG_FACILITY LOG_LOCAL1 - END - - cat <<-END > site.conf - CC = $(tc-getCC) - LFLAGS = ${LDFLAGS} - LIBDIR = /usr/$(get_libdir) - INCDIR = /usr/include - ETC = /etc/dhcp - VARDB = /var/lib/dhcp - VARRUN = /var/run/dhcp - ADMMANDIR = /usr/share/man/man8 - ADMMANEXT = .8 - FFMANDIR = /usr/share/man/man5 - FFMANEXT = .5 - LIBMANDIR = /usr/share/man/man3 - LIBMANEXT = .3 - USRMANDIR = /usr/share/man/man1 - USRMANEXT = .1 - MANCAT = man - END - - ./configure --copts "-DPARANOIA -DEARLY_CHROOT ${CFLAGS}" \ - || die "configure failed" - - # Remove server support from the Makefile - # We still install some extra crud though - if use minimal ; then - sed -i -e 's/\(server\|relay\|dhcpctl\)/ /g' work.*/Makefile || die - fi - emake || die "compile problem" -} - -src_install() { - make install DESTDIR="${D}" || die - use doc && dodoc README RELNOTES doc/* - - insinto /etc/dhcp - newins client/dhclient.conf dhclient.conf.sample - keepdir /var/{lib,run}/dhcp - - # Install our server files - if ! use minimal ; then - insinto /etc/dhcp - newins server/dhcpd.conf dhcpd.conf.sample - newinitd "${FILESDIR}"/dhcpd.init dhcpd - newinitd "${FILESDIR}"/dhcrelay.init dhcrelay - newconfd "${FILESDIR}"/dhcpd.conf dhcpd - newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay - - # We never want portage to own this file - rm -f "${D}"/var/lib/dhcp/dhcpd.leases - fi -} - -pkg_preinst() { - if ! use minimal ; then - enewgroup dhcp - enewuser dhcp -1 -1 /var/lib/dhcp dhcp - fi -} - -pkg_postinst() { - use minimal && return - - chown dhcp:dhcp "${ROOT}"/var/{lib,run}/dhcp - - if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then - ewarn - ewarn "WARNING: The dhcp init script has been renamed to dhcpd" - ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and" - ewarn "and dhcp should be removed from the default runlevel" - ewarn - fi - - einfo "You can edit /etc/conf.d/dhcpd to customize dhcp settings." - einfo - einfo "If you would like to run dhcpd in a chroot, simply configure the" - einfo "DHCPD_CHROOT directory in /etc/conf.d/dhcpd and then run:" - einfo " emerge --config =${PF}" -} - -pkg_config() { - if use minimal ; then - eerror "${PN} has not been compiled for server support" - eerror "emerge ${PN} without the minimal USE flag to use dhcp sever" - return 1 - fi - - local CHROOT="$( - sed -n -e 's/^[[:blank:]]\?DHCPD_CHROOT="*\([^#"]\+\)"*/\1/p' \ - "${ROOT}"/etc/conf.d/dhcpd - )" - - if [[ -z ${CHROOT} ]]; then - eerror "CHROOT not defined in /etc/conf.d/dhcpd" - return 1 - fi - - CHROOT="${ROOT}/${CHROOT}" - - if [[ -d ${CHROOT} ]] ; then - ewarn "${CHROOT} already exists - aborting" - return 0 - fi - - ebegin "Setting up the chroot directory" - mkdir -m 0755 -p "${CHROOT}/"{dev,etc,var/lib,var/run/dhcp} - cp /etc/{localtime,resolv.conf} "${CHROOT}"/etc - cp -R /etc/dhcp "${CHROOT}"/etc - cp -R /var/lib/dhcp "${CHROOT}"/var/lib - ln -s ../../var/lib/dhcp "${CHROOT}"/etc/dhcp/lib - chown -R dhcp:dhcp "${CHROOT}"/var/{lib,run}/dhcp - eend 0 - - local logger="$(best_version virtual/logger)" - einfo "To enable logging from the dhcpd server, configure your" - einfo "logger (${logger}) to listen on ${CHROOT}/dev/log" -} diff --git a/net-misc/dhcp/dhcp-3.1.1.ebuild b/net-misc/dhcp/dhcp-3.1.1.ebuild deleted file mode 100644 index bcb1e39c4eb6..000000000000 --- a/net-misc/dhcp/dhcp-3.1.1.ebuild +++ /dev/null @@ -1,238 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcp/dhcp-3.1.1.ebuild,v 1.10 2010/01/15 19:00:22 ulm Exp $ - -inherit eutils flag-o-matic multilib toolchain-funcs - -MY_PV="${PV//_alpha/a}" -MY_PV="${MY_PV//_beta/b}" -MY_PV="${MY_PV//_rc/rc}" -MY_P="${PN}-${MY_PV}" -DESCRIPTION="ISC Dynamic Host Configuration Protocol" -HOMEPAGE="http://www.isc.org/products/DHCP" -SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz" - -LICENSE="as-is BSD" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" -IUSE="doc minimal static selinux kernel_linux" - -DEPEND="selinux? ( sec-policy/selinux-dhcp ) - kernel_linux? ( sys-apps/net-tools )" - -PROVIDE="virtual/dhcpc" - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - unpack ${A} - cd "${S}" - - # Gentoo patches - these will probably never be accepted upstream - # Enable chroot support - epatch "${FILESDIR}/${PN}"-3.0-paranoia.patch - # Fix some permission issues - epatch "${FILESDIR}/${PN}"-3.0-fix-perms.patch - # Enable dhclient to equery NTP servers - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-ntp.patch - # resolvconf support in dhclient-script - epatch "${FILESDIR}/${PN}"-3.1.0a1-dhclient-resolvconf.patch - # Fix setting hostnames on Linux - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-hostname.patch - # Allow mtu settings - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-mtu.patch - # Allow dhclient to use IF_METRIC to set route metrics - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-metric.patch - # Stop downing the interface on Linux as that breaks link dameons - # such as wpa_supplicant and netplug - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-no-down.patch - # Quiet the isc blurb - epatch "${FILESDIR}/${PN}"-3.0.3-no_isc_blurb.patch - # Enable dhclient to get extra configuration from stdin - epatch "${FILESDIR}/${PN}"-3.0.4-dhclient-stdin-conf.patch - # Disable fallback interfaces when using BPF - # This allows more than one dhclient instance on the BSD's - epatch "${FILESDIR}/${PN}"-3.0.5-bpf-nofallback.patch - - # General fixes which will probably be accepted upstream eventually - # Install libdst, #75544 - epatch "${FILESDIR}/${PN}"-3.0.3-libdst.patch - # Fix building on Gentoo/FreeBSD - epatch "${FILESDIR}/${PN}"-3.0.2-gmake.patch - - # NetworkManager support patches - # If they fail to apply to future versions they will be dropped - # Add dbus support to dhclient - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-dbus.patch - - # Brand the version with Gentoo - # include revision if >0 - local newver="${MY_PV}-Gentoo" - [[ ${PR} != "r0" ]] && newver="${newver}-${PR}" - sed -i '/^#define DHCP_VERSION[ \t]\+/ s/'"${MY_PV}/${newver}/g" \ - includes/version.h || die - - # Change the hook script locations of the scripts - sed -i -e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \ - -e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \ - client/scripts/* || die - - # No need for the linux script to force bash, #158540. - sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die - - # Quiet the freebsd logger a little - sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die - - # Remove these options from the sample config - sed -i -e "/\(script\|host-name\|domain-name\) / d" \ - client/dhclient.conf || die - - # Build sed man pages as we don't ever support BSD 4.4 and older, #130251. - local x= - for x in Makefile.dist $(ls */Makefile.dist) ; do - sed -i -e 's/$(CATMANPAGES)/$(SEDMANPAGES)/g' "${x}" || die - done - - # Only install different man pages if we don't have en - if [[ " ${LINGUAS} " != *" en "* ]]; then - # Install Japanese man pages - if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then - einfo "Installing Japanese documention" - cp doc/ja_JP.eucJP/dhclient* client - cp doc/ja_JP.eucJP/dhcp* common - fi - fi - - # Now remove the non-english docs so there are no errors later - [[ -d doc/ja_JP.eucJP ]] && rm -rf doc/ja_JP.eucJP -} - -src_compile() { - use static && append-ldflags -static - - cat <<-END >> includes/site.h - #define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" - #define _PATH_DHCPD_PID "/var/run/dhcp/dhcpd.pid" - #define _PATH_DHCPD_DB "/var/lib/dhcp/dhcpd.leases" - #define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" - #define _PATH_DHCLIENT_DB "/var/lib/dhcp/dhclient.leases" - #define _PATH_DHCLIENT_PID "/var/run/dhcp/dhclient.pid" - #define DHCPD_LOG_FACILITY LOG_LOCAL1 - END - - cat <<-END > site.conf - CC = $(tc-getCC) - LFLAGS = ${LDFLAGS} - LIBDIR = /usr/$(get_libdir) - INCDIR = /usr/include - ETC = /etc/dhcp - VARDB = /var/lib/dhcp - VARRUN = /var/run/dhcp - ADMMANDIR = /usr/share/man/man8 - ADMMANEXT = .8 - FFMANDIR = /usr/share/man/man5 - FFMANEXT = .5 - LIBMANDIR = /usr/share/man/man3 - LIBMANEXT = .3 - USRMANDIR = /usr/share/man/man1 - USRMANEXT = .1 - MANCAT = man - END - - ./configure --copts "-DPARANOIA -DEARLY_CHROOT ${CFLAGS}" \ - || die "configure failed" - - # Remove server support from the Makefile - # We still install some extra crud though - if use minimal ; then - sed -i -e 's/\(server\|relay\|dhcpctl\)/ /g' work.*/Makefile || die - fi - emake || die "compile problem" -} - -src_install() { - make install DESTDIR="${D}" || die - use doc && dodoc README RELNOTES doc/* - - insinto /etc/dhcp - newins client/dhclient.conf dhclient.conf.sample - keepdir /var/{lib,run}/dhcp - - # Install our server files - if ! use minimal ; then - insinto /etc/dhcp - newins server/dhcpd.conf dhcpd.conf.sample - newinitd "${FILESDIR}"/dhcpd.init dhcpd - newinitd "${FILESDIR}"/dhcrelay.init dhcrelay - newconfd "${FILESDIR}"/dhcpd.conf dhcpd - newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay - - # We never want portage to own this file - rm -f "${D}"/var/lib/dhcp/dhcpd.leases - fi -} - -pkg_preinst() { - if ! use minimal ; then - enewgroup dhcp - enewuser dhcp -1 -1 /var/lib/dhcp dhcp - fi -} - -pkg_postinst() { - use minimal && return - - chown dhcp:dhcp "${ROOT}"/var/{lib,run}/dhcp - - if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then - ewarn - ewarn "WARNING: The dhcp init script has been renamed to dhcpd" - ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and" - ewarn "and dhcp should be removed from the default runlevel" - ewarn - fi - - einfo "You can edit /etc/conf.d/dhcpd to customize dhcp settings." - einfo - einfo "If you would like to run dhcpd in a chroot, simply configure the" - einfo "DHCPD_CHROOT directory in /etc/conf.d/dhcpd and then run:" - einfo " emerge --config =${PF}" -} - -pkg_config() { - if use minimal ; then - eerror "${PN} has not been compiled for server support" - eerror "emerge ${PN} without the minimal USE flag to use dhcp sever" - return 1 - fi - - local CHROOT="$( - sed -n -e 's/^[[:blank:]]\?DHCPD_CHROOT="*\([^#"]\+\)"*/\1/p' \ - "${ROOT}"/etc/conf.d/dhcpd - )" - - if [[ -z ${CHROOT} ]]; then - eerror "CHROOT not defined in /etc/conf.d/dhcpd" - return 1 - fi - - CHROOT="${ROOT}/${CHROOT}" - - if [[ -d ${CHROOT} ]] ; then - ewarn "${CHROOT} already exists - aborting" - return 0 - fi - - ebegin "Setting up the chroot directory" - mkdir -m 0755 -p "${CHROOT}/"{dev,etc,var/lib,var/run/dhcp} - cp /etc/{localtime,resolv.conf} "${CHROOT}"/etc - cp -R /etc/dhcp "${CHROOT}"/etc - cp -R /var/lib/dhcp "${CHROOT}"/var/lib - ln -s ../../var/lib/dhcp "${CHROOT}"/etc/dhcp/lib - chown -R dhcp:dhcp "${CHROOT}"/var/{lib,run}/dhcp - eend 0 - - local logger="$(best_version virtual/logger)" - einfo "To enable logging from the dhcpd server, configure your" - einfo "logger (${logger}) to listen on ${CHROOT}/dev/log" -} diff --git a/net-misc/dhcp/dhcp-3.1.2.ebuild b/net-misc/dhcp/dhcp-3.1.2.ebuild deleted file mode 100644 index d76877971bf9..000000000000 --- a/net-misc/dhcp/dhcp-3.1.2.ebuild +++ /dev/null @@ -1,239 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcp/dhcp-3.1.2.ebuild,v 1.2 2010/01/15 19:00:22 ulm Exp $ - -inherit eutils flag-o-matic multilib toolchain-funcs - -MY_PV="${PV//_alpha/a}" -MY_PV="${MY_PV//_beta/b}" -MY_PV="${MY_PV//_rc/rc}" -MY_P="${PN}-${MY_PV}" -DESCRIPTION="ISC Dynamic Host Configuration Protocol" -HOMEPAGE="http://www.isc.org/products/DHCP" -SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz" - -LICENSE="as-is BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" -IUSE="doc minimal static selinux kernel_linux" - -DEPEND="selinux? ( sec-policy/selinux-dhcp ) - kernel_linux? ( sys-apps/net-tools )" - -PROVIDE="virtual/dhcpc" - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - unpack ${A} - cd "${S}" - - # Gentoo patches - these will probably never be accepted upstream - # Enable chroot support - epatch "${FILESDIR}/${PN}"-3.0-paranoia.patch - # Fix some permission issues - epatch "${FILESDIR}/${PN}"-3.0-fix-perms.patch - # Enable dhclient to equery NTP servers - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-ntp.patch - # resolvconf support in dhclient-script - epatch "${FILESDIR}/${PN}"-3.1.0a1-dhclient-resolvconf.patch - # Fix setting hostnames on Linux - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-hostname.patch - # Allow mtu settings - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-mtu.patch - # Allow dhclient to use IF_METRIC to set route metrics - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-metric.patch - # Stop downing the interface on Linux as that breaks link dameons - # such as wpa_supplicant and netplug - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-no-down.patch - # Quiet the isc blurb - epatch "${FILESDIR}/${PN}"-3.0.3-no_isc_blurb.patch - # Enable dhclient to get extra configuration from stdin - epatch "${FILESDIR}/${PN}"-3.0.4-dhclient-stdin-conf.patch - # Disable fallback interfaces when using BPF - # This allows more than one dhclient instance on the BSD's - epatch "${FILESDIR}/${PN}"-3.0.5-bpf-nofallback.patch - - # General fixes which will probably be accepted upstream eventually - # Install libdst, #75544 - epatch "${FILESDIR}/${PN}"-3.0.3-libdst.patch - # Fix building on Gentoo/FreeBSD - epatch "${FILESDIR}/${PN}"-3.0.2-gmake.patch - - # NetworkManager support patches - # If they fail to apply to future versions they will be dropped - # Add dbus support to dhclient - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-dbus.patch - - # Brand the version with Gentoo - # include revision if >0 - local newver="${MY_PV}-Gentoo" - [[ ${PR} != "r0" ]] && newver="${newver}-${PR}" - sed -i '/^#define DHCP_VERSION[ \t]\+/ s/'"${MY_PV}/${newver}/g" \ - includes/version.h || die - - # Change the hook script locations of the scripts - sed -i -e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \ - -e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \ - client/scripts/* || die - - # No need for the linux script to force bash, #158540. - sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die - - # Quiet the freebsd logger a little - sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die - - # Remove these options from the sample config - sed -i -e "/\(script\|host-name\|domain-name\) / d" \ - client/dhclient.conf || die - - # Build sed man pages as we don't ever support BSD 4.4 and older, #130251. - local x= - for x in Makefile.dist $(ls */Makefile.dist) ; do - sed -i -e 's/$(CATMANPAGES)/$(SEDMANPAGES)/g' "${x}" || die - done - - # Only install different man pages if we don't have en - if [[ " ${LINGUAS} " != *" en "* ]]; then - # Install Japanese man pages - if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then - einfo "Installing Japanese documention" - cp doc/ja_JP.eucJP/dhclient* client - cp doc/ja_JP.eucJP/dhcp* common - fi - fi - - # Now remove the non-english docs so there are no errors later - [[ -d doc/ja_JP.eucJP ]] && rm -rf doc/ja_JP.eucJP -} - -src_compile() { - use static && append-ldflags -static - - cat <<-END >> includes/site.h - #define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" - #define _PATH_DHCPD_PID "/var/run/dhcp/dhcpd.pid" - #define _PATH_DHCPD_DB "/var/lib/dhcp/dhcpd.leases" - #define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" - #define _PATH_DHCLIENT_DB "/var/lib/dhcp/dhclient.leases" - #define _PATH_DHCLIENT_PID "/var/run/dhcp/dhclient.pid" - #define DHCPD_LOG_FACILITY LOG_LOCAL1 - END - - cat <<-END > site.conf - CC = $(tc-getCC) - LFLAGS = ${LDFLAGS} - LIBDIR = /usr/$(get_libdir) - INCDIR = /usr/include - ETC = /etc/dhcp - VARDB = /var/lib/dhcp - VARRUN = /var/run/dhcp - ADMMANDIR = /usr/share/man/man8 - ADMMANEXT = .8 - FFMANDIR = /usr/share/man/man5 - FFMANEXT = .5 - LIBMANDIR = /usr/share/man/man3 - LIBMANEXT = .3 - USRMANDIR = /usr/share/man/man1 - USRMANEXT = .1 - MANCAT = man - END - - ./configure --copts "-DPARANOIA -DEARLY_CHROOT ${CFLAGS}" \ - || die "configure failed" - - # Remove server support from the Makefile - # We still install some extra crud though - if use minimal ; then - sed -i -e 's/\(server\|relay\|dhcpctl\)/ /g' work.*/Makefile || die - fi - emake || die "compile problem" -} - -src_install() { - make install DESTDIR="${D}" || die - use doc && dodoc README RELNOTES doc/* - - insinto /etc/dhcp - newins client/dhclient.conf dhclient.conf.sample - keepdir /var/{lib,run}/dhcp - keepdir /var/lib/dhclient - - # Install our server files - if ! use minimal ; then - insinto /etc/dhcp - newins server/dhcpd.conf dhcpd.conf.sample - newinitd "${FILESDIR}"/dhcpd.init2 dhcpd - newinitd "${FILESDIR}"/dhcrelay.init dhcrelay - newconfd "${FILESDIR}"/dhcpd.conf dhcpd - newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay - - # We never want portage to own this file - rm -f "${D}"/var/lib/dhcp/dhcpd.leases - fi -} - -pkg_preinst() { - if ! use minimal ; then - enewgroup dhcp - enewuser dhcp -1 -1 /var/lib/dhcp dhcp - fi -} - -pkg_postinst() { - use minimal && return - - chown -R dhcp:dhcp "${ROOT}"/var/{lib,run}/dhcp - - if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then - ewarn - ewarn "WARNING: The dhcp init script has been renamed to dhcpd" - ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and" - ewarn "and dhcp should be removed from the default runlevel" - ewarn - fi - - einfo "You can edit /etc/conf.d/dhcpd to customize dhcp settings." - einfo - einfo "If you would like to run dhcpd in a chroot, simply configure the" - einfo "DHCPD_CHROOT directory in /etc/conf.d/dhcpd and then run:" - einfo " emerge --config =${PF}" -} - -pkg_config() { - if use minimal ; then - eerror "${PN} has not been compiled for server support" - eerror "emerge ${PN} without the minimal USE flag to use dhcp sever" - return 1 - fi - - local CHROOT="$( - sed -n -e 's/^[[:blank:]]\?DHCPD_CHROOT="*\([^#"]\+\)"*/\1/p' \ - "${ROOT}"/etc/conf.d/dhcpd - )" - - if [[ -z ${CHROOT} ]]; then - eerror "CHROOT not defined in /etc/conf.d/dhcpd" - return 1 - fi - - CHROOT="${ROOT}/${CHROOT}" - - if [[ -d ${CHROOT} ]] ; then - ewarn "${CHROOT} already exists - aborting" - return 0 - fi - - ebegin "Setting up the chroot directory" - mkdir -m 0755 -p "${CHROOT}/"{dev,etc,var/lib,var/run/dhcp} - cp /etc/{localtime,resolv.conf} "${CHROOT}"/etc - cp -R /etc/dhcp "${CHROOT}"/etc - cp -R /var/lib/dhcp "${CHROOT}"/var/lib - ln -s ../../var/lib/dhcp "${CHROOT}"/etc/dhcp/lib - chown -R dhcp:dhcp "${CHROOT}"/var/{lib,run}/dhcp - eend 0 - - local logger="$(best_version virtual/logger)" - einfo "To enable logging from the dhcpd server, configure your" - einfo "logger (${logger}) to listen on ${CHROOT}/dev/log" -} diff --git a/net-misc/dhcp/dhcp-3.1.3.ebuild b/net-misc/dhcp/dhcp-3.1.3.ebuild deleted file mode 100644 index 721774141a96..000000000000 --- a/net-misc/dhcp/dhcp-3.1.3.ebuild +++ /dev/null @@ -1,247 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcp/dhcp-3.1.3.ebuild,v 1.1 2010/10/15 05:09:43 robbat2 Exp $ - -inherit eutils flag-o-matic multilib toolchain-funcs - -MY_PV="${PV//_alpha/a}" -MY_PV="${MY_PV//_beta/b}" -MY_PV="${MY_PV//_rc/rc}" -MY_PV="${MY_PV//_p/p}" -MY_P="${PN}-${MY_PV}" -DESCRIPTION="ISC Dynamic Host Configuration Protocol" -HOMEPAGE="http://www.isc.org/products/DHCP" -SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz" - -LICENSE="as-is BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" -IUSE="doc minimal static selinux kernel_linux" - -DEPEND="selinux? ( sec-policy/selinux-dhcp ) - kernel_linux? ( sys-apps/net-tools )" - -PROVIDE="virtual/dhcpc" - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - unpack ${A} - cd "${S}" - - # Gentoo patches - these will probably never be accepted upstream - # Enable chroot support - epatch "${FILESDIR}/${PN}"-3.0-paranoia.patch - # Fix some permission issues - epatch "${FILESDIR}/${PN}"-3.0-fix-perms.patch - # Enable dhclient to equery NTP servers - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-ntp.patch - # resolvconf support in dhclient-script - epatch "${FILESDIR}/${PN}"-3.1.0a1-dhclient-resolvconf.patch - # Fix setting hostnames on Linux - # merged in 3.1.3 - #epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-hostname.patch - # Allow mtu settings - # merged in 3.1.3 - #epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-mtu.patch - # Allow dhclient to use IF_METRIC to set route metrics - # merged in 3.1.3 - #epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-metric.patch - # Stop downing the interface on Linux as that breaks link dameons - # such as wpa_supplicant and netplug - epatch "${FILESDIR}/${PN}"-3.1.3-dhclient-no-down.patch - # Quiet the isc blurb - epatch "${FILESDIR}/${PN}"-3.0.3-no_isc_blurb.patch - # Enable dhclient to get extra configuration from stdin - epatch "${FILESDIR}/${PN}"-3.0.4-dhclient-stdin-conf.patch - # Disable fallback interfaces when using BPF - # This allows more than one dhclient instance on the BSD's - epatch "${FILESDIR}/${PN}"-3.0.5-bpf-nofallback.patch - - # General fixes which will probably be accepted upstream eventually - # Install libdst, #75544 - epatch "${FILESDIR}/${PN}"-3.0.3-libdst.patch - # Fix building on Gentoo/FreeBSD - epatch "${FILESDIR}/${PN}"-3.0.2-gmake.patch - - # NetworkManager support patches - # If they fail to apply to future versions they will be dropped - # Add dbus support to dhclient - epatch "${FILESDIR}/${PN}"-3.0.3-dhclient-dbus.patch - - # Denial of service through mixed identifier/ethernet host definitions - # merged in 3.1.3 - #epatch "${FILESDIR}/${P}"-CVE-2009-1892.patch - - # Brand the version with Gentoo - # include revision if >0 - local newver="${MY_PV}-Gentoo" - [[ ${PR} != "r0" ]] && newver="${newver}-${PR}" - sed -i '/^#define DHCP_VERSION[ \t]\+/ s/'"${MY_PV}/${newver}/g" \ - includes/version.h || die - - # Change the hook script locations of the scripts - sed -i -e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \ - -e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \ - client/scripts/* || die - - # No need for the linux script to force bash, #158540. - sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die - - # Quiet the freebsd logger a little - sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die - - # Remove these options from the sample config - sed -i -e "/\(script\|host-name\|domain-name\) / d" \ - client/dhclient.conf || die - - # Build sed man pages as we don't ever support BSD 4.4 and older, #130251. - local x= - for x in Makefile.dist $(ls */Makefile.dist) ; do - sed -i -e 's/$(CATMANPAGES)/$(SEDMANPAGES)/g' "${x}" || die - done - - # Only install different man pages if we don't have en - if [[ " ${LINGUAS} " != *" en "* ]]; then - # Install Japanese man pages - if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then - einfo "Installing Japanese documention" - cp doc/ja_JP.eucJP/dhclient* client - cp doc/ja_JP.eucJP/dhcp* common - fi - fi - - # Now remove the non-english docs so there are no errors later - [[ -d doc/ja_JP.eucJP ]] && rm -rf doc/ja_JP.eucJP -} - -src_compile() { - use static && append-ldflags -static - - cat <<-END >> includes/site.h - #define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" - #define _PATH_DHCPD_PID "/var/run/dhcp/dhcpd.pid" - #define _PATH_DHCPD_DB "/var/lib/dhcp/dhcpd.leases" - #define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" - #define _PATH_DHCLIENT_DB "/var/lib/dhcp/dhclient.leases" - #define _PATH_DHCLIENT_PID "/var/run/dhcp/dhclient.pid" - #define DHCPD_LOG_FACILITY LOG_LOCAL1 - END - - cat <<-END > site.conf - CC = $(tc-getCC) - LFLAGS = ${LDFLAGS} - LIBDIR = /usr/$(get_libdir) - INCDIR = /usr/include - ETC = /etc/dhcp - VARDB = /var/lib/dhcp - VARRUN = /var/run/dhcp - ADMMANDIR = /usr/share/man/man8 - ADMMANEXT = .8 - FFMANDIR = /usr/share/man/man5 - FFMANEXT = .5 - LIBMANDIR = /usr/share/man/man3 - LIBMANEXT = .3 - USRMANDIR = /usr/share/man/man1 - USRMANEXT = .1 - MANCAT = man - END - - ./configure --copts "-DPARANOIA -DEARLY_CHROOT ${CFLAGS}" \ - || die "configure failed" - - # Remove server support from the Makefile - # We still install some extra crud though - if use minimal ; then - sed -i -e 's/\(server\|relay\|dhcpctl\)/ /g' work.*/Makefile || die - fi - emake || die "compile problem" -} - -src_install() { - make install DESTDIR="${D}" || die - use doc && dodoc README RELNOTES doc/* - - insinto /etc/dhcp - newins client/dhclient.conf dhclient.conf.sample - keepdir /var/{lib,run}/dhcp - keepdir /var/lib/dhclient - - # Install our server files - if ! use minimal ; then - insinto /etc/dhcp - newins server/dhcpd.conf dhcpd.conf.sample - newinitd "${FILESDIR}"/dhcpd.init2 dhcpd - newinitd "${FILESDIR}"/dhcrelay.init dhcrelay - newconfd "${FILESDIR}"/dhcpd.conf dhcpd - newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay - - # We never want portage to own this file - rm -f "${D}"/var/lib/dhcp/dhcpd.leases - fi -} - -pkg_preinst() { - if ! use minimal ; then - enewgroup dhcp - enewuser dhcp -1 -1 /var/lib/dhcp dhcp - fi -} - -pkg_postinst() { - use minimal && return - - chown -R dhcp:dhcp "${ROOT}"/var/{lib,run}/dhcp - - if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then - ewarn - ewarn "WARNING: The dhcp init script has been renamed to dhcpd" - ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and" - ewarn "and dhcp should be removed from the default runlevel" - ewarn - fi - - einfo "You can edit /etc/conf.d/dhcpd to customize dhcp settings." - einfo - einfo "If you would like to run dhcpd in a chroot, simply configure the" - einfo "DHCPD_CHROOT directory in /etc/conf.d/dhcpd and then run:" - einfo " emerge --config =${PF}" -} - -pkg_config() { - if use minimal ; then - eerror "${PN} has not been compiled for server support" - eerror "emerge ${PN} without the minimal USE flag to use dhcp sever" - return 1 - fi - - local CHROOT="$( - sed -n -e 's/^[[:blank:]]\?DHCPD_CHROOT="*\([^#"]\+\)"*/\1/p' \ - "${ROOT}"/etc/conf.d/dhcpd - )" - - if [[ -z ${CHROOT} ]]; then - eerror "CHROOT not defined in /etc/conf.d/dhcpd" - return 1 - fi - - CHROOT="${ROOT}/${CHROOT}" - - if [[ -d ${CHROOT} ]] ; then - ewarn "${CHROOT} already exists - aborting" - return 0 - fi - - ebegin "Setting up the chroot directory" - mkdir -m 0755 -p "${CHROOT}/"{dev,etc,var/lib,var/run/dhcp} - cp /etc/{localtime,resolv.conf} "${CHROOT}"/etc - cp -R /etc/dhcp "${CHROOT}"/etc - cp -R /var/lib/dhcp "${CHROOT}"/var/lib - ln -s ../../var/lib/dhcp "${CHROOT}"/etc/dhcp/lib - chown -R dhcp:dhcp "${CHROOT}"/var/{lib,run}/dhcp - eend 0 - - local logger="$(best_version virtual/logger)" - einfo "To enable logging from the dhcpd server, configure your" - einfo "logger (${logger}) to listen on ${CHROOT}/dev/log" -} diff --git a/net-misc/dhcp/files/dhcp-3.0-ddns-example.patch b/net-misc/dhcp/files/dhcp-3.0-ddns-example.patch deleted file mode 100644 index 8e69ddbe22f1..000000000000 --- a/net-misc/dhcp/files/dhcp-3.0-ddns-example.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur a/server/dhcpd.conf b/server/dhcpd.conf ---- a/server/dhcpd.conf 2001-01-25 08:33:11 +0000 -+++ b/server/dhcpd.conf 2007-07-19 10:29:43 +0100 -@@ -21,6 +21,9 @@ - # No service will be given on this subnet, but declaring it helps the - # DHCP server to understand the network topology. - -+# Disable dynamic DNS updates. -+ddns-update-style none; -+ - subnet 10.152.187.0 netmask 255.255.255.0 { - } - diff --git a/net-misc/dhcp/files/dhcp-3.0.3-dhclient-resolvconf.patch b/net-misc/dhcp/files/dhcp-3.0.3-dhclient-resolvconf.patch deleted file mode 100644 index 8e499fcb9e89..000000000000 --- a/net-misc/dhcp/files/dhcp-3.0.3-dhclient-resolvconf.patch +++ /dev/null @@ -1,191 +0,0 @@ ---- client/scripts/bsdos -+++ client/scripts/bsdos -@@ -1,11 +1,22 @@ - #!/bin/sh - - make_resolv_conf() { -- if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then -- echo search $new_domain_name >/etc/resolv.conf -- for nameserver in $new_domain_name_servers; do -- echo nameserver $nameserver >>/etc/resolv.conf -- done -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ "x$new_domain_name" != x ]; then -+ conf="${conf}search $new_domain_name\n" -+ fi -+ for nameserver in $new_domain_name_servers; do -+ conf="${conf}nameserver $nameserver\n" -+ done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi -+ fi - fi - # If we're making confs, may as well make an ntp.conf too - make_ntp_conf ---- client/scripts/freebsd -+++ client/scripts/freebsd -@@ -11,25 +11,21 @@ - fi - - make_resolv_conf() { -- if [ x"$new_domain_name_servers" != x ]; then -- if [ "x$new_domain_name" != x ]; then -- ( echo search $new_domain_name >/etc/resolv.conf ) -- exit_status=$? -- else -- if [ -e /etc/resolv.conf ] ; then -- ( rm /etc/resolv.conf ) -- exit_status=$? -- else -- ( touch /etc/resolv.conf ) -- exit_status=$? -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ "x$new_domain_name" != x ]; then -+ conf="${conf}search $new_domain_name\n" - fi -- fi -- if [ $exit_status -ne 0 ]; then -- $LOGGER "WARNING: Unable to update resolv.conf: Error $exit_status" -- else - for nameserver in $new_domain_name_servers; do -- ( echo nameserver $nameserver >>/etc/resolv.conf ) -+ conf="${conf}nameserver $nameserver\n" - done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi - fi - fi - # If we're making confs, may as well make an ntp.conf too ---- client/scripts/linux -+++ client/scripts/linux -@@ -23,12 +23,22 @@ - # of the $1 in its args. - - make_resolv_conf() { -- if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then -- echo search $new_domain_name >/etc/resolv.conf -- chmod 644 /etc/resolv.conf -- for nameserver in $new_domain_name_servers; do -- echo nameserver $nameserver >>/etc/resolv.conf -- done -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ "x$new_domain_name" != x ]; then -+ conf="${conf}search $new_domain_name\n" -+ fi -+ for nameserver in $new_domain_name_servers; do -+ conf="${conf}nameserver $nameserver\n" -+ done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi -+ fi - fi - # If we're making confs, may as well make an ntp.conf too - make_ntp_conf ---- client/scripts/netbsd -+++ client/scripts/netbsd -@@ -1,11 +1,22 @@ - #!/bin/sh - - make_resolv_conf() { -- if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then -- echo search $new_domain_name >/etc/resolv.conf -- for nameserver in $new_domain_name_servers; do -- echo nameserver $nameserver >>/etc/resolv.conf -- done -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ "x$new_domain_name" != x ]; then -+ conf="${conf}search $new_domain_name\n" -+ fi -+ for nameserver in $new_domain_name_servers; do -+ conf="${conf}nameserver $nameserver\n" -+ done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi -+ fi - fi - # If we're making confs, may as well make an ntp.conf too - make_ntp_conf ---- client/scripts/openbsd -+++ client/scripts/openbsd -@@ -1,11 +1,22 @@ - #!/bin/sh - - make_resolv_conf() { -- if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then -- echo search $new_domain_name >/etc/resolv.conf -- for nameserver in $new_domain_name_servers; do -- echo nameserver $nameserver >>/etc/resolv.conf -- done -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ x$new_domain_name != x ]; then -+ conf="${conf}search $new_domain_name\n" -+ fi -+ for nameserver in $new_domain_name_servers; do -+ conf="${conf}nameserver $nameserver\n" -+ done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi -+ fi - fi - # If we're making confs, may as well make an ntp.conf too - make_ntp_conf ---- client/scripts/solaris -+++ client/scripts/solaris -@@ -1,11 +1,22 @@ - #!/bin/sh - - make_resolv_conf() { -- if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then -- echo search $new_domain_name >/etc/resolv.conf -- for nameserver in $new_domain_name_servers; do -- echo nameserver $nameserver >>/etc/resolv.conf -- done -+ if [ x$PEER_DNS = x ] || [ x$PEER_DNS = xyes ]; then -+ if [ "x$new_domain_name" != x ] || [ "x$new_domain_name_servers" != x ]; then -+ conf="# Generated by dhclient for interface $interface\n" -+ if [ "x$new_domain_name" != x ]; then -+ conf="${conf}search $new_domain_name\n" -+ fi -+ for nameserver in $new_domain_name_servers; do -+ conf="${conf}nameserver $nameserver\n" -+ done -+ if [ -x /sbin/resolvconf ]; then -+ printf "$conf" | resolvconf -a "$interface" -+ else -+ printf "$conf" > /etc/resolv.conf -+ chmod 644 /etc/resolv.conf -+ fi -+ fi - fi - # If we're making confs, may as well make an ntp.conf too - make_ntp_conf diff --git a/net-misc/dhcp/files/dhcp-3.0.3-dhclient-stdin-conf.patch b/net-misc/dhcp/files/dhcp-3.0.3-dhclient-stdin-conf.patch deleted file mode 100644 index fb46134e58c2..000000000000 --- a/net-misc/dhcp/files/dhcp-3.0.3-dhclient-stdin-conf.patch +++ /dev/null @@ -1,77 +0,0 @@ ---- client/clparse.c.orig 2006-02-22 09:37:12.000000000 +0000 -+++ client/clparse.c 2006-02-22 09:38:26.000000000 +0000 -@@ -97,6 +97,11 @@ - status = read_client_conf_file (path_dhclient_conf, - (struct interface_info *)0, - &top_level_config); -+ -+ /* Read any extra configuration from stdin */ -+ read_client_conf_stdin ((struct interface_info *)0, -+ &top_level_config); -+ - if (status != ISC_R_SUCCESS) { - ; - #ifdef LATER -@@ -148,20 +153,17 @@ - return status; - } - --int read_client_conf_file (const char *name, struct interface_info *ip, -- struct client_config *client) -+int read_client_conf_actual (int file, const char *name, -+ struct interface_info *ip, -+ struct client_config *client) - { -- int file; - struct parse *cfile; - const char *val; - int token; - isc_result_t status; - -- if ((file = open (name, O_RDONLY)) < 0) -- return uerr2isc (errno); -- - cfile = (struct parse *)0; -- new_parse (&cfile, file, (char *)0, 0, path_dhclient_conf, 0); -+ new_parse (&cfile, file, (char *)0, 0, name , 0); - - do { - token = peek_token (&val, (unsigned *)0, cfile); -@@ -174,11 +174,36 @@ - status = (cfile -> warnings_occurred - ? ISC_R_BADPARSE - : ISC_R_SUCCESS); -- close (file); - end_parse (&cfile); - return status; - } - -+int read_client_conf_file (const char *name, struct interface_info *ip, -+ struct client_config *client) -+{ -+ int file; -+ isc_result_t status; -+ -+ if ((file = open (name, O_RDONLY)) < 0) -+ return uerr2isc (errno); -+ -+ status = read_client_conf_actual(file, name, ip, client); -+ -+ return status; -+} -+ -+ -+int read_client_conf_stdin (struct interface_info *ip, -+ struct client_config *client) -+{ -+ int file = fileno(stdin); -+ isc_result_t status; -+ -+ if (isatty(file)) return ISC_R_NOTFOUND; -+ status = read_client_conf_actual(file, "stdin", ip, client); -+ -+ return status; -+} - - /* lease-file :== client-lease-statements END_OF_FILE - client-lease-statements :== <nil> diff --git a/net-misc/dhcp/files/dhcp-3.0.3-tr.patch b/net-misc/dhcp/files/dhcp-3.0.3-tr.patch deleted file mode 100644 index 2a2957bbea6d..000000000000 --- a/net-misc/dhcp/files/dhcp-3.0.3-tr.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- work.linux-2.2/common/tr.c 2005/08/14 11:34:24 1.1 -+++ work.linux-2.2/common/tr.c 2005/08/14 11:35:16 -@@ -40,6 +40,9 @@ static char copyright[] = - #include "includes/netinet/if_ether.h" - #include "netinet/if_tr.h" - #include <sys/time.h> -+#ifdef __linux__ -+#include <linux/types.h> -+#endif - - /* - * token ring device handling subroutines. These are required as token-ring diff --git a/net-misc/dhcp/files/dhcp-3.0.3-x-option.patch b/net-misc/dhcp/files/dhcp-3.0.3-x-option.patch deleted file mode 100644 index 5f5c1a88aa1b..000000000000 --- a/net-misc/dhcp/files/dhcp-3.0.3-x-option.patch +++ /dev/null @@ -1,216 +0,0 @@ ---- dhcp-3.0.2/common/parse.c.extended_option_environment 2005-04-05 17:49:36.513062562 -0400 -+++ dhcp-3.0.2/common/parse.c 2005-04-05 17:49:36.580052656 -0400 -@@ -1270,6 +1270,10 @@ - option_hash_add (option -> universe -> hash, - (const char *)option -> name, - 0, option, MDL); -+#ifdef EXTENDED_NEW_OPTION_INFO -+ if ( new_option_info_tree != 0L ) -+ add_new_option_info( option ); -+#endif - return 1; - } - ---- dhcp-3.0.2/common/tables.c.extended_option_environment 2004-09-01 13:06:35.000000000 -0400 -+++ dhcp-3.0.2/common/tables.c 2005-04-05 18:04:23.915838623 -0400 -@@ -1238,3 +1238,40 @@ - fqdn_universe.name, 0, - &fqdn_universe, MDL); - } -+ -+#ifdef EXTENDED_NEW_OPTION_INFO -+#include <search.h> -+ -+void *new_option_info_tree = 0L; -+ -+static int new_option_info_comparator( const void* p1, const void *p2 ) -+{ -+ uint32_t ocode1 = (((const struct option*)p1)->universe->index << 8) -+ |(((const struct option*)p1)->code), -+ ocode2 = (((const struct option*)p2)->universe->index << 8) -+ |(((const struct option*)p2)->code); -+ return( (ocode1 == ocode2) -+ ? 0 -+ :( ( ocode1 > ocode2 ) -+ ? 1 -+ : -1 -+ ) -+ ); -+} -+ -+void *add_new_option_info( struct option *option ) -+{ -+ if ( option->universe->index >= fqdn_universe.index ) -+ return 0L; -+ if ( new_option_info_tree == GENERATE_NEW_OPTION_INFO ) -+ new_option_info_tree = (void*)0L; -+ return tsearch( option, &(new_option_info_tree), new_option_info_comparator ); -+} -+ -+void *lookup_new_option_info( struct option *option ) -+{ -+ if ( new_option_info_tree == GENERATE_NEW_OPTION_INFO ) -+ return 0L; -+ return tfind( option, &(new_option_info_tree), new_option_info_comparator ); -+} -+#endif ---- dhcp-3.0.2/includes/dhcpd.h.extended_option_environment 2004-11-24 12:39:16.000000000 -0500 -+++ dhcp-3.0.2/includes/dhcpd.h 2005-04-05 17:49:36.613047777 -0400 -@@ -1800,6 +1800,13 @@ - void initialize_common_option_spaces PROTO ((void)); - struct universe *config_universe; - -+#ifdef EXTENDED_NEW_OPTION_INFO -+#define GENERATE_NEW_OPTION_INFO ((void*)1) -+extern void *new_option_info_tree; -+extern void *add_new_option_info( struct option*); -+extern void *lookup_new_option_info( struct option *); -+#endif -+ - /* stables.c */ - #if defined (FAILOVER_PROTOCOL) - extern failover_option_t null_failover_option; ---- dhcp-3.0.2/client/dhclient.c.extended_option_environment 2005-04-05 17:49:36.566054726 -0400 -+++ dhcp-3.0.2/client/dhclient.c 2005-04-05 17:49:36.617047185 -0400 -@@ -74,7 +74,9 @@ - int onetry=0; - int quiet=0; - int nowait=0; -- -+#ifdef EXTENDED_NEW_OPTION_INFO -+int extended_option_environment = 0; -+#endif - static void usage PROTO ((void)); - - void do_release(struct client_state *); -@@ -204,6 +206,11 @@ - } else if (!strcmp (argv [i], "--version")) { - log_info ("isc-dhclient-%s", DHCP_VERSION); - exit (0); -+#ifdef EXTENDED_NEW_OPTION_INFO -+ } else if (!strcmp (argv [i], "-x")) { -+ extended_option_environment = 1; -+ new_option_info_tree = GENERATE_NEW_OPTION_INFO; -+#endif - } else if (argv [i][0] == '-') { - usage (); - } else { -@@ -572,7 +579,11 @@ - log_info (arr); - log_info (url); - -+#ifdef EXTENDED_NEW_OPTION_INFO -+ log_error ("Usage: dhclient [-1dqr] [-nwx] [-p <port>] %s", -+#else - log_error ("Usage: dhclient [-1dqr] [-nw] [-p <port>] %s", -+#endif - "[-s server]"); - log_error (" [-cf config-file] [-lf lease-file]%s", - "[-pf pid-file] [-e VAR=val]"); -@@ -2529,8 +2540,28 @@ - struct envadd_state { - struct client_state *client; - const char *prefix; -+ struct universe *universe; - }; - -+#ifdef EXTENDED_NEW_OPTION_INFO -+static -+void build_universe_info_envvar -+( struct option_cache *oc, -+ struct packet *p, struct lease *l, -+ struct client_state *client, -+ struct option_state *in_o, -+ struct option_state *cf_o, -+ struct binding_scope **scope, -+ struct universe *u, void *es -+) -+{ -+ char info_name[512], info_data[512]; -+ snprintf(info_name, 512, "%s._universe_.", oc->option->universe->name); -+ snprintf(info_data, 512, "%u:%s", oc->option->code,oc->option->format); -+ client_envadd( client, info_name, oc->option->name, info_data ); -+} -+#endif -+ - void client_option_envadd (struct option_cache *oc, - struct packet *packet, struct lease *lease, - struct client_state *client_state, -@@ -2547,6 +2578,31 @@ - in_options, cfg_options, scope, oc, MDL)) { - if (data.len) { - char name [256]; -+#ifdef EXTENDED_NEW_OPTION_INFO -+ if ( extended_option_environment ) -+ { -+ if( ( oc->option->universe != &dhcp_universe ) -+ &&( oc->option->universe->index > fqdn_universe.index ) -+ &&( es->universe != oc->option->universe ) -+ ) -+ { -+ es->universe = oc->option->universe; -+ (*(es->universe->foreach)) -+ ( (struct packet *)0, (struct lease *)0, -+ client_state, -+ in_options, cfg_options, -+ scope, es->universe, es, -+ build_universe_info_envvar -+ ); -+ }else -+ if ( lookup_new_option_info(oc->option) != 0L ) -+ build_universe_info_envvar -+ ( oc, packet, lease, client_state, -+ in_options, cfg_options, scope, -+ oc->option->universe, es -+ ); -+ } -+#endif - if (dhcp_option_ev_name (name, sizeof name, - oc -> option)) { - client_envadd (es -> client, es -> prefix, -@@ -2575,6 +2631,7 @@ - - es.client = client; - es.prefix = prefix; -+ es.universe = 0L; - - client_envadd (client, - prefix, "ip_address", "%s", piaddr (lease -> address)); -@@ -2788,7 +2845,14 @@ - s = option -> name; - if (j + 1 == buflen) - return 0; -+#ifdef EXTENDED_NEW_OPTION_INFO -+ if ( ! extended_option_environment ) -+ buf [j++] = '_'; -+ else -+ buf [j++] = '.'; -+#else - buf [j++] = '_'; -+#endif - } - ++i; - } while (i != 2); ---- dhcp-3.0.2/client/dhclient.8.extended_option_environment 2004-09-29 19:01:46.000000000 -0400 -+++ dhcp-3.0.2/client/dhclient.8 2005-04-05 17:49:36.619046889 -0400 -@@ -78,6 +78,9 @@ - .B -w - ] - [ -+.B -x -+] -+[ - .I if0 - [ - .I ...ifN -@@ -252,6 +255,10 @@ - supplying the - .B -nw - flag. -+.PP -+The -x argument enables eXtended option information to be created in the -+-s dhclient-script environment, which would allow applications running -+in that environment to handle options they do not know about in advance. - .SH CONFIGURATION - The syntax of the dhclient.conf(5) file is discussed separately. - .SH OMAPI diff --git a/net-misc/dhcp/files/dhcp-3.1.1-CVE-2009-0692.patch b/net-misc/dhcp/files/dhcp-3.1.1-CVE-2009-0692.patch deleted file mode 100644 index b12a616deafd..000000000000 --- a/net-misc/dhcp/files/dhcp-3.1.1-CVE-2009-0692.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- dhcp-3.1.1.orig/client/dhclient.c -+++ dhcp-3.1.1/client/dhclient.c -@@ -2547,8 +2547,9 @@ void script_write_params (client, prefix - (struct option_state *)0, - lease -> options, - &global_scope, oc, MDL)) { -- if (data.len > 3) { -- struct iaddr netmask, subnet, broadcast; -+ struct iaddr netmask; -+ if (data.len > 3 && data.len <= sizeof(netmask.iabuf)) { -+ struct iaddr subnet, broadcast; - - memcpy (netmask.iabuf, data.data, data.len); - netmask.len = data.len; diff --git a/net-misc/dhcp/files/dhcpd.init b/net-misc/dhcp/files/dhcpd.init deleted file mode 100644 index 6c980fe2eadb..000000000000 --- a/net-misc/dhcp/files/dhcpd.init +++ /dev/null @@ -1,71 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcp/files/dhcpd.init,v 1.5 2007/04/02 12:34:01 uberlord Exp $ - -DHCPD_CONF=${DHCPD_CONF:-/etc/dhcp/dhcpd.conf} - -depend() { - need net - use logger dns -} - -get_var() { - sed -n 's/^[[:blank:]]\?'"$1"' "*\([^#";]\+\).*/\1/p' \ - "${DHCPD_CHROOT}/${DHCPD_CONF}" -} - -start() { - # Work out our cffile if it's on our DHCPD_OPTS - case " ${DHCPD_OPTS} " in - *" -cf "*) - DHCPD_CONF=" ${DHCPD_OPTS} " - DHCPD_CONF="${DHCPD_CONF##* -cf }" - DHCPD_CONF="${DHCPD_CONF%% *}" - ;; - *) DHCPD_OPTS="${DHCPD_OPTS} -cf ${DHCPD_CONF}" - ;; - esac - - if [ ! -f "${DHCPD_CHROOT}/${DHCPD_CONF}" ] ; then - eerror "${DHCPD_CHROOT}/${DHCPD_CONF} does not exist" - return 1 - fi - - local leasefile="$(get_var lease-file-name)" - leasefile="${DHCPD_CHROOT}/${leasefile:-/var/lib/dhcp/dhcpd.leases}" - if [ ! -f "${leasefile}" ] ; then - ebegin "Creating ${leasefile}" - touch "${leasefile}" - chown dhcp:dhcp "${leasefile}" - eend $? || return 1 - fi - - # Setup LD_PRELOAD so name resolution works in our chroot. - if [ -n "${DHCPD_CHROOT}" ] ; then - LD_PRELOAD="${LD_PRELOAD} /usr/lib/libresolv.so" - export LD_PRELOAD="${LD_PRELOAD} /usr/lib/libnss_dns.so" - fi - - local pidfile="$(get_var pid-file-name)" - pidfile="${pidfile:-/var/run/dhcp/dhcpd.pid}" - - ebegin "Starting ${DHCPD_CHROOT:+chrooted }${SVCNAME}" - start-stop-daemon --start --exec /usr/sbin/dhcpd \ - --pidfile "${DHCPD_CHROOT}/${pidfile}" \ - -- ${DHCPD_OPTS} -q -pf "${pidfile}" \ - -user dhcp -group dhcp \ - ${DHCPD_CHROOT:+-chroot} ${DHCPD_CHROOT} ${DHCPD_IFACE} - eend $? \ - && save_options chroot "${DHCPD_CHROOT}" \ - && save_options pidfile "${pidfile}" -} - -stop() { - local chroot="$(get_options chroot)" - - ebegin "Stopping ${chroot:+chrooted }${SVCNAME}" - start-stop-daemon --stop --exec /usr/sbin/dhcpd \ - --pidfile "${chroot}/$(get_options pidfile)" - eend $? -} |