[OpenWrt-Devel] [PATCH 1/2] ds-lite: make tunnel encapsulation limit support configurable (FS#1501)

Hans Dedecker dedeckeh at gmail.com
Tue May 29 16:39:24 EDT 2018


Be compatible with ISPs which don't support the destination option header containing
the tunnel encapsulation limit as reported in FS#1501.
Setting the uci parameter encaplimit to ignore; allows to disable the insertion
of the destination option header in the ds-lite packets.
Otherwise the tunnel encapsulation limit value can be set to a value from 0 till 255
by setting the encaplimit_dslite uci parameter accordingly.
If no encaplimit value is specified the default value is 4 as before.

Signed-off-by: Hans Dedecker <dedeckeh at gmail.com>
---
 package/network/ipv6/ds-lite/Makefile        | 2 +-
 package/network/ipv6/ds-lite/files/dslite.sh | 8 ++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)
 mode change 100755 => 100644 package/network/ipv6/ds-lite/files/dslite.sh

diff --git a/package/network/ipv6/ds-lite/Makefile b/package/network/ipv6/ds-lite/Makefile
index 58e7156b95..4393d35877 100644
--- a/package/network/ipv6/ds-lite/Makefile
+++ b/package/network/ipv6/ds-lite/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ds-lite
 PKG_VERSION:=7
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 PKG_LICENSE:=GPL-2.0
 
 include $(INCLUDE_DIR)/package.mk
diff --git a/package/network/ipv6/ds-lite/files/dslite.sh b/package/network/ipv6/ds-lite/files/dslite.sh
old mode 100755
new mode 100644
index 2485a424dc..e9a0544690
--- a/package/network/ipv6/ds-lite/files/dslite.sh
+++ b/package/network/ipv6/ds-lite/files/dslite.sh
@@ -15,8 +15,8 @@ proto_dslite_setup() {
 	local link="ds-$cfg"
 	local remoteip6
 
-	local mtu ttl peeraddr ip6addr tunlink zone weakif
-	json_get_vars mtu ttl peeraddr ip6addr tunlink zone weakif
+	local mtu ttl peeraddr ip6addr tunlink zone weakif encaplimit
+	json_get_vars mtu ttl peeraddr ip6addr tunlink zone weakif encaplimit
 
 	[ -z "$peeraddr" ] && {
 		proto_notify_error "$cfg" "MISSING_ADDRESS"
@@ -68,6 +68,9 @@ proto_dslite_setup() {
 	json_add_string local "$ip6addr"
 	json_add_string remote "$peeraddr"
 	[ -n "$tunlink" ] && json_add_string link "$tunlink"
+	json_add_object 'data'
+	  json_add_string encaplimit "${encaplimit:-4}"
+	json_close_object
 	proto_close_tunnel
 
 	proto_add_data
@@ -97,6 +100,7 @@ proto_dslite_init_config() {
 	proto_config_add_string "tunlink"
 	proto_config_add_int "mtu"
 	proto_config_add_int "ttl"
+	proto_config_add_string "encaplimit"
 	proto_config_add_string "zone"
 	proto_config_add_string "weakif"
 }
-- 
2.16.3


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/listinfo/openwrt-devel



More information about the openwrt-devel mailing list