Merge pull request #97 from zhao-gang/for-openwrt-packages
Add package shadowsocks-client
This commit is contained in:
commit
94c1946aba
3 changed files with 98 additions and 0 deletions
39
net/shadowsocks-client/Makefile
Normal file
39
net/shadowsocks-client/Makefile
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=shadowsocks-client
|
||||||
|
PKG_VERSION:=0.5
|
||||||
|
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
||||||
|
|
||||||
|
PKG_SOURCE_PROTO:=git
|
||||||
|
PKG_SOURCE_URL:=http://github.com/zhao-gang/shadowsocks-tiny.git
|
||||||
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_SOURCE_VERSION:=d8ef02715f40de0fb7ba0f7267d3f8260f38ba80
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||||
|
PKG_MAINTAINER:=Zhao, Gang <gang.zhao.42@gmail.com>
|
||||||
|
|
||||||
|
PKG_LICENSE:=MIT
|
||||||
|
PKG_LICENSE_FILES:=COPYING
|
||||||
|
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/shadowsocks-client
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
SUBMENU:=Web Servers/Proxies
|
||||||
|
TITLE:=shadowsocks client for router
|
||||||
|
URL:=https://github.com/zhao-gang/shadowsocks-tiny
|
||||||
|
DEPENDS:=+libopenssl
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/shadowsocks-client/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/sslocal $(1)/usr/bin/
|
||||||
|
$(INSTALL_DIR) $(1)/etc/config
|
||||||
|
$(INSTALL_DATA) ./files/sslocal.config $(1)/etc/config/sslocal
|
||||||
|
$(INSTALL_DIR) $(1)/etc/init.d
|
||||||
|
$(INSTALL_BIN) ./files/sslocal.init $(1)/etc/init.d/sslocal
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,shadowsocks-client))
|
7
net/shadowsocks-client/files/sslocal.config
Normal file
7
net/shadowsocks-client/files/sslocal.config
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
config sslocal
|
||||||
|
option server_addr ''
|
||||||
|
option server_port ''
|
||||||
|
option local_addr ''
|
||||||
|
option local_port ''
|
||||||
|
option password ''
|
||||||
|
option method ''
|
52
net/shadowsocks-client/files/sslocal.init
Executable file
52
net/shadowsocks-client/files/sslocal.init
Executable file
|
@ -0,0 +1,52 @@
|
||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
# Copyright (C) 2006-2012 OpenWrt.org
|
||||||
|
# Copyright (C) 2014 Zhao, Gang <gang.zhao.42@gmail.com>
|
||||||
|
|
||||||
|
START=99
|
||||||
|
|
||||||
|
USE_PROCD=1
|
||||||
|
PROG=/usr/bin/sslocal
|
||||||
|
|
||||||
|
validate_section_sslocal() {
|
||||||
|
uci_validate_section sslocal sslocal "${1}" \
|
||||||
|
'server_addr:host' \
|
||||||
|
'server_port:port' \
|
||||||
|
'local_addr:host' \
|
||||||
|
'local_port:port' \
|
||||||
|
'password:string' \
|
||||||
|
'method:string' \
|
||||||
|
'log_level:range(0,7):5'
|
||||||
|
|
||||||
|
return $?
|
||||||
|
}
|
||||||
|
|
||||||
|
sslocal_instance() {
|
||||||
|
local server_addr server_port local_addr local_port
|
||||||
|
local password method log_level
|
||||||
|
|
||||||
|
validate_section_sslocal "${1}" || {
|
||||||
|
echo "validation failed"
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
procd_open_instance
|
||||||
|
procd_set_param command "$PROG"
|
||||||
|
procd_append_param command -s "${server_addr}" -p "${server_port}"
|
||||||
|
procd_append_param command -u "${local_addr}" -b "${local_port}"
|
||||||
|
procd_append_param command -k "${password}" -m "${method}"
|
||||||
|
procd_append_param command -l "${log_level}"
|
||||||
|
procd_set_param respawn
|
||||||
|
procd_close_instance
|
||||||
|
}
|
||||||
|
|
||||||
|
start_service() {
|
||||||
|
config_load sslocal
|
||||||
|
|
||||||
|
config_foreach sslocal_instance sslocal
|
||||||
|
}
|
||||||
|
|
||||||
|
service_triggers()
|
||||||
|
{
|
||||||
|
procd_add_reload_trigger "sslocal"
|
||||||
|
procd_add_validation validate_section_sslocal
|
||||||
|
}
|
Loading…
Reference in a new issue