Re: [OpenWrt-Devel] [PATCH 2/3] netifd: add xfrm interface support scripts

2019-06-06 Thread Andre Valentin
Hello Hans!

Am 06.06.19 um 22:40 schrieb Hans Dedecker:
> Hi,
> 
> Comments inline
Thanks for your hints. I will provide an updates version.

André



smime.p7s
Description: S/MIME Cryptographic Signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH 2/3] netifd: add xfrm interface support scripts

2019-06-06 Thread Hans Dedecker
Hi,

Comments inline

Hans

On Thu, Jun 6, 2019 at 3:52 PM André Valentin  wrote:
>
> This package adds scripts for xfrm interfaces support.
> Example configuration via /etc/config/network:
>
> config interface 'xfrm0'
> option proto 'xfrm'
> option mtu '1300'
> option zone 'VPN'
> option tunlink 'wan'
> option ifid 30
>
> config interface 'xfrm0_static'
> option proto 'static'
> option ifname '@xfrm0'
> option ip6addr 'fe80::1/64'
> option ipaddr '10.0.0.1/30'
>
>
> ---
>  package/network/config/xfrm/Makefile  | 44 +
>  package/network/config/xfrm/files/xfrm.sh | 54 
> +++
>  2 files changed, 98 insertions(+)
>  create mode 100644 package/network/config/xfrm/Makefile
>  create mode 100755 package/network/config/xfrm/files/xfrm.sh
>
> diff --git a/package/network/config/xfrm/Makefile 
> b/package/network/config/xfrm/Makefile
> new file mode 100644
> index 00..943a4ba326
> --- /dev/null
> +++ b/package/network/config/xfrm/Makefile
> @@ -0,0 +1,44 @@
> +#
> +# Copyright (C) 2014 OpenWrt.org
> +#
> +# This is free software, licensed under the GNU General Public License v2.
> +# See /LICENSE for more information.
> +#
Please leave the Copyright header out as I don't think you have any
contractual agreement with OpenWrt
> +
> +include $(TOPDIR)/rules.mk
> +
> +PKG_NAME:=xfrm
> +PKG_VERSION:=1
> +PKG_RELEASE:=3
Why is PKG_RELEASE set to 3 ?
> +PKG_LICENSE:=GPL-2.0
> +
> +include $(INCLUDE_DIR)/package.mk
> +
> +define Package/xfrm/Default
> +  SECTION:=net
> +  CATEGORY:=Network
> +  MAINTAINER:=Andre Valentin 
> +endef
> +
> +define Package/xfrm
> +$(call Package/xfrm/Default)
> +  TITLE:=XFRM IPsec Tunnel Interface config support
> +  DEPENDS:=+kmod-xfrm-interface
> +endef
> +
> +define Package/xfrm/description
> + XFRM IPsec Tunnel Interface config support (IPv4 and IPv6) in 
> /etc/config/network.
> +endef
> +
> +define Build/Compile
> +endef
> +
> +define Build/Configure
> +endef
> +
> +define Package/xfrm/install
> +   $(INSTALL_DIR) $(1)/lib/netifd/proto
> +   $(INSTALL_BIN) ./files/xfrm.sh $(1)/lib/netifd/proto/xfrm.sh
> +endef
> +
> +$(eval $(call BuildPackage,xfrm))
> diff --git a/package/network/config/xfrm/files/xfrm.sh 
> b/package/network/config/xfrm/files/xfrm.sh
> new file mode 100755
> index 00..b93e090e90
> --- /dev/null
> +++ b/package/network/config/xfrm/files/xfrm.sh
> @@ -0,0 +1,54 @@
> +#!/bin/sh
> +
> +[ -n "$INCLUDE_ONLY" ] || {
> +   . /lib/functions.sh
> +   . /lib/functions/network.sh
> +   . ../netifd-proto.sh
> +   init_proto "$@"
> +}
> +
> +proto_xfrm_setup() {
> +   local cfg="$1"
> +   local mode="xfrm"
> +
> +   local df tunlink ifid mtu zone
> +   json_get_vars df tunlink ifid mtu zone
> +
> +   proto_init_update "$cfg" 1
> +
> +   proto_add_tunnel
> +   json_add_string mode "$mode"
> +   json_add_int mtu "${mtu:-1280}"
> +   [ -n "$tunlink" ] && json_add_string link "$tunlink"
> +
> +   json_add_object 'data'
> +   [ -n "$ifid" ] && json_add_int ifid "$ifid"
> +   json_close_object
> +
> +   proto_close_tunnel
> +
> +   proto_add_data
> +   [ -n "$zone" ] && json_add_string zone "$zone"
> +   proto_close_data
> +
> +   proto_send_update "$cfg"
> +}
> +
> +proto_xfrm_teardown() {
> +   local cfg="$1"
> +}
> +
> +proto_xfrm_init_config() {
> +   no_device=1
> +   available=1
> +
> +   proto_config_add_int "mtu"
> +   proto_config_add_string "tunlink"
> +   proto_config_add_string "zone"
> +   proto_config_add_int "ifid"
> +}
> +
> +
> +[ -n "$INCLUDE_ONLY" ] || {
> +   [ -f /lib/modules/$(uname -r)/xfrm_interface.ko -o -d 
> /sys/module/xfrm_interface ] && add_protocol xfrm
> +}
> --
> 2.11.0
>
>
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 2/3] netifd: add xfrm interface support scripts

