mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-10 07:04:03 +00:00
be5a1dcb66
http://www.zope.org/Products/Zope/Hotfix_2002-03-01/README.txt which says: ``The issue involves the checking of security for objects with proxy roles. The context of the owner user that created the object with proxy roles was not being taken into account when determining access to the object with proxy roles. This flaw could allow users defined in subfolders of a site with sufficient privileges to access objects at higher levels in the site that they would not normally be able to access.'' PR: 36103 Submitted by: HAYASHI Yasushi <yasi@yasi.to>
142 lines
4.7 KiB
Makefile
142 lines
4.7 KiB
Makefile
# New ports collection makefile for: Zope
|
|
# Date created: Sat 21 Aug 1999
|
|
# Whom: Peter Cornelius <pcc@gmx.net>
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= zope
|
|
PORTVERSION= 2.5.0
|
|
PORTREVISION= 1
|
|
CATEGORIES= www python zope
|
|
MASTER_SITES= http://www.zope.org/Products/Zope/${PORTVERSION}/ \
|
|
http://www.zope.org/Products/Zope/Hotfix_2002-03-01/
|
|
DISTNAME= Zope-${PORTVERSION}-src
|
|
DISTFILES= ${DISTNAME}.tgz \
|
|
Hotfix_2002-03-01.tgz
|
|
|
|
PATCHFILES= Zope-2.5.0-unix-security.patch
|
|
PATCH_DIST_STRIP= -p1
|
|
PATCH_SITES= http://www.zope.org/Members/zigg/UnixSecurityPatch/
|
|
|
|
MAINTAINER= nbm@FreeBSD.org
|
|
|
|
USE_PYTHON= yes
|
|
PYTHON_VERSION= python2.1
|
|
|
|
#RUN_DEPENDS= ${LOCALBASE}/sbin/apache:${PORTSDIR}/www/apache13-modssl
|
|
|
|
DIST_SUBDIR= zope
|
|
|
|
post-patch:
|
|
@${CP} -Rp ${WRKDIR}/lib ${WRKSRC}
|
|
@${FIND} ${WRKSRC} -name \*.orig -exec ${RM} {} \;
|
|
|
|
# Build has to be done in the final location after installing the sources
|
|
# there. It was a major action to fix all paths otherwise.
|
|
do-build: # empty, but needs to be there for the python dependency.
|
|
|
|
# Change these, if you like, via the environment.
|
|
WEBBASEDIR?= www
|
|
SZOPEBASEDIR?= ${WEBBASEDIR}/Zope
|
|
SCGIBINDIR?= ${WEBBASEDIR}/cgi-bin.default
|
|
SAPACHE_CONFDIR?= etc/apache
|
|
ZOPE_HTTP_PORT?= 8080
|
|
ZOPE_FTP_PORT?= 8021
|
|
ZOPE_MONITOR_PORT?= ''
|
|
|
|
ZOPE_USER= www
|
|
|
|
# Don't change these.
|
|
ZOPEBASEDIR= ${PREFIX}/${SZOPEBASEDIR}
|
|
CGIBINDIR= ${PREFIX}/${SCGIBINDIR}
|
|
APACHE_CONFDIR= ${PREFIX}/${SAPACHE_CONFDIR}
|
|
|
|
PLIST_SUB= ZOPEBASEDIR=${SZOPEBASEDIR} \
|
|
CGIBINDIR=${SCGIBINDIR} \
|
|
APACHE_CONFDIR=${SAPACHE_CONFDIR} \
|
|
VERSION=${PORTVERSION} \
|
|
WEBBASEDIR=${WEBBASEDIR}
|
|
|
|
pre-install:
|
|
PKG_PREFIX=${PREFIX} ${SH} pkg-install ${PKGNAME} PRE-INSTALL
|
|
|
|
# I decided to consider the whole souce tree to be part of the package
|
|
# since in there, Zope can live on its own. I can use Zope's own building
|
|
# mechanism.
|
|
do-install:
|
|
@if [ -e ${ZOPEBASEDIR}/var/Data.fs ] ; then \
|
|
${ECHO} "Saving existing Database to ${ZOPEBASEDIR}/var/Data.fs.preserve." ; \
|
|
${MV} ${ZOPEBASEDIR}/var/Data.fs ${ZOPEBASEDIR}/var/Data.fs.preserve; \
|
|
fi
|
|
@#
|
|
@${MKDIR} ${ZOPEBASEDIR}
|
|
@${ECHO} "===> Please be patient, some builds need their time."
|
|
@${ECHO} "===> Copying..."
|
|
@${CP} -Rp ${WRKSRC}/* ${ZOPEBASEDIR}/
|
|
#@${CP} -Rp ${WRKDIR}/lib ${ZOPEBASEDIR}/
|
|
@#
|
|
@${CHMOD} -R u+w ${ZOPEBASEDIR}
|
|
@(cd ${ZOPEBASEDIR} && ${PYTHON_CMD} w_pcgi.py)
|
|
@${CHMOD} -R u+w ${ZOPEBASEDIR}
|
|
@(cd ${ZOPEBASEDIR} && ${PYTHON_CMD} wo_pcgi.py)
|
|
@(cd ${ZOPEBASEDIR} && \
|
|
${MV} Zope.cgi Zope.cgi.orig ; \
|
|
${ECHO_CMD} "#! ${CGIBINDIR}/pcgi-wrapper" > Zope.cgi ; \
|
|
${CAT} Zope.cgi.orig >> Zope.cgi ; \
|
|
${RM} Zope.cgi.orig )
|
|
@(cd ${ZOPEBASEDIR}/pcgi/Test && ${RM} *.o)
|
|
@(cd ${ZOPEBASEDIR}/pcgi && ${RM} *.o)
|
|
@#
|
|
@${MKDIR} ${CGIBINDIR}
|
|
@(cd ${ZOPEBASEDIR} && \
|
|
${MV} Zope.cgi \
|
|
pcgi/pcgi-wrapper \
|
|
${CGIBINDIR} )
|
|
@(cd ${CGIBINDIR} && \
|
|
${CHMOD} 555 Zope.cgi pcgi-wrapper )
|
|
@#
|
|
@${ECHO} "===> Fixing permissions of Zope's own var directory..."
|
|
@${CHMOD} ugo+rwt ${ZOPEBASEDIR}/var
|
|
@${CHOWN} ${ZOPE_USER} ${ZOPEBASEDIR}/var
|
|
@${CHOWN} ${ZOPE_USER} ${ZOPEBASEDIR}/var/*
|
|
@${RM} ${ZOPEBASEDIR}/var/.cvsignore
|
|
@if [ -e ${ZOPEBASEDIR}/var/Data.fs.preserve ] ; then \
|
|
${ECHO} "Restoring existing Database from ${ZOPEBASEDIR}/var/Data.fs.preserve." ; \
|
|
${MV} ${ZOPEBASEDIR}/var/Data.fs.preserve ${ZOPEBASEDIR}/var/Data.fs; \
|
|
fi
|
|
@#
|
|
@if [ ! -f ${ZOPEBASEDIR}/access ]; then \
|
|
${ECHO} "===> Setting user/password to zopemaster/test..."; \
|
|
(cd ${ZOPEBASEDIR} && \
|
|
${PYTHON_CMD} zpasswd.py -u zopemaster \
|
|
-p test -e CLEARTEXT access ); \
|
|
fi
|
|
@#
|
|
@${CHOWN} ${ZOPE_USER} ${ZOPEBASEDIR}/access
|
|
@#
|
|
@${ECHO} "===> Copying Apache config file changes to ${APACHE_CONFDIR}/apache.conf.Zope-Changes."
|
|
@${MKDIR} ${APACHE_CONFDIR}
|
|
@${CP} -p ${FILESDIR}/apache.conf.Zope-Changes ${APACHE_CONFDIR}/
|
|
@#
|
|
@${ECHO} "===> Please have a look at this file and the instructions"
|
|
@${ECHO} "===> therein and incorporate them to your apache.conf."
|
|
@${ECHO} "===> Creating rc startup file for Zope-${PORTVERSION}..."
|
|
@${MKDIR} ${PREFIX}/etc/rc.d
|
|
@${SED} -e "s|%%ZOPEBASEDIR%%|${ZOPEBASEDIR}|g" \
|
|
-e "s|%%CGIBINDIR%%|${CGIBINDIR}|g" \
|
|
-e "s|%%ZOPE_USER%%|${ZOPE_USER}|g" \
|
|
-e "s|%%ZOPE_HTTP_PORT%%|${ZOPE_HTTP_PORT}|g" \
|
|
-e "s|%%ZOPE_FTP_PORT%%|${ZOPE_FTP_PORT}|g" \
|
|
-e "s|%%ZOPE_MONITOR_PORT%%|${ZOPE_MONITOR_PORT}|g" \
|
|
< ${FILESDIR}/zope.sh.in > ${PREFIX}/etc/rc.d/zope.sh
|
|
@${CHMOD} ug+x,o-rwx ${PREFIX}/etc/rc.d/zope.sh
|
|
@${ECHO} "===> Done with ${PREFIX}/etc/rc.d/zope.sh."
|
|
@${CAT} ${FILESDIR}/Message
|
|
@${ECHO} "===> Your Zope base directory is ${ZOPEBASEDIR}."
|
|
@${ECHO} "===> The Zope license is in ${ZOPEBASEDIR}/LICENSE.txt."
|
|
@${ECHO} "===> For Apache changes see ${APACHE_CONFDIR}/apache.conf.Zope-Changes."
|
|
@${ECHO} "===> Zope.cgi and pcgi-wrapper live in ${CGIBINDIR}."
|
|
|
|
.include <bsd.port.mk>
|