Commit 141eba41 authored by Gustavo Zacarias's avatar Gustavo Zacarias Committed by Thomas Petazzoni
Browse files

squid: add sysv initscript

Add SysV-style initscript, complete rewrite from
http://patchwork.ozlabs.org/patch/412057/



'stop' is handled by squid itself to gracefully (as possible) close
every pending connection and commit changes to disk. By default this is
configured for 30 seconds and can be configured via shutdown_lifetime in
/etc/squid.conf if someone is too anxious.
The script won't block until squid is properly shutdown - but people
should _REALLY_ use restart or reload if that's what they want, instead
of stop+start.

'restart' is handled by squid itself, since if we do a stop/start cycle
we must wait for a clean shutdown cycle (takes time).

'reload' is also handled by squid itself and it's not the same as
restart, it will just trigger a configuration reload without purging
runtime cache (RAM) contents.

Signed-off-by: default avatarGustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 6723a73e
Loading
Loading
Loading
Loading

package/squid/S97squid

0 → 100755
+40 −0
Original line number Diff line number Diff line
#!/bin/sh

[ -x /usr/sbin/squid ] || exit 0
[ -f /etc/squid.conf ] || exit 0

case "$1" in
  start)
    echo -n "Starting squid: "
    if [ ! -d /var/log/squid ]; then
      mkdir -p /var/log/squid
      chown squid:squid /var/log/squid
    fi
    start-stop-daemon -S -x /usr/sbin/squid
    [ $? = 0 ] && echo "OK" || echo "FAIL"
    ;;

   stop)
    echo -n "Stopping squid: "
    /usr/sbin/squid -k shutdown
    [ $? = 0 ] && echo "OK" || echo "FAIL"
    ;;

  reload)
    echo -n "Reloading squid configuration: "
    /usr/sbin/squid -k reconfigure
    [ $? = 0 ] && echo "OK" || echo "FAIL"
    ;;

  restart)
    echo -n "Restarting squid: "
    /usr/sbin/squid -k restart
    [ $? = 0 ] && echo "OK" || echo "FAIL"
    ;;

  *)
    echo "Usage: $0 {start|stop|reload|restart}"
    exit 1
esac

exit 0
+5 −0
Original line number Diff line number Diff line
@@ -65,4 +65,9 @@ define SQUID_USERS
	squid -1 squid -1 * - - - Squid proxy cache
endef

define SQUID_INSTALL_INIT_SYSV
	$(INSTALL) -m 755 -D package/squid/S97squid \
		$(TARGET_DIR)/etc/init.d/S97squid
endef

$(eval $(autotools-package))