From 3d015e971f5e3f0df8e8ab149fda1270c5c72507 Mon Sep 17 00:00:00 2001
From: Hans Dedecker <dedeckeh@gmail.com>
Date: Wed, 17 Oct 2018 11:02:05 +0200
Subject: gre: make encaplimit support configurable

Make inclusion of the destination option header containing the tunnel
encapsulation limit configurable for IPv6 GRE packets.
Setting the uci parameter encaplimit to ignore; allows to disable the
insertion of the destination option header in the IPv6 GRE packets.
Otherwise the tunnel encapsulation limit value can be set to a value
from 0 till 255 by setting the encaplimit uci parameter accordingly.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
---
 package/network/config/gre/Makefile     | 2 +-
 package/network/config/gre/files/gre.sh | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

(limited to 'package')

diff --git a/package/network/config/gre/Makefile b/package/network/config/gre/Makefile
index 73319e80cf..a7e8612c6c 100644
--- a/package/network/config/gre/Makefile
+++ b/package/network/config/gre/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=gre
 PKG_VERSION:=1
-PKG_RELEASE:=8
+PKG_RELEASE:=9
 PKG_LICENSE:=GPL-2.0
 
 include $(INCLUDE_DIR)/package.mk
diff --git a/package/network/config/gre/files/gre.sh b/package/network/config/gre/files/gre.sh
index e604bfb259..ca11e87cfd 100755
--- a/package/network/config/gre/files/gre.sh
+++ b/package/network/config/gre/files/gre.sh
@@ -39,6 +39,7 @@ gre_generic_setup() {
 	[ -n "$ocsum" ] && json_add_boolean ocsum "$ocsum"
 	[ -n "$iseqno" ] && json_add_boolean iseqno "$iseqno"
 	[ -n "$oseqno" ] && json_add_boolean oseqno "$oseqno"
+	[ -n "$encaplimit" ] && json_add_string encaplimit "$encaplimit"
 	json_close_object
 
 	proto_close_tunnel
@@ -133,7 +134,7 @@ grev6_setup() {
 	local remoteip6
 
 	local ip6addr peer6addr weakif
-	json_get_vars ip6addr peer6addr tunlink weakif
+	json_get_vars ip6addr peer6addr tunlink weakif encaplimit
 
 	[ -z "$peer6addr" ] && {
 		proto_notify_error "$cfg" "MISSING_PEER_ADDRESS"
@@ -274,6 +275,7 @@ proto_grev6_init_config() {
 	proto_config_add_string "ip6addr"
 	proto_config_add_string "peer6addr"
 	proto_config_add_string "weakif"
+	proto_config_add_string "encaplimit"
 }
 
 proto_grev6tap_init_config() {
-- 
cgit v1.2.3