mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-19 14:13:30 +00:00
add package SoftetherVPN 5
This commit is contained in:
parent
ec8a5b47d7
commit
b6f83df270
166
package/lean/softethervpn5/Makefile
Normal file
166
package/lean/softethervpn5/Makefile
Normal file
@ -0,0 +1,166 @@
|
||||
# Based partially on the versions of el1n and Federico Di Marco
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=softethervpn
|
||||
PKG_VERSION_NAME:=5.01
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/SoftEtherVPN/SoftEtherVPN.git
|
||||
PKG_SOURCE_DATE:=2018-10-03
|
||||
PKG_SOURCE_VERSION:=2271bf5fba410f815bf6834aae65d4b513cee1b2
|
||||
PKG_MIRROR_HASH:=bc921fa4646a54d523d0388e50c202943f020ebb1679d1fd858954aa585a11e3
|
||||
|
||||
HOST_BUILD_DEPENDS:=ncurses/host readline/host
|
||||
PKG_BUILD_DEPENDS:=softethervpn5/host
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
include $(INCLUDE_DIR)/nls.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
|
||||
define Package/softethervpn5/Default
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=VPN
|
||||
TITLE:=softethervpn $(PKG_VERSION_NAME)
|
||||
URL:=http://www.softether.org/
|
||||
endef
|
||||
|
||||
define Package/softethervpn5/Default/description
|
||||
SoftEther VPN supports SSL-VPN, OpenVPN, L2TP, EtherIP, L2TPv3 and IPsec as a single VPN software.
|
||||
SoftEther VPN is not only an alternative VPN server to existing VPN products (OpenVPN, IPsec and MS-SSTP),
|
||||
but has also original strong SSL-VPN protocol to penetrate any kinds of firewalls.
|
||||
Guide: https://wordpress.tirlins.com/2015/03/setting-up-softether-vpn-on-openwrt/
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-libs
|
||||
$(call Package/softethervpn5/Default)
|
||||
DEPENDS:=+libpthread +librt +libreadline +libopenssl +libncurses +kmod-tun +zlib $(ICONV_DEPENDS)
|
||||
TITLE+= libs
|
||||
HIDDEN:=1
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-server
|
||||
$(call Package/softethervpn5/Default)
|
||||
TITLE+= server
|
||||
DEPENDS:= +softethervpn5-libs
|
||||
endef
|
||||
define Package/softethervpn5-server/description
|
||||
$(call Package/softethervpn5/Default/description)
|
||||
|
||||
Provides the vpnserver (daemon).
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-bridge
|
||||
$(call Package/softethervpn5/Default)
|
||||
TITLE+= bridge
|
||||
DEPENDS:= +softethervpn5-libs
|
||||
endef
|
||||
define Package/softethervpn5-bridge/description
|
||||
$(call Package/softethervpn5/Default/description)
|
||||
|
||||
Provides the vpnbridge (daemon).
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-client
|
||||
$(call Package/softethervpn5/Default)
|
||||
TITLE+= client
|
||||
DEPENDS:= +softethervpn5-libs
|
||||
endef
|
||||
define Package/softethervpn5-client/description
|
||||
$(call Package/softethervpn5/Default/description)
|
||||
|
||||
Provides the vpnclient (daemon).
|
||||
endef
|
||||
|
||||
export USE_MUSL=YES
|
||||
# BUG: outdated host/include/elf.h
|
||||
HOST_CFLAGS += $(FPIC) -DAT_HWCAP2=26
|
||||
TARGET_CFLAGS += $(FPIC)
|
||||
|
||||
define Host/Compile
|
||||
$(call Host/Compile/Default,hamcorebuilder)
|
||||
endef
|
||||
|
||||
define Host/Install
|
||||
$(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/
|
||||
$(INSTALL_BIN) $(HOST_BUILD_DIR)/tmp/hamcorebuilder $(STAGING_DIR_HOSTPKG)/bin/
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
$(Build/Prepare/Default)
|
||||
# build as shared libs
|
||||
$(SED) 's,STATIC,SHARED,g' $(PKG_BUILD_DIR)/src/Mayaqua/CMakeLists.txt
|
||||
$(SED) 's,STATIC,SHARED,g' $(PKG_BUILD_DIR)/src/Cedar/CMakeLists.txt
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
$(call Build/Compile/Default,vpnserver vpnbridge vpnclient vpncmd hamcore-archive-build)
|
||||
endef
|
||||
|
||||
define Build/Install
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-libs/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_BUILD_DIR)/tmp/Cedar/libcedar.so $(1)/usr/lib/
|
||||
$(CP) $(PKG_BUILD_DIR)/tmp/Mayaqua/libmayaqua.so $(1)/usr/lib/
|
||||
$(INSTALL_DIR) $(1)/usr/libexec/softethervpn
|
||||
$(CP) $(PKG_BUILD_DIR)/tmp/hamcore.se2 $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/vpncmd/vpncmd $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_BIN) files/launcher.sh $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_DATA) files/dummy $(1)/usr/libexec/softethervpn/lang.config
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(LN) ../../usr/libexec/softethervpn/launcher.sh $(1)/usr/bin/vpncmd
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-server/install
|
||||
$(INSTALL_DIR) $(1)/usr/libexec/softethervpn
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/vpnserver/vpnserver $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_DATA) files/dummy $(1)/usr/libexec/softethervpn/vpn_server.config
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) files/vpnserver.init $(1)/etc/init.d/softethervpnserver
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-bridge/install
|
||||
$(INSTALL_DIR) $(1)/usr/libexec/softethervpn
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/vpnbridge/vpnbridge $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_BIN) files/launcher.sh $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_DATA) files/dummy $(1)/usr/libexec/softethervpn/vpn_bridge.config
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) files/vpnbridge.init $(1)/etc/init.d/softethervpnbridge
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-client/install
|
||||
$(INSTALL_DIR) $(1)/usr/libexec/softethervpn
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/vpnclient/vpnclient $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_BIN) files/launcher.sh $(1)/usr/libexec/softethervpn/
|
||||
$(INSTALL_DATA) files/dummy $(1)/usr/libexec/softethervpn/vpn_client.config
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) files/vpnclient.init $(1)/etc/init.d/softethervpnclient
|
||||
endef
|
||||
|
||||
define Package/softethervpn5-server/conffiles
|
||||
/usr/libexec/softethervpn/vpn_server.config
|
||||
/usr/libexec/softethervpn/lang.config
|
||||
endef
|
||||
define Package/softethervpn5-bridge/conffiles
|
||||
/usr/libexec/softethervpn/vpn_bridge.config
|
||||
/usr/libexec/softethervpn/lang.config
|
||||
endef
|
||||
define Package/softethervpn5-client/conffiles
|
||||
/usr/libexec/softethervpn/vpn_client.config
|
||||
/usr/libexec/softethervpn/lang.config
|
||||
endef
|
||||
|
||||
$(eval $(call HostBuild))
|
||||
$(eval $(call BuildPackage,softethervpn5-libs))
|
||||
$(eval $(call BuildPackage,softethervpn5-server))
|
||||
$(eval $(call BuildPackage,softethervpn5-bridge))
|
||||
$(eval $(call BuildPackage,softethervpn5-client))
|
1
package/lean/softethervpn5/files/dummy
Normal file
1
package/lean/softethervpn5/files/dummy
Normal file
@ -0,0 +1 @@
|
||||
|
2
package/lean/softethervpn5/files/launcher.sh
Normal file
2
package/lean/softethervpn5/files/launcher.sh
Normal file
@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
exec "/usr/libexec/softethervpn/${0##*/}" "$@"
|
28
package/lean/softethervpn5/files/vpnbridge.init
Normal file
28
package/lean/softethervpn5/files/vpnbridge.init
Normal file
@ -0,0 +1,28 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=90
|
||||
USE_PROCD=1
|
||||
|
||||
start_service(){
|
||||
logger -t 'softethervpn5' "Starting softether bridge service."
|
||||
|
||||
[ -d /var/softethervpn ] || mkdir -p -m 0775 /var/softethervpn
|
||||
|
||||
[ -f /var/softethervpn/hamcore.se2 ] || ln -sf /usr/libexec/softethervpn/hamcore.se2 /var/softethervpn/
|
||||
[ -f /var/softethervpn/lang.config ] || ln -sf /usr/libexec/softethervpn/lang.config /var/softethervpn/
|
||||
|
||||
[ -f /var/softethervpn/vpnbridge ] || ln -sf /usr/libexec/softethervpn/vpnbridge /var/softethervpn/
|
||||
[ -f /var/softethervpn/vpn_bridge.config ] || ln -sf /usr/libexec/softethervpn/vpn_bridge.config /var/softethervpn/
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param env LANG=en_US.UTF-8
|
||||
procd_set_param command /var/softethervpn/vpnbridge start --foreground
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service(){
|
||||
logger -t 'softethervpn5' "Stopping softether bridge service."
|
||||
|
||||
/var/softethervpn/vpnbridge stop
|
||||
}
|
28
package/lean/softethervpn5/files/vpnclient.init
Normal file
28
package/lean/softethervpn5/files/vpnclient.init
Normal file
@ -0,0 +1,28 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=92
|
||||
USE_PROCD=1
|
||||
|
||||
start_service(){
|
||||
logger -t 'softethervpn5' "Starting softether client service."
|
||||
|
||||
[ -d /var/softethervpn ] || mkdir -p -m 0775 /var/softethervpn
|
||||
|
||||
[ -f /var/softethervpn/hamcore.se2 ] || ln -sf /usr/libexec/softethervpn/hamcore.se2 /var/softethervpn/
|
||||
[ -f /var/softethervpn/lang.config ] || ln -sf /usr/libexec/softethervpn/lang.config /var/softethervpn/
|
||||
|
||||
[ -f /var/softethervpn/vpnclient ] || ln -sf /usr/libexec/softethervpn/vpnclient /var/softethervpn/
|
||||
[ -f /var/softethervpn/vpn_client.config ] || ln -sf /usr/libexec/softethervpn/vpn_client.config /var/softethervpn/
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param env LANG=en_US.UTF-8
|
||||
procd_set_param command /var/softethervpn/vpnclient start --foreground
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service(){
|
||||
logger -t 'softethervpn5' "Stopping softether client service."
|
||||
|
||||
/var/softethervpn/vpnclient stop
|
||||
}
|
28
package/lean/softethervpn5/files/vpnserver.init
Normal file
28
package/lean/softethervpn5/files/vpnserver.init
Normal file
@ -0,0 +1,28 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=91
|
||||
USE_PROCD=1
|
||||
|
||||
start_service(){
|
||||
logger -t 'softethervpn5' "Starting softether vpnserver service."
|
||||
|
||||
[ -d /var/softethervpn ] || mkdir -p -m 0775 /var/softethervpn
|
||||
|
||||
[ -f /var/softethervpn/hamcore.se2 ] || ln -sf /usr/libexec/softethervpn/hamcore.se2 /var/softethervpn/
|
||||
[ -f /var/softethervpn/lang.config ] || ln -sf /usr/libexec/softethervpn/lang.config /var/softethervpn/
|
||||
|
||||
[ -f /var/softethervpn/vpnserver ] || ln -sf /usr/libexec/softethervpn/vpnserver /var/softethervpn/
|
||||
[ -f /var/softethervpn/vpn_server.config ] || ln -sf /usr/libexec/softethervpn/vpn_server.config /var/softethervpn/
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param env LANG=en_US.UTF-8
|
||||
procd_set_param command /var/softethervpn/vpnserver start --foreground
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service(){
|
||||
logger -t 'softethervpn5' "Stopping softether vpnserver service."
|
||||
|
||||
/var/softethervpn/vpnserver stop
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
--- a/src/Cedar/Server.h 2018-07-21
|
||||
+++ b/src/Cedar/Server.h 2018-07-23
|
||||
@@ -138,10 +138,10 @@ extern char *SERVER_CONFIG_FILE_NAME;
|
||||
#define SERVER_CONTROL_TCP_TIMEOUT (60 * 1000)
|
||||
#define SERVER_FARM_CONTROL_INTERVAL (10 * 1000)
|
||||
|
||||
-#define SERVER_FILE_SAVE_INTERVAL_DEFAULT (5 * 60 * 1000)
|
||||
-#define SERVER_FILE_SAVE_INTERVAL_MIN (5 * 1000)
|
||||
-#define SERVER_FILE_SAVE_INTERVAL_MAX (3600 * 1000)
|
||||
-#define SERVER_FILE_SAVE_INTERVAL_USERMODE (1 * 60 * 1000)
|
||||
+#define SERVER_FILE_SAVE_INTERVAL_DEFAULT (24 * 60 * 60 * 1000)
|
||||
+#define SERVER_FILE_SAVE_INTERVAL_MIN (5 * 60 * 1000)
|
||||
+#define SERVER_FILE_SAVE_INTERVAL_MAX (7 * 24 * 60 * 60 * 1000)
|
||||
+#define SERVER_FILE_SAVE_INTERVAL_USERMODE (5 * 60 * 1000)
|
||||
|
||||
#define SERVER_LICENSE_VIOLATION_SPAN (SERVER_FARM_CONTROL_INTERVAL * 2)
|
||||
|
@ -0,0 +1,22 @@
|
||||
--- a/src/Cedar/Server.c 2018-07-25
|
||||
+++ b/src/Cedar/Server.c 2018-07-26
|
||||
@@ -110,7 +110,7 @@
|
||||
|
||||
// Server.c
|
||||
// VPN Server module
|
||||
-
|
||||
+#include <syslog.h>
|
||||
#include "CedarPch.h"
|
||||
|
||||
static SERVER *server = NULL;
|
||||
@@ -6601,6 +6601,10 @@ UINT SiWriteConfigurationFile(SERVER *s)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
+
|
||||
+ openlog("softethervpn-server", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_DAEMON);
|
||||
+ syslog(LOG_NOTICE, "Writing vpn_server.config (AutoSaveConfigSpan set to < %d > seconds)", (s->AutoSaveConfigSpan / 1000));
|
||||
+ closelog();
|
||||
|
||||
Lock(s->SaveCfgLock);
|
||||
{
|
Loading…
Reference in New Issue
Block a user