diff --git a/package/network/ipv6/map/Makefile b/package/network/ipv6/map/Makefile index 77967042b38..cfb7c4ac357 100644 --- a/package/network/ipv6/map/Makefile +++ b/package/network/ipv6/map/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=map PKG_VERSION:=4 -PKG_RELEASE:=10 +PKG_RELEASE:=11 PKG_LICENSE:=GPL-2.0 include $(INCLUDE_DIR)/package.mk diff --git a/package/network/ipv6/map/files/map.sh b/package/network/ipv6/map/files/map.sh index 42050183ce6..5f4add36eb8 100755 --- a/package/network/ipv6/map/files/map.sh +++ b/package/network/ipv6/map/files/map.sh @@ -28,9 +28,9 @@ proto_map_setup() { # uncomment for legacy MAP0 mode #export LEGACY=1 - local type mtu ttl tunlink zone + local type mtu ttl tunlink zone encaplimit local rule ipaddr ip4prefixlen ip6prefix ip6prefixlen peeraddr ealen psidlen psid offset - json_get_vars type mtu ttl tunlink zone + json_get_vars type mtu ttl tunlink zone encaplimit json_get_vars rule ipaddr ip4prefixlen ip6prefix ip6prefixlen peeraddr ealen psidlen psid offset [ -z "$zone" ] && zone="wan" @@ -84,9 +84,9 @@ proto_map_setup() { json_add_string local $(eval "echo \$RULE_${k}_IPV6ADDR") json_add_string remote $(eval "echo \$RULE_${k}_BR") json_add_string link $(eval "echo \$RULE_${k}_PD6IFACE") - - if [ "$type" = "map-e" ]; then - json_add_object "data" + json_add_object "data" + json_add_string encaplimit "${encaplimit:-4}" + if [ "$type" = "map-e" ]; then json_add_array "fmrs" for i in $(seq $RULE_COUNT); do [ "$(eval "echo \$RULE_${i}_FMR")" != 1 ] && continue @@ -98,8 +98,9 @@ proto_map_setup() { json_close_object done json_close_array - json_close_object - fi + fi + json_close_object + proto_close_tunnel elif [ "$type" = "map-t" -a -f "/proc/net/nat46/control" ]; then @@ -229,6 +230,7 @@ proto_map_init_config() { proto_config_add_int "mtu" proto_config_add_int "ttl" proto_config_add_string "zone" + proto_config_add_string "encaplimit" } [ -n "$INCLUDE_ONLY" ] || {