blob: bd6ede383b6936016aea3002fa753e6081b85c0a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_httpbl/mod_httpbl-1.5-r1.ebuild,v 1.1 2009/11/30 16:51:14 flameeyes Exp $
EAPI=2
inherit apache-module
DESCRIPTION="http:BL implementation for Apache 2"
HOMEPAGE="http://www.projecthoneypot.org/httpbl_download.php"
SRC_URI="http://httpbl.cvs.sourceforge.net/viewvc/*checkout*/httpbl/mod_httpbl_for_apache_2.0/mod_httpbl_source/mod_httpbl.c?revision=${PV} -> ${P}.c"
LICENSE="GPL-2"
SLOT="0"
IUSE="debug"
KEYWORDS="~amd64"
S=${WORKDIR}
APACHE2_MOD_FILE=".libs/${PN}.so"
APACHE2_MOD_CONF="99_mod_httpbl"
APACHE2_MOD_DEFINE="HTTPBL"
need_apache2
# We have to copy the file in the work directory because otherwise
# apxs will try to build it within distdir (which is luckily read
# only).
src_unpack() {
cp "${DISTDIR}"/${P}.c ${PN}.c || die
}
src_prepare() {
sed -i \
-e '/#define VERBOSITY/i#ifndef VERBOSITY' \
-e '/#define VERBOSITY/a#endif' \
${PN}.c || die
}
src_compile() {
APXS_FLAGS=
for flag in ${CFLAGS}; do
APXS_FLAGS="${APXS_FLAGS} -Wc,${flag}"
done
if use debug; then
APXS_FLAGS="${APXS_FLAGS} -DVERBOSITY=APLOG_DEBUG"
fi
# Yes we need to prefix it _twice_
for flag in ${LDFLAGS}; do
APXS_FLAGS="${APXS_FLAGS} -Wl,${flag}"
done
${APXS} -c ${APXS_FLAGS} ${PN}.c || die
}
src_install() {
apache-module_src_install
keepdir /var/log/apache2/httpbl
fowners apache:apache /var/log/apache2/httpbl || die
fperms 0770 /var/log/apache2/httpbl || die
keepdir /var/cache/mod_httpbl || die
fowners apache:apache /var/cache/mod_httpbl || die
fperms 0770 /var/cache/mod_httpbl || die
}
pkg_postinst() {
apache-module_pkg_postinst
elog "To use http:BL you will need the API key from Project Honey Pot"
elog "that you can receive being an active member."
elog "See ${HOMEPAGE} for details."
elog ""
elog "By default all requests are filtered with the blacklist, you probably"
elog "want to restrict that to virtual hosts where actual applications are"
elog "running and/or on possibly vulnerable locations."
}
|