2019-06-06 Thread André Valentin
This package adds scripts for xfrm interfaces support.
Example configuration via /etc/config/network:

config interface 'xfrm0'
option proto 'xfrm'
option mtu '1300'
option zone 'VPN'
option tunlink 'wan'
option ifid 30

config interface 'xfrm0_static'
option proto 'static'
option ifname '@xfrm0'
option ip6addr 'fe80::1/64'
option ipaddr '10.0.0.1/30'


---
 package/network/config/xfrm/Makefile  | 44 +
 package/network/config/xfrm/files/xfrm.sh | 54 +++
 2 files changed, 98 insertions(+)
 create mode 100644 package/network/config/xfrm/Makefile
 create mode 100755 package/network/config/xfrm/files/xfrm.sh

diff --git a/package/network/config/xfrm/Makefile 
b/package/network/config/xfrm/Makefile
new file mode 100644
index 00..943a4ba326
--- /dev/null
+++ b/package/network/config/xfrm/Makefile
@@ -0,0 +1,44 @@
+#
+# Copyright (C) 2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=xfrm
+PKG_VERSION:=1
+PKG_RELEASE:=3
+PKG_LICENSE:=GPL-2.0
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/xfrm/Default
+  SECTION:=net
+  CATEGORY:=Network
+  MAINTAINER:=Andre Valentin 
+endef
+
+define Package/xfrm
+$(call Package/xfrm/Default)
+  TITLE:=XFRM IPsec Tunnel Interface config support
+  DEPENDS:=+kmod-xfrm-interface
+endef
+
+define Package/xfrm/description
+ XFRM IPsec Tunnel Interface config support (IPv4 and IPv6) in 
/etc/config/network.
+endef
+
+define Build/Compile
+endef
+
+define Build/Configure
+endef
+
+define Package/xfrm/install
+   $(INSTALL_DIR) $(1)/lib/netifd/proto
+   $(INSTALL_BIN) ./files/xfrm.sh $(1)/lib/netifd/proto/xfrm.sh
+endef
+
+$(eval $(call BuildPackage,xfrm))
diff --git a/package/network/config/xfrm/files/xfrm.sh 
b/package/network/config/xfrm/files/xfrm.sh
new file mode 100755
index 00..b93e090e90
--- /dev/null
+++ b/package/network/config/xfrm/files/xfrm.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+[ -n "$INCLUDE_ONLY" ] || {
+   . /lib/functions.sh
+   . /lib/functions/network.sh
+   . ../netifd-proto.sh
+   init_proto "$@"
+}
+
+proto_xfrm_setup() {
+   local cfg="$1"
+   local mode="xfrm"
+
+   local df tunlink ifid mtu zone
+   json_get_vars df tunlink ifid mtu zone
+
+   proto_init_update "$cfg" 1
+
+   proto_add_tunnel
+   json_add_string mode "$mode"
+   json_add_int mtu "${mtu:-1280}"
+   [ -n "$tunlink" ] && json_add_string link "$tunlink"
+
+   json_add_object 'data'
+   [ -n "$ifid" ] && json_add_int ifid "$ifid"
+   json_close_object
+
+   proto_close_tunnel
+
+   proto_add_data
+   [ -n "$zone" ] && json_add_string zone "$zone"
+   proto_close_data
+
+   proto_send_update "$cfg"
+}
+
+proto_xfrm_teardown() {
+   local cfg="$1"
+}
+
+proto_xfrm_init_config() {
+   no_device=1
+   available=1
+
+   proto_config_add_int "mtu"
+   proto_config_add_string "tunlink"
+   proto_config_add_string "zone"
+   proto_config_add_int "ifid"
+}
+
+
+[ -n "$INCLUDE_ONLY" ] || {
+   [ -f /lib/modules/$(uname -r)/xfrm_interface.ko -o -d 
/sys/module/xfrm_interface ] && add_protocol xfrm
+}
-- 
2.11.0


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel