[oe-commits] Roman I Khimov : squid: revamp init
git version control
git at git.openembedded.org
Sat Mar 20 18:57:44 UTC 2010
Module: openembedded.git
Branch: shr/unstable
Commit: cf50e480b287db476fca182615c3d173e7862dae
URL: http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=cf50e480b287db476fca182615c3d173e7862dae
Author: Roman I Khimov <khimov at altell.ru>
Date: Fri Mar 19 13:58:32 2010 +0300
squid: revamp init
Configure squid to create PID file by default, use SQUID_ARGS variable,
wait for it to actually stop when stopping (takes some time for squid
to do it).
Signed-off-by: Roman I Khimov <khimov at altell.ru>
---
recipes/squid/squid.inc | 3 ++-
recipes/squid/squid/squid.init | 23 ++++++++++++++++++-----
2 files changed, 20 insertions(+), 6 deletions(-)
diff --git a/recipes/squid/squid.inc b/recipes/squid/squid.inc
index ff3789c..9004b6f 100644
--- a/recipes/squid/squid.inc
+++ b/recipes/squid/squid.inc
@@ -1,6 +1,6 @@
DESCRIPTION = "Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more"
LICENSE = "GPLv2"
-INC_PR = "r3"
+INC_PR = "r4"
DEPENDS = "squid-native-${PV}"
SRC_URI = "http://www.squid-cache.org/Versions/v2/${SQUID_MAJOR}/squid-${PV}.tar.bz2;name=squid-${PV} \
@@ -42,6 +42,7 @@ do_install_append() {
mv ${D}${sysconfdir}/mime.conf.default ${D}${sysconfdir}/squid/
mv ${D}${sysconfdir}/squid.conf.default ${D}${sysconfdir}/squid/
install -m 0644 ${WORKDIR}/squid-volatiles ${D}${sysconfdir}/default/volatiles/squid
+ sed -ri "s,^\#?\ *(pid_filename.+)$,\1," ${D}${sysconfdir}/squid/squid.conf
}
# this packages the languages better and saves some space, installs
diff --git a/recipes/squid/squid/squid.init b/recipes/squid/squid/squid.init
index 61d9de4..d829cf9 100644
--- a/recipes/squid/squid/squid.init
+++ b/recipes/squid/squid/squid.init
@@ -3,7 +3,7 @@ DAEMON=/usr/sbin/squid
NAME=squid
DESC="Squid HTTP proxy"
PIDFILE=/var/run/squid.pid
-SQUID_ARGS="-D -sYC"
+SQUID_ARGS="-D -sY"
test -f $DAEMON || exit 0
@@ -36,11 +36,25 @@ start() {
chown $owner $ldr
fi
- start-stop-daemon -S -p $PIDFILE -x $DAEMON
+ start-stop-daemon -S -p $PIDFILE -x $DAEMON -- $SQUID_ARGS
}
stop() {
- start-stop-daemon -K -p $PIDFILE -x $DAEMON
+ EX=0
+ CNT=1
+ while [ $EX -eq 0 -a $CNT -lt 15 ]; do
+ echo -n .
+ sleep 1
+ start-stop-daemon -K -p $PIDFILE 1>/dev/null 2>&1
+ EX=$?
+ CNT=`expr $CNT + 1`
+ done
+ if [ $CNT -eq 15 ]; then
+ echo "failed."
+ else
+ echo "done."
+ rm -f $PIDFILE
+ fi
}
case "$1" in
@@ -50,9 +64,8 @@ case "$1" in
echo "done."
;;
stop)
- echo -n "Stopping $DESC: $NAME... "
+ echo -n "Stopping $DESC: $NAME"
stop
- echo "done."
;;
restart)
echo "Restarting $DESC: $NAME... "
More information about the Openembedded-commits
mailing list