Gentoo Archives: gentoo-commits

From: "Daniel Black (dragonheart)" <dragonheart@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-misc/l7-filter: l7-filter-2.21.ebuild ChangeLog l7-filter-2.18.ebuild l7-filter-2.20.ebuild l7-filter-2.8.ebuild
Date: Fri, 30 Jan 2009 21:48:38
Message-Id: E1LT1Dy-0003Xq-Ow@stork.gentoo.org
1 dragonheart 09/01/30 21:48:30
2
3 Modified: ChangeLog
4 Added: l7-filter-2.21.ebuild
5 Removed: l7-filter-2.18.ebuild l7-filter-2.20.ebuild
6 l7-filter-2.8.ebuild
7 Log:
8 version bump and cleanout
9 (Portage version: 2.2_rc23/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.61 net-misc/l7-filter/ChangeLog
13
14 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/l7-filter/ChangeLog?rev=1.61&view=markup
15 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/l7-filter/ChangeLog?rev=1.61&content-type=text/plain
16 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/l7-filter/ChangeLog?r1=1.60&r2=1.61
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/net-misc/l7-filter/ChangeLog,v
21 retrieving revision 1.60
22 retrieving revision 1.61
23 diff -u -r1.60 -r1.61
24 --- ChangeLog 3 Jan 2009 09:53:14 -0000 1.60
25 +++ ChangeLog 30 Jan 2009 21:48:29 -0000 1.61
26 @@ -1,6 +1,12 @@
27 # ChangeLog for net-misc/l7-filter
28 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/net-misc/l7-filter/ChangeLog,v 1.60 2009/01/03 09:53:14 dragonheart Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/net-misc/l7-filter/ChangeLog,v 1.61 2009/01/30 21:48:29 dragonheart Exp $
31 +
32 +*l7-filter-2.21 (30 Jan 2009)
33 +
34 + 30 Jan 2009; Daniel Black <dragonheart@g.o> -l7-filter-2.8.ebuild,
35 + -l7-filter-2.18.ebuild, -l7-filter-2.20.ebuild, +l7-filter-2.21.ebuild:
36 + version bump and cleanout
37
38 *l7-filter-2.20 (03 Jan 2009)
39
40
41
42
43 1.1 net-misc/l7-filter/l7-filter-2.21.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/l7-filter/l7-filter-2.21.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/l7-filter/l7-filter-2.21.ebuild?rev=1.1&content-type=text/plain
47
48 Index: l7-filter-2.21.ebuild
49 ===================================================================
50 # Copyright 1999-2009 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/net-misc/l7-filter/l7-filter-2.21.ebuild,v 1.1 2009/01/30 21:48:29 dragonheart Exp $
53
54 inherit linux-info eutils
55
56 MY_P=netfilter-layer7-v${PV/_/-}
57 DESCRIPTION="Kernel modules for layer 7 iptables filtering"
58 HOMEPAGE="http://l7-filter.sourceforge.net"
59 SRC_URI="mirror://sourceforge/l7-filter/${MY_P}.tar.gz
60 mirror://gentoo/additional_patch_for_2.6.13.diff"
61
62 LICENSE="GPL-2"
63 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
64 IUSE=""
65 #break repoman
66 #SLOT="${KV}"
67 SLOT="0"
68 S=${WORKDIR}/${MY_P}
69 RDEPEND="net-misc/l7-protocols"
70
71 which_patch() {
72 if kernel_is ge 2 6 25
73 then
74 PATCH=kernel-2.6.25-2.6.28-layer7-${PV}.patch
75 elif kernel_is ge 2 6 22
76 then
77 PATCH=for_older_kernels/kernel-2.6.22-2.6.24-layer7-2.18.patch
78 elif kernel_is ge 2 6 20
79 then
80 PATCH=for_older_kernels/kernel-2.6.20-2.6.21-layer7-2.16.1.patch
81 elif kernel_is ge 2 6 18
82 then
83 PATCH=for_older_kernels/kernel-2.6.18-2.6.19-layer7-2.9.patch
84 elif kernel_is ge 2 6 17
85 then
86 PATCH=for_older_kernels/kernel-2.6.17-layer7-2.5.patch
87 elif kernel_is ge 2 6 13
88 then
89 PATCH=for_older_kernels/kernel-2.6.13-2.6.16-layer7-2.2.patch
90 elif kernel_is ge 2 6 11
91 then
92 PATCH=for_older_kernels/kernel-2.6.11-2.6.12-layer7-1.4.patch
93 elif kernel_is ge 2 6 9
94 then
95 PATCH=for_older_kernels/kernel-2.6.9-2.6.10-layer7-1.2.patch
96 elif kernel_is ge 2 6 0
97 then
98 PATCH=for_older_kernels/kernel-2.6.0-2.6.8.1-layer7-0.9.2.patch
99 elif kernel_is 2 4
100 then
101 PATCH=kernel-2.4-layer7-${PV}.patch
102 else
103 die "No L7-filter patch for Kernel version ${KV_FULL} - sorry not supported"
104 fi
105 }
106
107 pkg_setup() {
108 linux-info_pkg_setup
109 pkg_preinstall
110 pkg_postinst
111 }
112
113 src_unpack() {
114
115 which_patch
116
117 if [ -f ${KV_DIR}/include/linux/netfilter_ipv4/ipt_layer7.h ] || \
118 [ -f ${KV_DIR}/include/linux/netfilter/xt_layer7.h ]
119 then
120 ewarn "already installed ${PN} for kernel ${KV_FULL}"
121 ewarn "If this is an upgrade attempt, try unmerging first."
122 ewarn "If this failes remove your kernel source from /usr/src"
123 ewarn "and remerge your kernel sources"
124 die
125 fi
126
127 unpack ${MY_P}.tar.gz
128
129 [ ! -f "${S}/${PATCH}" ] && \
130 die "patch ${PATCH} not found. Please enter a bug at bugs.gentoo.org"
131
132 cd "${S}"
133
134 mkdir kernel
135 mkdir kernel/Documentation
136
137 # create needed directories
138 if kernel_is ge 2 6 20
139 then
140 mkdir -p "${S}"/kernel/net/netfilter/regexp/
141 mkdir -p "${S}"/kernel/include/net/netfilter/
142 else
143 mkdir -p "${S}"/kernel/net/ipv4/netfilter/regexp/
144 mkdir -p "${S}"/kernel/include/linux/netfilter_ipv4/
145 fi
146
147 cd ${KV_DIR}
148
149 # start to copy needed files, if file not exists create an empty file
150 FILES=$(patch -t --dry-run -p1 < "${S}"/${PATCH} | grep "^patching file" | cut -f 3 -d ' ')
151 for F in ${FILES};
152 do
153 if [ -f "${F}" ];
154 then
155 cp -P "${F}" "${S}/kernel/${F}"
156 #else
157 # touch "${S}/kernel/${F}"
158 fi
159 done
160
161 #patch the copied kernel source
162 cd "${S}"/kernel
163 EPATCH_OPTS="-F 3" epatch "${S}/${PATCH}"
164
165 # https://bugs.gentoo.org/show_bug.cgi?id=106009#c5
166 if kernel_is eq 2 6 12
167 then
168 epatch "${DISTDIR}"/additional_patch_for_2.6.13.diff
169 fi
170 }
171
172 src_compile() {
173 einfo "no compiling - just patching source"
174 }
175
176 src_install() {
177 insinto "$(/bin/readlink -f ${KV_DIR})"
178 doins -r kernel/*
179 dodoc CHANGELOG README
180 }
181
182 pkg_preinstall() {
183 if has collision-protect ${FEATURES}; then
184 ewarn
185 ewarn "Collisions are expected as this patches kernel code. Use"
186 ewarn "FEATURES=-collision-protect emerge ...... for this package"
187 die 'incompatible FEATURES=collision-protect'
188 fi
189 }
190
191 pkg_postinst() {
192 ewarn "This may not work with all kernels. If it does not work please enter a bug at bugs.gentoo.org"
193 ewarn "This only patches the current kernel source code. (${KV_DIR})"
194 ewarn "Its up to you to recompile the kernel with the l7 options"
195 ewarn
196 ewarn 'You will also need to emerge iptables with the "extensions" or'
197 ewarn '"l7filter" USE flag (depend which version of iptables you emerge)'
198 }
199
200 #
201 # Unpatching of patched files is required to avoid a broken kernel source tree
202
203 pkg_prerm() {
204 # How to determine what version it was installed against? - measily
205 if [ -f "${ROOT}"/var/db/pkg/net-misc/${PF}/environment ]; then
206 eval $(/bin/fgrep KV=2 "${ROOT}"/var/db/pkg/net-misc/${PF}/environment |\
207 /bin/head -1)
208 elif [ -f "${ROOT}"/var/db/pkg/net-misc/${PF}/environment.bz2 ]; then
209 eval $(/bin/bzfgrep KV=2 "${ROOT}"/var/db/pkg/net-misc/${PF}/environment.bz2 |\
210 /bin/head -1)
211 elif [ -f "${ROOT}"/var/db/pkg/net-misc/${PF}/environment.gz ]; then
212 eval $(/usr/bin/zfgrep KV=2 "${ROOT}"/var/db/pkg/net-misc/${PF}/environment.gz |\
213 /bin/head -1)
214 else
215 die 'could not find previous version'
216 fi
217 KV_DIR=/usr/src/linux-"${KV}"
218 if [ -d ${KV_DIR} ]; then
219 ewarn "${KV_DIR} nolonger exists"
220 return 0;
221 fi
222 echo "KV_DIR=$KV_DIR"
223 if [ -f ${KV_DIR}/include/linux/netfilter_ipv4/ipt_layer7.h ] || \
224 [ -f ${KV_DIR}/include/linux/netfilter/xt_layer7.h ]
225 then
226 einfo 'attempting to unpatch l7-patch from kernel ${KV_FULL}'
227 which_patch
228 if kernel_is eq 2 6 12
229 then
230
231 patch -F 3 -d "${KV_DIR}" -R -p1 \
232 < "${DISTDIR}"/additional_patch_for_2.6.13.diff
233 fi
234 cd "${T}"
235 unpack ${MY_P}.tar.gz
236 EPATCH_SINGLE_MSG="removing previous patch" \
237 EPATCH_OPTS="-F 3 -d "${KV_DIR}" -R" epatch "${T}/${MY_P}/${PATCH}"
238 fi
239 }