diff options
author | Mike Frysinger <vapier@gentoo.org> | 2007-08-25 16:28:59 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2007-08-25 16:28:59 +0000 |
commit | f245587591f6d1b44e0f53d63b6d03167047cd4b (patch) | |
tree | 78846b73c837f611fdd93e58b3e864f6a232dd08 /net-firewall | |
parent | amd64 stable (diff) | |
download | historical-f245587591f6d1b44e0f53d63b6d03167047cd4b.tar.gz historical-f245587591f6d1b44e0f53d63b6d03167047cd4b.tar.bz2 historical-f245587591f6d1b44e0f53d63b6d03167047cd4b.zip |
Make sure we set KERNEL_DIR to right include path for linux-headers #188873 by Darren Dale and start pushing crappy patchset addons to the user so maintenance is their problem #155243.
Package-Manager: portage-2.1.3.7
Diffstat (limited to 'net-firewall')
-rw-r--r-- | net-firewall/iptables/ChangeLog | 9 | ||||
-rw-r--r-- | net-firewall/iptables/Manifest | 25 | ||||
-rw-r--r-- | net-firewall/iptables/files/digest-iptables-1.3.8-r2 | 9 | ||||
-rw-r--r-- | net-firewall/iptables/iptables-1.3.8-r2.ebuild | 222 |
4 files changed, 260 insertions, 5 deletions
diff --git a/net-firewall/iptables/ChangeLog b/net-firewall/iptables/ChangeLog index 22551f56d9b5..c96b10cee5a9 100644 --- a/net-firewall/iptables/ChangeLog +++ b/net-firewall/iptables/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-firewall/iptables # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-firewall/iptables/ChangeLog,v 1.138 2007/08/13 21:31:41 dertobi123 Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-firewall/iptables/ChangeLog,v 1.139 2007/08/25 16:28:59 vapier Exp $ + +*iptables-1.3.8-r2 (25 Aug 2007) + + 25 Aug 2007; Mike Frysinger <vapier@gentoo.org> +iptables-1.3.8-r2.ebuild: + Make sure we set KERNEL_DIR to right include path for linux-headers #188873 + by Darren Dale and start pushing crappy patchset addons to the user so + maintenance is their problem #155243. 13 Aug 2007; Tobias Scherbaum <dertobi123@gentoo.org> iptables-1.3.7.ebuild: diff --git a/net-firewall/iptables/Manifest b/net-firewall/iptables/Manifest index 0b9b871e4966..e277606815f3 100644 --- a/net-firewall/iptables/Manifest +++ b/net-firewall/iptables/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + AUX 1.3.1-files/grsecurity-1.2.8-iptables.patch-1.3.1 1315 RMD160 3665aaa6788261f16372c1e34810fe99fd60453c SHA1 b3c88dc5ceebc15aca73fcc02afdf8d0fa6a389f SHA256 f86e32f84af0e68b927b712a60e5d02d1bc27972537f476c71a311711fdcfc12 MD5 319d0b089a495ce1ab8ca02b3820dfe3 files/1.3.1-files/grsecurity-1.2.8-iptables.patch-1.3.1 1315 RMD160 3665aaa6788261f16372c1e34810fe99fd60453c files/1.3.1-files/grsecurity-1.2.8-iptables.patch-1.3.1 1315 @@ -84,14 +87,18 @@ EBUILD iptables-1.3.8-r1.ebuild 6236 RMD160 57c5095da3e7a664e0c2e41f13929198da13 MD5 ed8634fef142afde7104a88467bfc211 iptables-1.3.8-r1.ebuild 6236 RMD160 57c5095da3e7a664e0c2e41f13929198da13dc6e iptables-1.3.8-r1.ebuild 6236 SHA256 158691364b7056fad823026bd8165a961269766b99c7fbdb7077b387c6906ba2 iptables-1.3.8-r1.ebuild 6236 +EBUILD iptables-1.3.8-r2.ebuild 7061 RMD160 110977d3c188bdc4264b9fa42d6e4789083ff2af SHA1 c051627155971c71dd5c619467e58bf139eb3ad2 SHA256 51a2f67a079529fc1d7bb8bd3461765d0e81f7c133aa1160ec1523debaa1bf71 +MD5 b3681f930b80178dd7c67f21ce868be6 iptables-1.3.8-r2.ebuild 7061 +RMD160 110977d3c188bdc4264b9fa42d6e4789083ff2af iptables-1.3.8-r2.ebuild 7061 +SHA256 51a2f67a079529fc1d7bb8bd3461765d0e81f7c133aa1160ec1523debaa1bf71 iptables-1.3.8-r2.ebuild 7061 EBUILD iptables-1.3.8.ebuild 5655 RMD160 54dfc7ce735c4a1c81af1ef1ad71859bc0e478e0 SHA1 d8b0f148549e5ffa6d86674291e0bb8f21f3d0db SHA256 1674842ce149e1e22c0f91e6348ca8f1369347acf7170b70c83bed5f11bd9289 MD5 d6927f7f20594172d561244f46382933 iptables-1.3.8.ebuild 5655 RMD160 54dfc7ce735c4a1c81af1ef1ad71859bc0e478e0 iptables-1.3.8.ebuild 5655 SHA256 1674842ce149e1e22c0f91e6348ca8f1369347acf7170b70c83bed5f11bd9289 iptables-1.3.8.ebuild 5655 -MISC ChangeLog 28169 RMD160 35d5bf5fb4c92273c2fa74f70ae9fe4def3f50f7 SHA1 6e221834d463e5eb85c20ebcfe9e65296ce9f67d SHA256 9a023f86b39208b03e0dd50e754dd5f3fc3f022167d6dab30a247a0e5a16b66d -MD5 5ebfe8902015813cd07e07d89062bf0f ChangeLog 28169 -RMD160 35d5bf5fb4c92273c2fa74f70ae9fe4def3f50f7 ChangeLog 28169 -SHA256 9a023f86b39208b03e0dd50e754dd5f3fc3f022167d6dab30a247a0e5a16b66d ChangeLog 28169 +MISC ChangeLog 28468 RMD160 cab8b2728a3e7835fff6e9093ab24aa5daf15b08 SHA1 872752fb806bed7cf4aacd221b5be25c4f646a70 SHA256 bca9ebcf4c9213575838a1395a1d8aed38cb1d0213b70a602a18f2acab52af84 +MD5 99f2e7c05efe3d78528e355bed16dc6f ChangeLog 28468 +RMD160 cab8b2728a3e7835fff6e9093ab24aa5daf15b08 ChangeLog 28468 +SHA256 bca9ebcf4c9213575838a1395a1d8aed38cb1d0213b70a602a18f2acab52af84 ChangeLog 28468 MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92 MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 metadata.xml 164 @@ -114,3 +121,13 @@ SHA256 8048b01e4f6f9fb10439865f89148da4ec062c2cf58f173d8c0f972fc30da0e6 files/di MD5 c86154ff595f26a7984a7ca3bfc8a008 files/digest-iptables-1.3.8-r1 759 RMD160 6c88f7fed586ad08ffe9285c546a5b31ef3e841e files/digest-iptables-1.3.8-r1 759 SHA256 426a4daf870687aa1bc82a5460edc55857d7362477a5a34b4ea8d14b31953c76 files/digest-iptables-1.3.8-r1 759 +MD5 c86154ff595f26a7984a7ca3bfc8a008 files/digest-iptables-1.3.8-r2 759 +RMD160 6c88f7fed586ad08ffe9285c546a5b31ef3e841e files/digest-iptables-1.3.8-r2 759 +SHA256 426a4daf870687aa1bc82a5460edc55857d7362477a5a34b4ea8d14b31953c76 files/digest-iptables-1.3.8-r2 759 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.6 (GNU/Linux) + +iD8DBQFG0Fkdp/wUKkr7RBoRAvjoAKC0+wTXLIr+lHEkCwx1CkTkh2bdogCgpetg +2bV/2hhIGzfhfBFreGx+UQQ= +=BEPP +-----END PGP SIGNATURE----- diff --git a/net-firewall/iptables/files/digest-iptables-1.3.8-r2 b/net-firewall/iptables/files/digest-iptables-1.3.8-r2 new file mode 100644 index 000000000000..43e60193a9a6 --- /dev/null +++ b/net-firewall/iptables/files/digest-iptables-1.3.8-r2 @@ -0,0 +1,9 @@ +MD5 133a27ce2aa95581e91d364827f68293 iptables-1.3.6-imq.diff 5723 +RMD160 7158923558f9ad82973cda9dbec2c10b86e13e9c iptables-1.3.6-imq.diff 5723 +SHA256 f507319d01dd1810b497e0700a67d8f9668dd1363b1f8e1b09097cf2bbc26ab7 iptables-1.3.6-imq.diff 5723 +MD5 0a9209f928002e5eee9cdff8fef4d4b3 iptables-1.3.8.tar.bz2 172584 +RMD160 851b223eef0ca008ad1f375aa0ebdab46ff6f886 iptables-1.3.8.tar.bz2 172584 +SHA256 c5c8a091ed9a1fa2dab86b4d87719064b50c202e8503046f50f299a361e6211c iptables-1.3.8.tar.bz2 172584 +MD5 c8097875074405be31e4372682b68d7a netfilter-layer7-v2.13.tar.gz 159622 +RMD160 fbb27da483636729ca0cbf04d88f8b5bcfe95bce netfilter-layer7-v2.13.tar.gz 159622 +SHA256 41ca603d745018e0d60e90ab042e8d23abbe7db428c06800b9f15e0d727493a6 netfilter-layer7-v2.13.tar.gz 159622 diff --git a/net-firewall/iptables/iptables-1.3.8-r2.ebuild b/net-firewall/iptables/iptables-1.3.8-r2.ebuild new file mode 100644 index 000000000000..69051f516786 --- /dev/null +++ b/net-firewall/iptables/iptables-1.3.8-r2.ebuild @@ -0,0 +1,222 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-firewall/iptables/iptables-1.3.8-r2.ebuild,v 1.1 2007/08/25 16:28:59 vapier Exp $ + +inherit eutils flag-o-matic toolchain-funcs linux-info + +L7_PV=2.13 +L7_P=netfilter-layer7-v${L7_PV} +IMQ_PATCH=iptables-1.3.6-imq.diff + +DESCRIPTION="Linux kernel (2.4+) firewall, NAT and packet mangling tools" +HOMEPAGE="http://www.iptables.org/ http://www.linuximq.net/ http://l7-filter.sf.net/" +SRC_URI="http://iptables.org/projects/iptables/files/${P}.tar.bz2 + imq? ( http://www.linuximq.net/patchs/${IMQ_PATCH} ) + l7filter? ( mirror://sourceforge/l7-filter/${L7_P}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="extensions imq ipv6 l7filter static" + +DEPEND="virtual/os-headers + l7filter? ( virtual/linux-sources ) + imq? ( virtual/linux-sources )" +RDEPEND="" + +pkg_setup() { + if use l7filter || use imq || use extensions ; then + ewarn "WARNING: 3rd party extensions has been enabled." + ewarn "This means that iptables will use your currently installed" + ewarn "kernel in ${KERNEL_DIR} as headers for iptables." + ewarn + if use extensions ; then + ewarn "You may have to patch your kernel to allow iptables to build." + ewarn "Please check http://ftp.netfilter.org/pub/patch-o-matic-ng/snapshot/ for patches" + ewarn "for your kernel." + ewarn + fi + linux-info_pkg_setup + fi + + if kernel_is ge 2 6 20 + then + L7FILE=${KERNEL_DIR}/net/netfilter/xt_layer7.c + else + L7FILE=${KERNEL_DIR}/net/ipv4/netfilter/ipt_layer7.c + fi + if use l7filter && \ + [ ! -f "${L7FILE}" ]; then + die "For layer 7 support emerge net-misc/l7-filter-${L7_PV} before this" + fi + if use imq && \ + [ ! -f "${KERNEL_DIR}/net/ipv4/netfilter/ipt_IMQ.c" ]; then + die "For IMQ support add a patch from http://www.linuximq.net/patches.html to your kernel" + fi +} + +src_unpack() { + unpack ${P}.tar.bz2 + if use l7filter + then + unpack ${L7_P}.tar.gz + fi + cd "${S}" + + epatch "${FILESDIR}"/${PN}-1.3.7-sparc64.patch #166201 + epatch "${FILESDIR}"/${PN}-1.3.7-kernel-dir.patch #172209 + + EPATCH_OPTS="-p0" \ + epatch "${FILESDIR}"/1.3.1-files/install_ipv6_apps.patch + EPATCH_OPTS="-p1" \ + epatch "${FILESDIR}"/1.3.1-files/install_all_dev_files.patch-1.3.1 + + # this provide's grsec's stealth match + EPATCH_OPTS="-p0" \ + epatch "${FILESDIR}"/1.3.1-files/grsecurity-1.2.8-iptables.patch-1.3.1 + sed -i \ + -e "s/PF_EXT_SLIB:=/PF_EXT_SLIB:=stealth /g" \ + extensions/Makefile || die "failed to enable stealth extension" + + local check base=${PORTAGE_CONFIGROOT}/etc/portage/patches + for check in {${CATEGORY}/${PF},${CATEGORY}/${P},${CATEGORY}/${PN}}; do + EPATCH_SOURCE=${base}/${CTARGET}/${check} + [[ -r ${EPATCH_SOURCE} ]] || EPATCH_SOURCE=${base}/${CHOST}/${check} + [[ -r ${EPATCH_SOURCE} ]] || EPATCH_SOURCE=${base}/${check} + if [[ -d ${EPATCH_SOURCE} ]] ; then + EPATCH_SUFFIX="patch" + EPATCH_FORCE="yes" \ + EPATCH_MULTI_MSG="Applying user patches from ${EPATCH_SOURCE} ..." \ + epatch + break + fi + done + + if use imq ; then + EPATCH_OPTS="-p1" epatch "${DISTDIR}"/${IMQ_PATCH} + for OA in extensions/.IMQ-test extensions/.IMQ-test6 ; do + mv ${OA} ${OA}.orig + tr '\015' '\012' < ${OA}.orig > ${OA} + rm ${OA}.orig + done + chmod +x extensions/.IMQ-test* + fi + if use l7filter ; then + #yes choosing 2.6.20 was deliberate - upstream mistake possibly + if kernel_is ge 2 6 20 + then + L7_PATCH=iptables-for-kernel-2.6.20forward-layer7-${L7_PV}.patch + else + L7_PATCH=iptables-for-kernel-pre2.6.20-layer7-${L7_PV}.patch + fi + EPATCH_OPTS="-p1" epatch "${WORKDIR}"/${L7_P}/${L7_PATCH} + chmod +x extensions/.layer7-test* + fi + + # the net directory is moving around so account for new/old locations + cd "${S}"/extensions + local x + for x in .*-test* ; do + sed -e 's:net/ipv[46]/netfilter:net/netfilter:g' ${x} > .new-${x} + if cmp ${x} .new-${x} > /dev/null ; then + rm -f .new-${x} + else + chmod a+rx .new-${x} + fi + done +} + +src_defs() { + # these are used in both of src_compile and src_install + myconf="" + myconf="${myconf} PREFIX=" + myconf="${myconf} LIBDIR=/$(get_libdir)" + myconf="${myconf} BINDIR=/sbin" + myconf="${myconf} MANDIR=/usr/share/man" + myconf="${myconf} INCDIR=/usr/include" + # iptables and libraries are now installed to /sbin and /lib, so that + # systems with remote network-mounted /usr filesystems can get their + # network interfaces up and running correctly without /usr. + use ipv6 || myconf="${myconf} DO_IPV6=0" + use static && myconf="${myconf} NO_SHARED_LIBS=0" + export myconf + if ! use l7filter && ! use imq && ! use extensions ; then + export KERNEL_DIR=$( + # ugh -- iptables has scripts which check for the existence of + # files so we need to give it the right path to our toolchain's + # include dir where the linux headers are. + # FYI IPTABLES: YOU FAIL + echo '#include <linux/limits.h>' | $(tc-getCPP) - | grep -o '/[^"]*linux/limits.h' | sed s:include/linux/limits.h:: + ) + diemsg="failure" + else + diemsg="failure - with l7filter and/or imq patch and/or other miscellanious patches added" + fi + export diemsg +} + +src_compile() { + src_defs + + # iptables will NOT work correctly unless -O[123] are present! + replace-flags -O0 -O2 + get-flag -O || append-flags -O2 + # cannot work with the following according to Makefile near check: + # -g -pg -DIPTC_DEBUG + + emake -j1 \ + COPT_FLAGS="${CFLAGS}" ${myconf} \ + KERNEL_DIR="${KERNEL_DIR}" \ + CC="$(tc-getCC)" \ + || die "${diemsg}" +} + +src_install() { + src_defs + make ${myconf} \ + DESTDIR="${D}" \ + KERNEL_DIR="${KERNEL_DIR}" \ + install install-devel || die "${diemsg}" + + dodir /usr/$(get_libdir) + mv -f "${D}"/$(get_libdir)/*.a "${D}"/usr/$(get_libdir) + + keepdir /var/lib/iptables + newinitd "${FILESDIR}"/${PN}-1.3.2.init iptables + newconfd "${FILESDIR}"/${PN}-1.3.2.confd iptables + + if use ipv6 ; then + keepdir /var/lib/ip6tables + newinitd "${FILESDIR}"/iptables-1.3.2.init ip6tables + newconfd "${FILESDIR}"/ip6tables-1.3.2.confd ip6tables + fi +} + +pkg_postinst() { + elog "This package now includes an initscript which loads and saves" + elog "rules stored in /var/lib/iptables/rules-save" + use ipv6 && elog "and /var/lib/ip6tables/rules-save" + elog "This location can be changed in /etc/conf.d/iptables" + elog + elog "If you are using the iptables initsscript you should save your" + elog "rules using the new iptables version before rebooting." + elog + elog "If you are upgrading to a >=2.4.21 kernel you may need to rebuild" + elog "iptables." + elog + ewarn "!!! ipforwarding is not a part of the iptables initscripts." + ewarn + ewarn "To enable ipforwarding at bootup:" + ewarn "/etc/sysctl.conf and set net.ipv4.ip_forward = 1" + if use ipv6 ; then + ewarn "and/or" + ewarn " net.ipv6.ip_forward = 1" + ewarn "for ipv6." + fi + if has_version '=net-firewall/iptables-1.2*' ; then + ewarn + ewarn "When upgrading from iptables-1.2.x, you may be unable to remove" + ewarn "rules added with iptables-1.2.x. This is a known issue, please see:" + ewarn "http://bugs.gentoo.org/92535" + fi +} |