/opt/jp-secure/siteguardlite
Edit: /opt/jp-secure/siteguardlite/rc.siteguardlite_admin (6194B)
#!/bin/sh
#
# rc.siteguardlite_admin
# - initscript for SiteGuard lite
#
# chkconfig: - 99 01
# description: SiteGuard lite
#
# For Turbolinux ES8(UnitedLinux)
### BEGIN INIT INFO
# Provides: siteguardlite_admin
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: SiteGuard lite
# Description: Start the SiteGuard lite
### END INIT INFO
#
# Source function library.
# Path to the siteguard lite package.
prefix=/opt/jp-secure/siteguardlite
suffix=
PRODUCT=siteguardlite
svc=admin
if [ -r /etc/rc.d/init.d/functions ] ; then
. /etc/rc.d/init.d/functions
fi
export PATH=${prefix}/localbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:.
export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib:.
export LD_BIND_NOW=1
unset MAKELEVEL
unset MAKEFLAGS
RETVAL=0
cd $prefix
localprog=${prefix}/rc.${PRODUCT}_${svc}.local
if [ -x ${localprog} -a "X`basename $0`" != "Xrc.${PRODUCT}_${svc}.local" ]; then
exec ${localprog} $*
fi
JAVA_HOME=${prefix}/java
JRE_HOME=${JAVA_HOME}
_RUNJAVA=${JRE_HOME}/bin/java
CATALINA_HOME=${prefix}/tomcat
CATALINA_BASE=${CATALINA_HOME}
BASEDIR=${CATALINA_HOME}
CATALINA_TMPDIR=$CATALINA_BASE/temp
CATALINA_PID=${prefix}/pid.tomcat
JAVA_OPTS="-client -Xms128m -Xmx128m -Djava.net.preferIPv4Stack=true -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"
CATALINA_OPTS=
JAVA_ENDORSED_DIRS=${BASEDIR}/endorsed
CLASSPATH=$CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/tomcat-juli.jar
# "java" binay include "$ORIGIN/../lib/i386/jli" as RPATH.
# So, normally, there is no need to add ${JRE_HOME}/lib/i386/jli/.
# But, "$ORIGIN" seems not work on FreeBSD(7)'s Linux emulation.
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${JRE_HOME}/lib/i386/jli/:.
prog=${PRODUCT}${suffix}_${svc}
progfull=${_RUNJAVA}
pidfile=${CATALINA_PID}
progdesc="Tomcat(WebUI for ${PRODUCT}${suffix})"
setup() {
listen_port=`perl -ne '$all.=$_;END{if($all=~/\[admin\][^[]*^svcport=((.+):)?(\d+)/m){print $3;}}' ${prefix}/conf/${PRODUCT}.ini`
listen_addr=`perl -ne '$all.=$_;END{if($all=~/\[admin\][^[]*^svcport=((.+):)(\d+)/m){print $2;}else{print "0.0.0.0";}}' ${prefix}/conf/${PRODUCT}.ini`
lang=`perl -ne '$all.=$_;END{if($all=~/\[admin\][^[]*^lang=(\w+)/m){print $1;}}' ${prefix}/conf/${PRODUCT}.ini`
acl=`perl -ne '$all.=$_;END{if($all=~/\[admin\][^[]*^acl_for_apache_proxy=(\w+)/m){print $1;}}' ${prefix}/conf/${PRODUCT}.ini`
account_lock_num=`perl -ne '$all.=$_;END{if($all=~/\[admin\][^[]*^account_lock_num=(\w+)/m){print $1;}}' ${prefix}/conf/${PRODUCT}.ini`
if [ -z "${listen_port}" -o -z "${listen_addr}" ]; then
echo "Cannot find listening port from ${prefix}/conf/${PRODUCT}.ini ."
exit 1
fi
if [ "$acl" = "yes" ]; then
server_template="server.xml-template-acl"
else
server_template="server.xml-template"
fi
perl -pe 's|\$\{prefix\}|'${prefix}'|;s|\$\{suffix\}|'${suffix}'|;s|\$\{PRODUCT\}|'${PRODUCT}'|;s|\$\{listen_port\}|'${listen_port}'|;s|\$\{listen_addr\}|'${listen_addr}'|' < ${prefix}/tomcat/conf/${server_template} > ${prefix}/tomcat/conf/server.xml
perl -pe 's|\$\{prefix\}|'${prefix}'|;s|\$\{suffix\}|'${suffix}'|;s|\$\{PRODUCT\}|'${PRODUCT}'|;s|\$\{account_lock_num\}|'${account_lock_num}'|;s|\$\{lang\}|'${lang}'|' < ${prefix}/tomcat/webapps/jp_secure/WebContent/WEB-INF/web.xml-template > ${prefix}/tomcat/webapps/jp_secure/WebContent/WEB-INF/web.xml
rm -f ${prefix}/tmp/login_lock/*
}
start() {
echo -n "Starting $progdesc: "
setup
RETVAL=0
if [ -f ${pidfile} ];then
pid=`cat ${pidfile}`
pidprog=`cat /proc/${pid}/cmdline | perl -pe 's/\0.*//'`
if [ "${pidprog}" = "${progfull}" ]; then
echo "$progdesc is already running. (file:${progfull}, pid:${pid})"
RETVAL=1
else
if ! rm -f ${pidfile} ; then
echo "Cannot remove pidfile(${pidfile})."
RETVAL=1
fi
fi
fi
ulimit -c unlimited
ulimit -t unlimited
if [ "${RETVAL}" = 0 ]; then
LANG=C nohup "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMPDIR" \
org.apache.catalina.startup.Bootstrap start \
< /dev/null >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
RETVAL=$?
PIDVAL=$!
sleep 1
if kill -0 $PIDVAL; then
echo $PIDVAL > $CATALINA_PID
else
RETVAL=1
fi
fi
if [ $RETVAL = 0 ]; then
if type success >/dev/null 2>&1 ; then
success "$progdesc startup"
else
echo -n " [ OK ]"
fi
else
if type failure >/dev/null 2>&1 ; then
failure "$progdesc startup"
else
echo -n " [ FAILED ]"
fi
fi
echo
if [ -d /var/lock/subsys -a "X$UID" = "X0" ]; then touch /var/lock/subsys/${prog} ; fi
return $RETVAL
}
stop() {
RETVAL=0
echo -n "Stopping $progdesc: "
pid=`cat ${pidfile} 2>/dev/null`
if [ -z "${pid}" ]; then
echo "$progdesc is not running."
RETVAL=1
fi
flag_echo_result=1
if [ ${RETVAL} = 0 ];then
kill -9 ${pid}
RETVAL=$?
fi
if [ -f "${pidfile}" ]; then rm -f ${pidfile}; fi
if [ $flag_echo_result = 1 ]; then
if [ $RETVAL = 0 ]; then
if type success >/dev/null 2>&1 ; then
success "$progdesc shutdown"
else
echo -n " [ OK ]"
fi
else
if type failure >/dev/null 2>&1 ; then
failure "$progdesc shutdown"
else
echo -n " [ FAILED ]"
fi
fi
fi
echo
if [ -f /var/lock/subsys/${prog} -a "X$UID" = "X0" ]; then rm -f /var/lock/subsys/${prog} ; fi
return $RETVAL
}
status(){
pid=`cat ${pidfile}`
if [ -n "${pid}" ] ; then
echo "$progdesc (pid ${pid}) is running"
RETVAL=0
else
echo "$progdesc is stopped"
RETVAL=3
fi
return $RETVAL
}
reload(){
echo "Reloading $progdesc: "
kill $pid -HUP
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
stop
sleep 5
start
;;
reload)
reload
;;
setup)
setup
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
esac
exit $RETVAL