aboutsummaryrefslogtreecommitdiff
path: root/net/microsocks/files/microsocks.init
blob: e775d89d7ec2c6ff36da741f2f76aad713221616 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/sh /etc/rc.common

USE_PROCD=1
START=95

CONF="microsocks"

start_service() {
	config_load "$CONF"
    
	local _enabled
	config_get_bool _enabled "config" "enabled" "0"
	[ "$_enabled" -eq "1" ] || return 1
    
    	local _port
	local _listenip
	local _bindaddr
	local _user
	local _format
	local _auth_once

	config_get _port "config" "port"
	config_get _listenip "config" "listenip"
	config_get _bindaddr "config" "bindaddr"
	config_get _user "config" "user"
	config_get _password "config" "password"
	config_get_bool _auth_once "config" "auth_once" 0
    
	procd_open_instance "$CONF"
	procd_set_param command /usr/bin/microsocks
	[ -z "$_port" ] || procd_append_param command -p "${_port}"
	[ -z "$_listenip" ] || procd_append_param command -i "${_listenip}"
	[ -z "$_bindaddr" ] || procd_append_param command -b "${_bindaddr}"
	[ -z "$_user" ] || procd_append_param command -u "${_user}"
	[ -z "$_password" ] || procd_append_param command -P "${_password}"
	[ "$_auth_once" -eq "0" ] || procd_append_param command -1
	
	procd_set_param respawn
	procd_set_param stderr 1
	# TODO: Make it dependable on some verbose/debug config setting?
	# procd_set_param stdout 1
    
	procd_close_instance
}


reload_service() {
	stop
	start
}

service_triggers() { 
	procd_add_reload_trigger "$CONF" 
}