Author: glen                         Date: Mon Nov 24 18:06:10 2008 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- run as memcached user
- allow multiple daemons

---- Files affected:
SOURCES:
   memcached.init (1.5 -> 1.6) 

---- Diffs:

================================================================
Index: SOURCES/memcached.init
diff -u SOURCES/memcached.init:1.5 SOURCES/memcached.init:1.6
--- SOURCES/memcached.init:1.5  Thu Oct 19 12:33:58 2006
+++ SOURCES/memcached.init      Mon Nov 24 19:06:05 2008
@@ -17,20 +17,33 @@
 . /etc/sysconfig/network
 
 MEMUSAGE="64"
-MEMCACHED_RUNAS="nobody"
+MEMCACHED_RUNAS="memcached"
 MAXCONN="1024"
-LISTENON="127.0.0.1"
-PORT="11211"
+LISTEN="127.0.0.1:11211"
 
 # Get service config
 [ -f /etc/sysconfig/memcached ] && . /etc/sysconfig/memcached
 
+if [ "$LISTENON" -a "$PORT" ]; then
+       # backward compat config
+       LISTEN="$LISTENON:$PORT"
+fi
+
 start() {
        # Check if the service is already running?
        if [ ! -f /var/lock/subsys/memcached ]; then
-               msg_starting memcached
-               daemon /usr/sbin/memcached -d -p $PORT -l $LISTENON -m 
$MEMUSAGE -c $MAXCONN -u $MEMCACHED_RUNAS $MEMCACHED_OPTS
-               RETVAL=$?
+               local listen ip port ret=0
+               for listen in $LISTEN; do
+                       ip=${listen%:*}
+                       port=${listen##*:}
+                       msg_starting "memcached ($ip:$port)"
+                       pidfile=/var/run/memcached/"$ip.$port.pid"
+                       daemon --pidfile $pidfile --user $MEMCACHED_RUNAS \
+                               /usr/sbin/memcached -d -P $pidfile -l $ip -p 
$port \
+                               -m $MEMUSAGE -c $MAXCONN -u $MEMCACHED_RUNAS 
$MEMCACHED_OPTS
+                       ret=$?
+                       [ $ret = 0 ] || RETVAL=$?
+               done
                [ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached
        else
                msg_already_running memcached
@@ -39,9 +52,15 @@
 
 stop() {
        if [ -f /var/lock/subsys/memcached ]; then
-               msg_stopping memcached
-               killproc memcached
-               rm -f /var/run/memcached.pid /var/lock/subsys/memcached 
>/dev/null 2>&1
+               local listen ip port
+               for listen in $LISTEN; do
+                       ip=${listen%:*}
+                       port=${listen##*:}
+                       msg_stopping "memcached ($ip:$port)"
+                       pidfile=/var/run/memcached/"$ip.$port.pid"
+                       killproc --pidfile $pidfile memcached
+               done
+               rm -f /var/lock/subsys/memcached >/dev/null 2>&1
        else
                msg_not_running memcached
        fi
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/memcached.init?r1=1.5&r2=1.6&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to