packages/net/dnscrypt-proxy/files/dnscrypt-proxy.init
Black Roland 7cb22ef2c2 dnscrypt-proxy: Updated to latest version (1.7.0), added procd support, added separated package for resolvers list
Signed-off-by: Black Roland <black-roland@users.noreply.github.com>
2016-09-03 16:59:10 +09:00

34 lines
1 KiB
Bash

#!/bin/sh /etc/rc.common
START=50
USE_PROCD=1
PROG=/usr/sbin/dnscrypt-proxy
dnscrypt_instance() {
local address port resolver resolvers_list ephemeral_keys client_key
config_get address $1 'address'
config_get port $1 'port'
config_get resolver $1 'resolver' ''
config_get resolvers_list $1 'resolvers_list' '/usr/share/dnscrypt-proxy/dnscrypt-resolvers.csv'
config_get_bool ephemeral_keys $1 'ephemeral_keys' '0'
config_get client_key $1 'client_key' ''
procd_open_instance
procd_set_param command $PROG -u nobody -S
procd_append_param command -a "$address:$port"
procd_append_param command -L $resolvers_list
[ -n "$resolver" ] && procd_append_param command -R $resolver
[ $ephemeral_keys -eq 1 ] && procd_append_param command -E
[ -n "$client_key" ] && procd_append_param command -K $client_key
procd_close_instance
}
start_service() {
config_load dnscrypt-proxy
config_foreach dnscrypt_instance dnscrypt-proxy
}
service_triggers() {
procd_add_reload_trigger 'dnscrypt-proxy'
}