summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-app-polipo/root/usr/sbin/polipo_purge
diff options
context:
space:
mode:
Diffstat (limited to 'applications/luci-app-polipo/root/usr/sbin/polipo_purge')
-rwxr-xr-xapplications/luci-app-polipo/root/usr/sbin/polipo_purge18
1 files changed, 18 insertions, 0 deletions
diff --git a/applications/luci-app-polipo/root/usr/sbin/polipo_purge b/applications/luci-app-polipo/root/usr/sbin/polipo_purge
new file mode 100755
index 000000000..23ba57192
--- /dev/null
+++ b/applications/luci-app-polipo/root/usr/sbin/polipo_purge
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+DAEMON=/usr/sbin/polipo
+PIDFILE=`uci get polipo.daemon.pidFile`
+CFGFILE=/var/etc/polipo.conf
+
+[ -e "$PIDFILE" ] && {
+ PID=`cat $PIDFILE`
+
+ # send Polipo USR1 signal to write its in-memory cache to disk
+ kill -USR1 $PID
+ sleep 2
+ # start polipo with -x flag to purge the on-disk cache
+ polipo -c $CFGFILE -x
+ # send Polipo USR2 signal to discard its in-memory cache
+ kill -USR2 $PID
+}
+