diff --git a/net/shadowsocks/Makefile b/net/shadowsocks/Makefile
index 478086ece..bd4abead2 100644
--- a/net/shadowsocks/Makefile
+++ b/net/shadowsocks/Makefile
@@ -1,6 +1,5 @@
PLUGIN_NAME= shadowsocks
-PLUGIN_VERSION= 1.0
-PLUGIN_REVISION= 2
+PLUGIN_VERSION= 1.1
PLUGIN_COMMENT= Secure socks5 proxy
PLUGIN_DEPENDS= shadowsocks-libev
PLUGIN_MAINTAINER= m.muenz@gmail.com
diff --git a/net/shadowsocks/src/opnsense/mvc/app/controllers/OPNsense/Shadowsocks/forms/general.xml b/net/shadowsocks/src/opnsense/mvc/app/controllers/OPNsense/Shadowsocks/forms/general.xml
index a2936b0f4..b87f8e838 100644
--- a/net/shadowsocks/src/opnsense/mvc/app/controllers/OPNsense/Shadowsocks/forms/general.xml
+++ b/net/shadowsocks/src/opnsense/mvc/app/controllers/OPNsense/Shadowsocks/forms/general.xml
@@ -35,4 +35,10 @@
dropdown
Choose the cipher to use for encryption.
+
+ general.tcpudpmode
+
+ dropdown
+ Choose TCP, UDP or both relay mode
+
diff --git a/net/shadowsocks/src/opnsense/mvc/app/models/OPNsense/Shadowsocks/General.xml b/net/shadowsocks/src/opnsense/mvc/app/models/OPNsense/Shadowsocks/General.xml
index 4a9319706..b255c0734 100644
--- a/net/shadowsocks/src/opnsense/mvc/app/models/OPNsense/Shadowsocks/General.xml
+++ b/net/shadowsocks/src/opnsense/mvc/app/models/OPNsense/Shadowsocks/General.xml
@@ -1,7 +1,7 @@
//OPNsense/shadowsocks/general
Shadowsocks configuration
- 1.0.0
+ 1.0.1
0
@@ -46,5 +46,14 @@
ChaCha20-IETF-Poly1305
+
+ tcp_only
+ Y
+
+ TCP only
+ UDP only
+ TCP and UDP
+
+
diff --git a/net/shadowsocks/src/opnsense/service/templates/OPNsense/Shadowsocks/shadowsocks.conf b/net/shadowsocks/src/opnsense/service/templates/OPNsense/Shadowsocks/shadowsocks.conf
index ebe3fccc5..b4337ea4a 100644
--- a/net/shadowsocks/src/opnsense/service/templates/OPNsense/Shadowsocks/shadowsocks.conf
+++ b/net/shadowsocks/src/opnsense/service/templates/OPNsense/Shadowsocks/shadowsocks.conf
@@ -5,6 +5,7 @@
"local_port":{{ OPNsense.shadowsocks.general.localport }},
"password":"{{ OPNsense.shadowsocks.general.password }}",
"timeout":60,
+ "mode":"{{ OPNsense.shadowsocks.general.tcpudpmode }}",
"method":"{{ OPNsense.shadowsocks.general.cipher }}"
}
{% endif %}