# ChangeLog for www-apache/mod_suphp
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_suphp/ChangeLog,v 1.8 2006/06/05 13:24:10 chtekk Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_suphp/ChangeLog,v 1.9 2006/06/05 18:16:40 hollow Exp $
+
+*mod_suphp-0.6.1-r2 (05 Jun 2006)
+
+ 05 Jun 2006; Benedikt Böhm <hollow@gentoo.org>
+ +files/suphp-mod_userdir.patch, +mod_suphp-0.6.1-r2.ebuild:
+ fix #111081
05 Jun 2006; Luca Longinotti <chtekk@gentoo.org> metadata.xml,
-mod_suphp-0.6.0.ebuild, -mod_suphp-0.6.1.ebuild,
-AUX 70_mod_suphp.conf 1647 RMD160 5ce6c57e1b9874f96a13a4246646a113c72800b5 SHA1 b033903c062af0e4c7c33bf5ed971e9dc3d7ce9b SHA256 eee1940f1f96c95d00bf5fabf65cc1e2b13d27da390c85eba540273e380292b1 size 1647
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX 70_mod_suphp.conf 1647 RMD160 5ce6c57e1b9874f96a13a4246646a113c72800b5 SHA1 b033903c062af0e4c7c33bf5ed971e9dc3d7ce9b SHA256 eee1940f1f96c95d00bf5fabf65cc1e2b13d27da390c85eba540273e380292b1
MD5 8c9cc137769da71d444c2208209857a7 files/70_mod_suphp.conf 1647
RMD160 5ce6c57e1b9874f96a13a4246646a113c72800b5 files/70_mod_suphp.conf 1647
SHA256 eee1940f1f96c95d00bf5fabf65cc1e2b13d27da390c85eba540273e380292b1 files/70_mod_suphp.conf 1647
-AUX suphp-apache22-compat.patch 2393 RMD160 88b5e6fd1727f234545f2c613222bac0db8e4048 SHA1 094b40c9e5d531b9bc3cb2eb2256819302feaa3f SHA256 56a62662bec13ee7021890695af23d53102b9b09ce2172292ab0f5ff000cac52 size 2393
+AUX suphp-apache22-compat.patch 2393 RMD160 88b5e6fd1727f234545f2c613222bac0db8e4048 SHA1 094b40c9e5d531b9bc3cb2eb2256819302feaa3f SHA256 56a62662bec13ee7021890695af23d53102b9b09ce2172292ab0f5ff000cac52
MD5 326471608e497bc910d8e30007730619 files/suphp-apache22-compat.patch 2393
RMD160 88b5e6fd1727f234545f2c613222bac0db8e4048 files/suphp-apache22-compat.patch 2393
SHA256 56a62662bec13ee7021890695af23d53102b9b09ce2172292ab0f5ff000cac52 files/suphp-apache22-compat.patch 2393
-AUX suphp.conf 905 RMD160 a95a7ed6f3d135ea6ab6e6ecaa272b735a306f43 SHA1 33d586b5cdb661cf7ceba6987e88dda849886374 SHA256 8a1dd8bee95dc8ab599cdcca966a583e7fbde5c41b377aa208e1f60af54b6dd7 size 905
+AUX suphp-mod_userdir.patch 7129 RMD160 5e1f75607471b1e14e8a49de5c7a748a26db1dbe SHA1 241e37912c38bc8e2d35c970f8e1e43e1cf22d45 SHA256 5abcc15eec0c741ecb480c2a7f5e3539d24f571908fc4b579ab6d2548ebd015a
+MD5 21d3f8cc9f51ac60cff909cacd3e9337 files/suphp-mod_userdir.patch 7129
+RMD160 5e1f75607471b1e14e8a49de5c7a748a26db1dbe files/suphp-mod_userdir.patch 7129
+SHA256 5abcc15eec0c741ecb480c2a7f5e3539d24f571908fc4b579ab6d2548ebd015a files/suphp-mod_userdir.patch 7129
+AUX suphp.conf 905 RMD160 a95a7ed6f3d135ea6ab6e6ecaa272b735a306f43 SHA1 33d586b5cdb661cf7ceba6987e88dda849886374 SHA256 8a1dd8bee95dc8ab599cdcca966a583e7fbde5c41b377aa208e1f60af54b6dd7
MD5 4c2c4f6d464975c72a932c9eef2e3461 files/suphp.conf 905
RMD160 a95a7ed6f3d135ea6ab6e6ecaa272b735a306f43 files/suphp.conf 905
SHA256 8a1dd8bee95dc8ab599cdcca966a583e7fbde5c41b377aa208e1f60af54b6dd7 files/suphp.conf 905
-DIST suphp-0.6.1.tar.gz 361372 RMD160 c4a77b32ab8ca7f263800c6a745e22cb13959adb SHA256 fd838e3ec24846db2733ee54117c84348c21a2c41990b7a51eadf1b1df041443 size 361372
-EBUILD mod_suphp-0.6.1-r1.ebuild 3039 RMD160 4d7557a630964940186f6cfba7e196333700a8a6 SHA1 dcff6c7a666e3ed14b8498cecad92ec64d6fb561 SHA256 aa7c84b42a46ac326a4eb28ee019591907e3e15b6d0cb69ca454226be36d2549 size 3039
+DIST suphp-0.6.1.tar.gz 361372 RMD160 c4a77b32ab8ca7f263800c6a745e22cb13959adb SHA1 fddb792dcfee8195e29197b6685666cc0b75e466 SHA256 fd838e3ec24846db2733ee54117c84348c21a2c41990b7a51eadf1b1df041443
+EBUILD mod_suphp-0.6.1-r1.ebuild 3039 RMD160 4d7557a630964940186f6cfba7e196333700a8a6 SHA1 dcff6c7a666e3ed14b8498cecad92ec64d6fb561 SHA256 aa7c84b42a46ac326a4eb28ee019591907e3e15b6d0cb69ca454226be36d2549
MD5 40e0ef2a4302366586436504d031fee3 mod_suphp-0.6.1-r1.ebuild 3039
RMD160 4d7557a630964940186f6cfba7e196333700a8a6 mod_suphp-0.6.1-r1.ebuild 3039
SHA256 aa7c84b42a46ac326a4eb28ee019591907e3e15b6d0cb69ca454226be36d2549 mod_suphp-0.6.1-r1.ebuild 3039
-MISC ChangeLog 1260 RMD160 84b520ea7fed40c07456b68ec4cd1224ae092e85 SHA1 9313181145d27b43e5e7211040567409d8e6d532 SHA256 e2542aedf7eebacefff48bad5417727d511c535ee06c65a19070f0a8100ba4d4 size 1260
-MD5 14240f0b9d29f72b6c2ca63f673ae7d0 ChangeLog 1260
-RMD160 84b520ea7fed40c07456b68ec4cd1224ae092e85 ChangeLog 1260
-SHA256 e2542aedf7eebacefff48bad5417727d511c535ee06c65a19070f0a8100ba4d4 ChangeLog 1260
-MISC metadata.xml 231 RMD160 a4a252abe4fb2922d19ccc4952d0128c3ccefbce SHA1 66b21c56c3a98e5a4b489dc000ff1d5956ab63d0 SHA256 79cc89f7b494dc5097d6dc5fedeb567e0dbc13e2adfcbe3f80082ad4625b38b3 size 231
+EBUILD mod_suphp-0.6.1-r2.ebuild 3100 RMD160 b7c48e79fc4d052f60cebd5d4287dacbd2a85b57 SHA1 3a916e3de946073e5ef10fba6fcfa27456dc9d3f SHA256 3bd6a1363cbd4b74fefd14c28b47fb0b55453f7b5d18d54756ee834ef8bb9ef0
+MD5 9127442c28612aa156645c59c80ef2fa mod_suphp-0.6.1-r2.ebuild 3100
+RMD160 b7c48e79fc4d052f60cebd5d4287dacbd2a85b57 mod_suphp-0.6.1-r2.ebuild 3100
+SHA256 3bd6a1363cbd4b74fefd14c28b47fb0b55453f7b5d18d54756ee834ef8bb9ef0 mod_suphp-0.6.1-r2.ebuild 3100
+MISC ChangeLog 1422 RMD160 5671e048ce9ecc0ee35dce2294c6425c6366beb5 SHA1 475a8f7fdadf3b9e20643ff7d56df002b0c21a71 SHA256 b8847ca4c67e420769bb4a8a6eb1d5585da779e59562b1091e45ab2c2962a21f
+MD5 1136b282a99f149de50e0425528e5162 ChangeLog 1422
+RMD160 5671e048ce9ecc0ee35dce2294c6425c6366beb5 ChangeLog 1422
+SHA256 b8847ca4c67e420769bb4a8a6eb1d5585da779e59562b1091e45ab2c2962a21f ChangeLog 1422
+MISC metadata.xml 231 RMD160 a4a252abe4fb2922d19ccc4952d0128c3ccefbce SHA1 66b21c56c3a98e5a4b489dc000ff1d5956ab63d0 SHA256 79cc89f7b494dc5097d6dc5fedeb567e0dbc13e2adfcbe3f80082ad4625b38b3
MD5 94cc9443fa6aead0b11dda55a10e117e metadata.xml 231
RMD160 a4a252abe4fb2922d19ccc4952d0128c3ccefbce metadata.xml 231
SHA256 79cc89f7b494dc5097d6dc5fedeb567e0dbc13e2adfcbe3f80082ad4625b38b3 metadata.xml 231
MD5 e13102858fd8132c87bfc61e2d089691 files/digest-mod_suphp-0.6.1-r1 235
RMD160 8faac9395fa8a523aab5d1d427fb92e7ca7bb933 files/digest-mod_suphp-0.6.1-r1 235
SHA256 59a2c8876291b3a883b38e3840cd5fed86f7fc44d53ec2aece917411d7ea1617 files/digest-mod_suphp-0.6.1-r1 235
+MD5 e13102858fd8132c87bfc61e2d089691 files/digest-mod_suphp-0.6.1-r2 235
+RMD160 8faac9395fa8a523aab5d1d427fb92e7ca7bb933 files/digest-mod_suphp-0.6.1-r2 235
+SHA256 59a2c8876291b3a883b38e3840cd5fed86f7fc44d53ec2aece917411d7ea1617 files/digest-mod_suphp-0.6.1-r2 235
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.3 (GNU/Linux)
+
+iD8DBQFEhHUcmPFBzbX68WERApcDAJ4y8UA8S/Sjqgx3aIQEmKT+9YLTgACeLcUm
+6UIVzg2UGRWH5xF/MMLRxro=
+=tVc9
+-----END PGP SIGNATURE-----
--- /dev/null
+MD5 7eb8ae29404392d9eb07c69d5242d716 suphp-0.6.1.tar.gz 361372
+RMD160 c4a77b32ab8ca7f263800c6a745e22cb13959adb suphp-0.6.1.tar.gz 361372
+SHA256 fd838e3ec24846db2733ee54117c84348c21a2c41990b7a51eadf1b1df041443 suphp-0.6.1.tar.gz 361372
--- /dev/null
+diff -ur suphp-0.6.1/doc/CONFIG suphp-0.6.1-userdir/doc/CONFIG
+--- suphp-0.6.1/doc/CONFIG 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/doc/CONFIG 2005-12-02 15:07:41.000000000 -0500
+@@ -95,6 +95,11 @@
+ Minimum GID allowed to execute scripts.
+ Defaults to compile-time value.
+
++handle_userdir:
++ Handle sites created by mod_userdir.
++ Scripts on userdir sites will be executed with the permissions
++ of the owner of the site. This option only affects force and paranoid mode.
++ This option is enabled by default.
+
+ 3. Handlers
+
+diff -ur suphp-0.6.1/doc/suphp.conf-example suphp-0.6.1-userdir/doc/suphp.conf-example
+--- suphp-0.6.1/doc/suphp.conf-example 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/doc/suphp.conf-example 2005-12-02 15:07:41.000000000 -0500
+@@ -38,6 +38,8 @@
+ ; Minimum GID
+ min_gid=100
+
++; Use correct permissions for mod_userdir sites
++handle_userdir=true
+
+ [handlers]
+ ;Handler for php-scripts
+diff -ur suphp-0.6.1/src/Application.cpp suphp-0.6.1-userdir/src/Application.cpp
+--- suphp-0.6.1/src/Application.cpp 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/Application.cpp 2005-12-02 17:18:27.000000000 -0500
+@@ -19,6 +19,7 @@
+ */
+
+ #include <iostream>
++#include <sstream>
+
+ #include "config.h"
+
+@@ -300,29 +301,33 @@
+ // Paranoid and force mode
+
+ #if (defined(OPT_USERGROUP_PARANOID) || defined(OPT_USERGROUP_FORCE))
+- std::string targetUsername, targetGroupname;
+- try {
+- targetUsername = environment.getVar("SUPHP_USER");
+- targetGroupname = environment.getVar("SUPHP_GROUP");
+- } catch (KeyNotFoundException& e) {
+- throw SecurityException(
++ if (config.getHandleUserdir() && checkUserDir(environment.getVar("SUPHP_URI"),targetUser)) {
++ targetGroup = targetUser.getGroupInfo();
++ } else {
++ std::string targetUsername, targetGroupname;
++ try {
++ targetUsername = environment.getVar("SUPHP_USER");
++ targetGroupname = environment.getVar("SUPHP_GROUP");
++ } catch (KeyNotFoundException& e) {
++ throw SecurityException(
+ "Environment variable SUPHP_USER or SUPHP_GROUP not set",
+ __FILE__, __LINE__);
+- }
++ }
+
+- if (targetUsername[0] == '#' && targetUsername.find_first_not_of(
++ if (targetUsername[0] == '#' && targetUsername.find_first_not_of(
+ "0123456789", 1) == std::string::npos) {
+- targetUser = api.getUserInfo(Util::strToInt(targetUsername.substr(1)));
+- } else {
+- targetUser = api.getUserInfo(targetUsername);
+- }
++ targetUser = api.getUserInfo(Util::strToInt(targetUsername.substr(1)));
++ } else {
++ targetUser = api.getUserInfo(targetUsername);
++ }
+
+- if (targetGroupname[0] == '#' && targetGroupname.find_first_not_of(
++ if (targetGroupname[0] == '#' && targetGroupname.find_first_not_of(
+ "0123456789", 1) == std::string::npos) {
+- targetGroup = api.getGroupInfo(
++ targetGroup = api.getGroupInfo(
+ Util::strToInt(targetGroupname.substr(1)));
+- } else {
+- targetGroup = api.getGroupInfo(targetGroupname);
++ } else {
++ targetGroup = api.getGroupInfo(targetGroupname);
++ }
+ }
+ #endif // OPT_USERGROUP_PARANOID || OPT_USERGROUP_FORCE
+
+@@ -473,6 +478,28 @@
+ }
+ }
+
++bool suPHP::Application::checkUserDir(const std::string& url, UserInfo& user) const {
++
++ if (url.length() <= 2 || url[1] != '~')
++ return false;
++
++ API& api = API_Helper::getSystemAPI();
++ std::string topDir;
++ std::istringstream strm(url);
++
++ for (int i = 0; i < 2; i++)
++ if (!std::getline(strm, topDir, '/'))
++ return false;
++
++ std::string userName = topDir.substr(1,topDir.length());
++
++ try {
++ user = api.getUserInfo(userName);
++ return true;
++ } catch (LookupException& e) {
++ return false;
++ }
++}
+
+ int main(int argc, char **argv) {
+ try {
+diff -ur suphp-0.6.1/src/Application.hpp suphp-0.6.1-userdir/src/Application.hpp
+--- suphp-0.6.1/src/Application.hpp 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/Application.hpp 2005-12-02 15:07:41.000000000 -0500
+@@ -39,6 +39,7 @@
+ #include "SystemException.hpp"
+ #include "SoftException.hpp"
+ #include "SecurityException.hpp"
++#include "UserInfo.hpp"
+
+ namespace suPHP {
+ /**
+@@ -107,6 +108,12 @@
+ const Configuration& config) const
+ throw (SoftException);
+
++ /**
++ * Checks if a given URL is a userdir
++ * associated user is assigned to the user parameter
++ */
++ bool checkUserDir(const std::string& url,
++ UserInfo& user) const;
+
+ public:
+ /**
+diff -ur suphp-0.6.1/src/Configuration.cpp suphp-0.6.1-userdir/src/Configuration.cpp
+--- suphp-0.6.1/src/Configuration.cpp 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/Configuration.cpp 2005-12-02 17:22:46.000000000 -0500
+@@ -112,6 +112,7 @@
+ #endif
+ this->umask = 0077;
+ this->chroot_path = "";
++ this->handle_userdir = true;
+ }
+
+ void suPHP::Configuration::readFromFile(File& file)
+@@ -157,6 +158,8 @@
+ this->umask = Util::octalStrToInt(value);
+ else if (key == "chroot")
+ this->chroot_path = value;
++ else if (key == "handle_userdir")
++ this->handle_userdir = this->strToBool(value);
+ else
+ throw ParsingException("Unknown option \"" + key +
+ "\" in section [global]",
+@@ -250,3 +253,7 @@
+ std::string suPHP::Configuration::getChrootPath() const {
+ return this->chroot_path;
+ }
++
++bool suPHP::Configuration::getHandleUserdir() const {
++ return this->handle_userdir;
++}
+diff -ur suphp-0.6.1/src/Configuration.hpp suphp-0.6.1-userdir/src/Configuration.hpp
+--- suphp-0.6.1/src/Configuration.hpp 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/Configuration.hpp 2005-12-02 15:07:41.000000000 -0500
+@@ -57,7 +57,8 @@
+ int min_gid;
+ int umask;
+ std::string chroot_path;
+-
++ bool handle_userdir;
++
+ /**
+ * Converts string to bool
+ */
+@@ -165,6 +166,12 @@
+ * Return chroot path
+ */
+ std::string getChrootPath() const;
++
++ /**
++ * Return whether to correctly handle mod_userdir sites
++ */
++ bool getHandleUserdir() const;
++
+ };
+ };
+
+diff -ur suphp-0.6.1/src/apache/mod_suphp.c suphp-0.6.1-userdir/src/apache/mod_suphp.c
+--- suphp-0.6.1/src/apache/mod_suphp.c 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/apache/mod_suphp.c 2005-12-02 15:07:41.000000000 -0500
+@@ -444,7 +444,10 @@
+ }
+ }
+ }
+-
++
++ /* for mod_userdir checking */
++ apr_table_setn(r->subprocess_env, "SUPHP_URI", apr_pstrdup(p, r->uri));
++
+ if (auth_user && auth_pass) {
+ ap_table_setn(r->subprocess_env, "SUPHP_AUTH_USER", auth_user);
+ ap_table_setn(r->subprocess_env, "SUPHP_AUTH_PW", auth_pass);
+diff -ur suphp-0.6.1/src/apache2/mod_suphp.c suphp-0.6.1-userdir/src/apache2/mod_suphp.c
+--- suphp-0.6.1/src/apache2/mod_suphp.c 2005-11-26 14:45:49.000000000 -0500
++++ suphp-0.6.1-userdir/src/apache2/mod_suphp.c 2005-12-02 15:07:41.000000000 -0500
+@@ -461,6 +461,10 @@
+ }
+ }
+
++ /* for mod_userdir checking */
++ apr_table_setn(r->subprocess_env, "SUPHP_URI",
++ apr_pstrdup(r->pool, r->uri));
++
+ if (auth_user && auth_pass)
+ {
+ apr_table_setn(r->subprocess_env, "SUPHP_AUTH_USER", auth_user);
--- /dev/null
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-apache/mod_suphp/mod_suphp-0.6.1-r2.ebuild,v 1.1 2006/06/05 18:16:40 hollow Exp $
+
+inherit apache-module eutils
+
+MY_P=${P/mod_/}
+
+SETIDMODES="mode-force mode-owner mode-paranoid"
+
+DESCRIPTION="A PHP wrapper for Apache"
+HOMEPAGE="http://www.suphp.org"
+SRC_URI="http://www.suphp.org/download/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="checkpath ${SETIDMODES}"
+SLOT="0"
+
+S="${WORKDIR}/${MY_P}"
+
+APXS1_S="${S}/src/apache"
+APACHE1_MOD_CONF="70_${PN}"
+APACHE1_MOD_DEFINE="SUPHP"
+
+APXS2_S="${S}/src/apache2"
+APACHE2_MOD_CONF="70_${PN}"
+APACHE2_MOD_DEFINE="SUPHP"
+
+need_apache2
+
+pkg_setup() {
+ modecnt=0
+ for mode in ${SETIDMODES}; do
+ if use ${mode}; then
+ if [ ${modecnt} -eq 0 ]; then
+ SUPHP_SETIDMODE=${mode/mode-}
+ let modecnt++
+ elif [ ${modecnt} -ge 1 ]; then
+ die "You can only select ONE mode in your USE flags!"
+ fi
+ fi
+ done
+
+ if [ ${modecnt} -eq 0 ]; then
+ ewarn
+ ewarn "No mode selected, defaulting to paranoid!"
+ ewarn
+ ewarn "If you want to choose another mode, put mode-force OR mode-owner"
+ ewarn "into your USE flags and run emerge again."
+ ewarn
+ SUPHP_SETIDMODE=paranoid
+ fi
+
+ einfo
+ einfo "Using ${SUPHP_SETIDMODE/mode-} mode"
+ einfo
+ einfo "You can manipulate several configure options of this"
+ einfo "ebuild through environment variables:"
+ einfo
+ einfo "SUPHP_MINUID: Minimum UID, which is allowed to run scripts (default: 1000)"
+ einfo "SUPHP_MINGID: Minimum GID, which is allowed to run scripts (default: 100)"
+ einfo "SUPHP_APACHEUSER: Name of the user Apache is running as (default: apache)"
+ einfo "SUPHP_LOGFILE: Path to suPHP logfile (default: /var/log/apache2/suphp_log)"
+ einfo
+
+ : ${SUPHP_MINUID:=1000}
+ : ${SUPHP_MINGID:=100}
+ : ${SUPHP_APACHEUSER:="apache"}
+ : ${SUPHP_LOGFILE:="/var/log/apache2/suphp_log"}
+}
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${S}"
+
+ epatch "${FILESDIR}/suphp-mod_userdir.patch"
+ epatch "${FILESDIR}/suphp-apache22-compat.patch"
+ if has_version ">=dev-libs/apr-1.0.0" ; then
+ sed -e "s|apr-config|apr-1-config|g" -i configure
+ fi
+}
+
+src_compile() {
+ local myargs=
+ use checkpath || myargs="${myargs} --disable-checkpath"
+
+ myargs="${myargs} \
+ --with-setid-mode=${SUPHP_SETIDMODE} \
+ --with-min-uid=${SUPHP_MINUID} \
+ --with-min-gid=${SUPHP_MINGID} \
+ --with-apache-user=${SUPHP_APACHEUSER} \
+ --with-logfile=${SUPHP_LOGFILE} \
+ --with-apxs=${APXS2}"
+ if has_version ">=dev-libs/apr-1.0.0" ; then
+ CFLAGS="$(apr-1-config --includes) $(apu-1-config --includes)" \
+ econf ${myargs} || die "econf failed"
+ else
+ CFLAGS="$(apr-config --includes) $(apu-config --includes)" \
+ econf ${myargs} || die "econf failed"
+ fi
+
+ emake || die "make failed"
+}
+
+src_install() {
+ apache-module_src_install
+ dosbin src/suphp
+
+ dodoc ChangeLog doc/CONFIG
+
+ docinto apache
+ dodoc doc/apache/CONFIG doc/apache/INSTALL
+
+ insinto /etc
+ doins ${FILESDIR}/suphp.conf
+}
+
+pkg_postinst() {
+ # make suphp setuid
+ chmod 4755 /usr/sbin/suphp
+}