2008-11-03 19:27:06 +00:00
|
|
|
#!/bin/sh /etc/rc.common
|
|
|
|
# Copyright (C) 2008 OpenWrt.org
|
|
|
|
START=50
|
|
|
|
|
|
|
|
DAEMON=/usr/sbin/imspector
|
2009-06-17 16:03:08 +00:00
|
|
|
CFG_D=/var/etc
|
|
|
|
CFGFILE=$CFG_D/imspector.conf
|
|
|
|
LOG_D=/var/log/imspector
|
2008-11-03 19:27:06 +00:00
|
|
|
|
|
|
|
start() {
|
2009-06-17 16:03:08 +00:00
|
|
|
[ -d $CFG_D ] || mkdir -p $CFG_D
|
|
|
|
[ -d $LOG_D ] || mkdir -p $LOG_D
|
|
|
|
|
2008-11-03 19:27:06 +00:00
|
|
|
config_load imspector
|
|
|
|
config_foreach start_imspector imspector
|
|
|
|
}
|
|
|
|
|
|
|
|
stop() {
|
|
|
|
start-stop-daemon -q -x "$DAEMON" -K
|
|
|
|
rm -f $CFGFILE
|
|
|
|
}
|
|
|
|
|
|
|
|
restart() {
|
|
|
|
stop
|
|
|
|
sleep 2
|
|
|
|
start
|
|
|
|
}
|
|
|
|
|
|
|
|
start_imspector() {
|
|
|
|
config_get_bool enable "$1" enable
|
|
|
|
[ "$enable" -eq "1" ] || return 0
|
|
|
|
|
|
|
|
echo '### AUTOGENERATED CONFIGURATION' > $CFGFILE
|
|
|
|
echo '### DO NOT EDIT' >> $CFGFILE
|
|
|
|
echo '### SEE /etc/config/imspector INSTEAD' >> $CFGFILE
|
|
|
|
echo '' >> $CFGFILE
|
|
|
|
|
|
|
|
imspector_options='listenaddr port http_port pidfilename plugin_dir
|
2009-06-17 16:03:08 +00:00
|
|
|
user group ssl ssl_key ssl_cert ssl_ca_key ssl_ca_cert
|
|
|
|
ssl_cert_dir ssl_verify_dir ssl_verify response_prefix
|
|
|
|
response_postfix responder_filename notice_days notice_response
|
|
|
|
filtered_mins filtered_response icq_protocol irc_protocol
|
|
|
|
msn_protocol yahoo_protocol gg_protocol jabber_protocol
|
|
|
|
https_protocol log_typing_events file_logging_dir mysql_server
|
|
|
|
mysql_database mysql_username mysql_password sqlite_file
|
|
|
|
pgsql_connect badwords_filename badwords_replace_character
|
|
|
|
badwords_block_count acl_filename db_filter_filename
|
|
|
|
block_files block_webcams censord'
|
2008-11-03 19:27:06 +00:00
|
|
|
|
|
|
|
for option in $imspector_options; do
|
|
|
|
imspector_atom "$1" "$option" '"' >> $CFGFILE
|
|
|
|
done
|
|
|
|
|
|
|
|
start-stop-daemon -S -q -x "$DAEMON" -- -c "$CFGFILE"
|
|
|
|
}
|
|
|
|
|
|
|
|
imspector_atom() {
|
|
|
|
local SECTION=$1
|
|
|
|
local OPTION=$2
|
|
|
|
|
|
|
|
config_get _value "$SECTION" "$OPTION"
|
|
|
|
[ -n "$_value" -o "$EMPTY_DISABLED" -eq "1" ] && {
|
|
|
|
echo "$OPTION=${_value}"
|
|
|
|
}
|
|
|
|
}
|