From e1c511199715b9ef85f537fbd01f6cdfd050d433 Mon Sep 17 00:00:00 2001
From: Steven Barth <cyrus@openwrt.org>
Date: Thu, 23 Jan 2014 10:59:04 +0000
Subject: [PATCH] 6rd: Make don't fragment bit (df) a configurable variable

Make the IPv4 "do not fragment" bit a configurable variable for the 6rd
tunnel interface as the bit should not be set in the encapsulating IPv4
header according to RFC3056.
On top the config variable allows to enable/disable path mtu discovery
for tunnel interfaces.
Config variable can be passed to netifd as tunnel config support is
already present for the "do not fragment" bit.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>

SVN-Revision: 39370
---
 package/network/ipv6/6rd/files/6rd.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/package/network/ipv6/6rd/files/6rd.sh b/package/network/ipv6/6rd/files/6rd.sh
index be6d536845..e80729c341 100644
--- a/package/network/ipv6/6rd/files/6rd.sh
+++ b/package/network/ipv6/6rd/files/6rd.sh
@@ -14,8 +14,8 @@ proto_6rd_setup() {
 	local iface="$2"
 	local link="6rd-$cfg"
 
-	local mtu ttl ipaddr peeraddr ip6prefix ip6prefixlen ip4prefixlen tunlink sourcerouting
-	json_get_vars mtu ttl ipaddr peeraddr ip6prefix ip6prefixlen ip4prefixlen tunlink sourcerouting
+	local mtu df ttl ipaddr peeraddr ip6prefix ip6prefixlen ip4prefixlen tunlink sourcerouting
+	json_get_vars mtu df ttl ipaddr peeraddr ip6prefix ip6prefixlen ip4prefixlen tunlink sourcerouting
 
 	[ -z "$ip6prefix" -o -z "$peeraddr" ] && {
 		proto_notify_error "$cfg" "MISSING_ADDRESS"
@@ -60,6 +60,7 @@ proto_6rd_setup() {
 	proto_add_tunnel
 	json_add_string mode sit
 	json_add_int mtu "${mtu:-1280}"
+	json_add_boolean df "${df:-1}"
 	json_add_int ttl "${ttl:-64}"
 	json_add_string local "$ipaddr"
 	json_add_string 6rd-prefix "$ip6prefix/$ip6prefixlen"
@@ -79,6 +80,7 @@ proto_6rd_init_config() {
 	available=1
 
 	proto_config_add_int "mtu"
+	proto_config_add_boolean "df"
 	proto_config_add_int "ttl"
 	proto_config_add_string "ipaddr"
 	proto_config_add_string "peeraddr"
-- 
GitLab