packages: tomcat/apache-tomcat.init - check network before any java stuff -...

baggins baggins at pld-linux.org
Fri Nov 19 21:21:15 CET 2010


Author: baggins                      Date: Fri Nov 19 20:21:15 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- check network before any java stuff
- properly set up CATALINA_* directories
- add options for SecurityManager
- group options into env vars by function
- unset TMP* vars for tomcat and servlets to not inherit
	/root/tmp as temporary directory

---- Files affected:
packages/tomcat:
   apache-tomcat.init (1.19 -> 1.20) 

---- Diffs:

================================================================
Index: packages/tomcat/apache-tomcat.init
diff -u packages/tomcat/apache-tomcat.init:1.19 packages/tomcat/apache-tomcat.init:1.20
--- packages/tomcat/apache-tomcat.init:1.19	Wed May 19 22:00:40 2010
+++ packages/tomcat/apache-tomcat.init	Fri Nov 19 21:21:10 2010
@@ -16,29 +16,49 @@
 # Get network config
 . /etc/sysconfig/network
 
-CATALINA_BASE=/var/lib/tomcat
-CATALINA_OPTS="-Xmx384M -XX:MaxPermSize=192m -XX:PermSize=128m -Djava.library.path=/usr/lib64:/usr/lib"
+# Check that networking is up.
+if is_yes "${NETWORKING}"; then
+	if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
+		msg_network_down tomcat
+		exit 1
+	fi
+else
+	exit 0
+fi
+
 set_jvm
 
+# Set default options
+CATALINA_OPTS="-Xmx384M -XX:MaxPermSize=192m -XX:PermSize=128m"
+
 # Get service config - may override defaults
 [ -f /etc/sysconfig/tomcat ] && . /etc/sysconfig/tomcat
 
-export CATALINA_BASE
-export CATALINA_OPTS
-export JAVA_OPTS
-export JAVA_HOME
+unset TMPDIR
+unset TMP
+
 COMMONSDAEMON=$(find-jar commons-daemon)
 TOMCATLIBS=/usr/share/tomcat/bin/bootstrap.jar:$(build-classpath-directory /usr/share/tomcat/lib)
 CLASSPATH=${CLASSPATH:+"$CLASSPATH:"}$COMMONSDAEMON:$TOMCATLIBS
 
-# Check that networking is up.
-if is_yes "${NETWORKING}"; then
-	if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
-		msg_network_down tomcat
-		exit 1
+CATALINA_HOME=/usr/share/tomcat
+CATALINA_BASE=/var/lib/tomcat
+CATALINA_TMPDIR=/var/lib/tomcat/temp
+
+JSVC_OPTS="-classpath ${CLASSPATH} \
+	-home ${JAVA_HOME} \
+	-pidfile /var/run/tomcat.pid \
+	-outfile /var/log/tomcat/catalina.out \
+	-errfile /var/log/tomcat/catalina.err"
+
+if is_yes "${SECURITY_MANAGER}"; then
+	CATALINA_OPTS="$CATALINA_OPTS \
+		-Djava.security.manager \
+		-Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy"
+	if [ -n "${SECURITY_MANAGER_DEBUG}" ]; then
+		CATALINA_OPTS="$CATALINA_OPTS \
+			-Djava.security.debug=${SECURITY_MANAGER_DEBUG}"
 	fi
-else
-	exit 0
 fi
 
 start() {
@@ -47,13 +67,12 @@
 		msg_starting tomcat
 		busy
 		cd $CATALINA_BASE
-		jsvc -user tomcat \
-			-procname tomcat \
-			-cp $CLASSPATH \
-			-home $JAVA_HOME \
-			-pidfile /var/run/tomcat.pid \
-			-outfile /var/log/tomcat/catalina.out \
-			-errfile /var/log/tomcat/catalina.err \
+		jsvc -user tomcat -procname tomcat \
+			$JSVC_OPTS \
+			-Dcatalina.base=${CATALINA_BASE} \
+			-Dcatalina.home=${CATALINA_HOME} \
+			-Djava.io.tmpdir=${CATALINA_TMPDIR} \
+			-Djava.library.path=/usr/lib64:/usr/lib \
 			$CATALINA_OPTS \
 			org.apache.catalina.startup.Bootstrap
 		[ $? -ne 0 ] && RETVAL=1
@@ -73,12 +92,8 @@
 		# Stop daemons.
 		msg_stopping tomcat
 		busy
-		jsvc -user tomcat \
-			-stop \
-			-cp $CLASSPATH \
-			-pidfile /var/run/tomcat.pid \
-			-outfile /var/log/tomcat/catalina.out \
-			-errfile /var/log/tomcat/catalina.err \
+		jsvc -user tomcat -stop \
+			$JSVC_OPTS \
 			org.apache.catalina.startup.Bootstrap
 		[ $? -eq 0 ] && ok || fail
 		rm -f /var/lock/subsys/tomcat
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/tomcat/apache-tomcat.init?r1=1.19&r2=1.20&f=u



More information about the pld-cvs-commit mailing list