From d5b3a171b86bb807320cadd4e67730f91359c562 Mon Sep 17 00:00:00 2001 From: Mislav Novakovic Date: Thu, 20 Sep 2018 17:20:27 +0200 Subject: [PATCH] Netopeer2: update to 0.6-r1 PR includes switch to codeload tarballs and rename from netopeer2 to Netopeer2 for better codeload integration. Signed-off-by: Mislav Novakovic --- .../Config_keystored.in | 0 net/{netopeer2 => Netopeer2}/Makefile | 56 +++++++++---------- .../files/netopeer2-keystored-keygen.default | 10 ++-- .../files/netopeer2-keystored.default | 2 +- .../files/netopeer2-server.default | 12 +++- net/Netopeer2/files/netopeer2-server.init | 21 +++++++ .../files/stock_config.xml | 0 .../patches/001-fix-for-cmake-build | 22 ++++---- .../patches/002-fix-keystored-cross-compile | 18 ++++++ net/netopeer2/files/netopeer2-server.init | 47 ---------------- 10 files changed, 94 insertions(+), 94 deletions(-) rename net/{netopeer2 => Netopeer2}/Config_keystored.in (100%) rename net/{netopeer2 => Netopeer2}/Makefile (60%) rename net/{netopeer2 => Netopeer2}/files/netopeer2-keystored-keygen.default (53%) rename net/{netopeer2 => Netopeer2}/files/netopeer2-keystored.default (80%) rename net/{netopeer2 => Netopeer2}/files/netopeer2-server.default (80%) create mode 100644 net/Netopeer2/files/netopeer2-server.init rename net/{netopeer2 => Netopeer2}/files/stock_config.xml (100%) rename net/{netopeer2 => Netopeer2}/patches/001-fix-for-cmake-build (78%) create mode 100644 net/Netopeer2/patches/002-fix-keystored-cross-compile delete mode 100644 net/netopeer2/files/netopeer2-server.init diff --git a/net/netopeer2/Config_keystored.in b/net/Netopeer2/Config_keystored.in similarity index 100% rename from net/netopeer2/Config_keystored.in rename to net/Netopeer2/Config_keystored.in diff --git a/net/netopeer2/Makefile b/net/Netopeer2/Makefile similarity index 60% rename from net/netopeer2/Makefile rename to net/Netopeer2/Makefile index 09668f0f2..81c21cd93 100644 --- a/net/netopeer2/Makefile +++ b/net/Netopeer2/Makefile @@ -9,28 +9,21 @@ include $(TOPDIR)/rules.mk -PKG_NAME:=netopeer2 +PKG_NAME:=Netopeer2 +PKG_VERSION:=0.6-r1 PKG_LICENSE:=BSD-3-Clause PKG_MAINTAINER:=Mislav Novakovic -PKG_VERSION:=0.5.26 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/CESNET/Netopeer2/tar.gz/v$(PKG_VERSION)? +PKG_HASH:=5f38db43f6021e389cf1f3c5c70e432586d8ba7f2d64ed5bd2bea8c7ea6b39e6 -PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=3b99e99c9d507ddc89d21d7f1cbded494e6aa72e -PKG_MIRROR_HASH:=d29b501d56bf9a2480759cc55368c842f69b07722afb3a0a70f05d6088f72574 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz -PKG_SOURCE_URL:=https://github.com/CESNET/Netopeer2.git -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION) - -PKG_BUILD_ROOT:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR) -PKG_BUILD_DIR:=$(PKG_BUILD_ROOT) +CMAKE_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 -CMAKE_INSTALL:=1 - include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk @@ -60,7 +53,7 @@ define Package/netopeer2-keystored CATEGORY:=Utilities TITLE:=Netopeer2 key store management URL:=$(PKG_SOURCE_URL) - DEPENDS:=+libopenssl +libsysrepo +sysrepo +sysrepocfg +sysrepoctl +SSH_KEYS:openssh-keygen +SSH_KEYS:openssl-util + DEPENDS:=+libopenssl +libsysrepo +sysrepo +sysrepocfg +sysrepoctl +SSH_KEYS:openssh-keygen MENU:=1 endef @@ -74,24 +67,29 @@ endef CMAKE_OPTIONS += \ -DCMAKE_INSTALL_PREFIX:PATH=/usr \ -DCMAKE_BUILD_TYPE:STRING=Release \ - -DKEYSTORED_KEYS_DIR:STRING=/etc/keystored/keys + -DKEYSTORED_KEYS_DIR:STRING=/etc/keystored/keys \ + -DENABLE_CONFIGURATION:BOOL=OFF \ + -DMODEL_INSTALL:BOOL=OFF \ + -DSSH_KEY_INSTALL:BOOL=OFF define Package/netopeer2-server/install $(INSTALL_DIR) $(1)/bin - $(INSTALL_BIN) $(PKG_BUILD_ROOT)/server/netopeer2-server $(1)/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/server/netopeer2-server $(1)/bin/ $(INSTALL_DIR) $(1)/etc/sysrepo/yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-ssh-server.yang $(1)/etc/sysrepo/yang/ietf-ssh-server@2016-11-02.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-tls-server.yang $(1)/etc/sysrepo/yang/ietf-tls-server@2016-11-02.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/iana-crypt-hash.yang $(1)/etc/sysrepo/yang/iana-crypt-hash@2014-08-06.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-x509-cert-to-name.yang $(1)/etc/sysrepo/yang/ietf-x509-cert-to-name@2014-12-10.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-netconf-server.yang $(1)/etc/sysrepo/yang/ietf-netconf-server@2016-11-02.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-netconf-monitoring.yang $(1)/etc/sysrepo/yang/ietf-netconf-monitoring@2010-10-04.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-netconf-with-defaults.yang $(1)/etc/sysrepo/yang/ietf-netconf-with-defaults@2011-06-01.yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-system.yang $(1)/etc/sysrepo/yang/ietf-system@2014-08-06.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-ssh-server.yang $(1)/etc/sysrepo/yang/ietf-ssh-server@2016-11-02.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-tls-server.yang $(1)/etc/sysrepo/yang/ietf-tls-server@2016-11-02.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/iana-crypt-hash.yang $(1)/etc/sysrepo/yang/iana-crypt-hash@2014-08-06.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-x509-cert-to-name.yang $(1)/etc/sysrepo/yang/ietf-x509-cert-to-name@2014-12-10.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-netconf-server.yang $(1)/etc/sysrepo/yang/ietf-netconf-server@2016-11-02.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-netconf-monitoring.yang $(1)/etc/sysrepo/yang/ietf-netconf-monitoring@2010-10-04.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-netconf-with-defaults.yang $(1)/etc/sysrepo/yang/ietf-netconf-with-defaults@2011-06-01.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-system.yang $(1)/etc/sysrepo/yang/ietf-system@2014-08-06.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-datastores.yang $(1)/etc/sysrepo/yang/ietf-datastores@2017-08-17.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-yang-library.yang $(1)/etc/sysrepo/yang/ietf-yang-library@2018-01-17.yang $(INSTALL_DIR) $(1)/etc/uci-defaults - $(INSTALL_BIN) ./files/netopeer2-server.default $(1)/etc/uci-defaults/99_netopeer2-server + $(INSTALL_BIN) ./files/netopeer2-server.default $(1)/etc/uci-defaults/98_netopeer2-server $(INSTALL_DIR) $(1)/etc/init.d/ $(INSTALL_BIN) ./files/netopeer2-server.init $(1)/etc/init.d/netopeer2-server @@ -102,15 +100,15 @@ endef define Package/netopeer2-cli/install $(INSTALL_DIR) $(1)/bin - $(INSTALL_BIN) $(PKG_BUILD_ROOT)/cli/netopeer2-cli $(1)/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/cli/netopeer2-cli $(1)/bin/ endef define Package/netopeer2-keystored/install $(INSTALL_DIR) $(1)/usr/lib/sysrepo/plugins/ - $(INSTALL_BIN) $(PKG_BUILD_ROOT)/keystored/libkeystored.so $(1)/usr/lib/sysrepo/plugins/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/keystored/libkeystored.so $(1)/usr/lib/sysrepo/plugins/ $(INSTALL_DIR) $(1)/etc/sysrepo/yang - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/modules/ietf-keystore.yang $(1)/etc/sysrepo/yang/ietf-keystore@2016-10-31.yang + $(INSTALL_DATA) $(PKG_BUILD_DIR)/modules/ietf-keystore.yang $(1)/etc/sysrepo/yang/ietf-keystore@2016-10-31.yang $(INSTALL_DIR) $(1)/etc/uci-defaults @@ -125,7 +123,7 @@ else endif $(INSTALL_DIR) $(1)/usr/share/netopeer2-keystored - $(INSTALL_DATA) $(PKG_BUILD_ROOT)/keystored/stock_key_config.xml $(1)/usr/share/netopeer2-keystored + $(INSTALL_DATA) $(PKG_BUILD_DIR)/keystored/stock_key_config.xml $(1)/usr/share/netopeer2-keystored endef $(eval $(call BuildPackage,netopeer2-server)) diff --git a/net/netopeer2/files/netopeer2-keystored-keygen.default b/net/Netopeer2/files/netopeer2-keystored-keygen.default similarity index 53% rename from net/netopeer2/files/netopeer2-keystored-keygen.default rename to net/Netopeer2/files/netopeer2-keystored-keygen.default index df28081c7..30e06a13d 100644 --- a/net/netopeer2/files/netopeer2-keystored-keygen.default +++ b/net/Netopeer2/files/netopeer2-keystored-keygen.default @@ -7,15 +7,15 @@ if [ -x /bin/sysrepoctl ]; then if [ ! "$match" ]; then sysrepoctl --install --yang=/etc/sysrepo/yang/ietf-keystore@2016-10-31.yang -o root:root -p 600 if [ -x /bin/sysrepocfg ]; then - sysrepocfg -d startup -i /usr/share/netopeer2-keystored/stock_key_config.xml ietf-keystore + sysrepocfg -f xml -d startup -i /usr/share/netopeer2-keystored/stock_key_config.xml ietf-keystore rm /usr/share/netopeer2-keystored/stock_key_config.xml fi #generate ssh keys - ssh-keygen -t rsa -f /tmp/ssh_host_rsa_key -N "" - openssl rsa -in /tmp/ssh_host_rsa_key -outform pem > /etc/keystored/keys/ssh_host_rsa_key.pem - openssl rsa -pubout -in /etc/keystored/keys/ssh_host_rsa_key.pem -out /etc/keystored/keys/ssh_host_rsa_key.pub.pem - rm /tmp/ssh_host_rsa_key + if [ ! -f "/etc/keystored/keys/ssh_host_rsa_key.pem" ]; then + ssh-keygen -m pem -t rsa -q -N "" -f /etc/keystored/keys/ssh_host_rsa_key.pem + chmod go-rw /etc/keystored/keys/ssh_host_rsa_key.pem + fi fi fi diff --git a/net/netopeer2/files/netopeer2-keystored.default b/net/Netopeer2/files/netopeer2-keystored.default similarity index 80% rename from net/netopeer2/files/netopeer2-keystored.default rename to net/Netopeer2/files/netopeer2-keystored.default index dda6f4517..5257e5348 100644 --- a/net/netopeer2/files/netopeer2-keystored.default +++ b/net/Netopeer2/files/netopeer2-keystored.default @@ -7,7 +7,7 @@ if [ -x /bin/sysrepoctl ]; then if [ ! "$match" ]; then sysrepoctl --install --yang=/etc/sysrepo/yang/ietf-keystore@2016-10-31.yang -o root:root -p 600 if [ -x /bin/sysrepocfg ]; then - sysrepocfg -d startup -i /usr/share/netopeer2-keystored/stock_key_config.xml ietf-keystore + sysrepocfg -f xml -d startup -i /usr/share/netopeer2-keystored/stock_key_config.xml ietf-keystore rm /usr/share/netopeer2-keystored/stock_key_config.xml fi fi diff --git a/net/netopeer2/files/netopeer2-server.default b/net/Netopeer2/files/netopeer2-server.default similarity index 80% rename from net/netopeer2/files/netopeer2-server.default rename to net/Netopeer2/files/netopeer2-server.default index a93127036..1cabba798 100644 --- a/net/netopeer2/files/netopeer2-server.default +++ b/net/Netopeer2/files/netopeer2-server.default @@ -29,7 +29,7 @@ if [ -x /bin/sysrepoctl ]; then sysrepoctl -m ietf-netconf-server -e listen sysrepoctl -m ietf-netconf-server -e ssh-listen if [ -x /bin/sysrepocfg ]; then - sysrepocfg -d startup -i /usr/share/netopeer2-server/stock_config.xml ietf-netconf-server + sysrepocfg -f xml -d startup -i /usr/share/netopeer2-server/stock_config.xml ietf-netconf-server rm /usr/share/netopeer2-server/stock_config.xml fi fi @@ -50,6 +50,16 @@ if [ -x /bin/sysrepoctl ]; then sysrepoctl -m ietf-system -e authentication sysrepoctl -m ietf-system -e local-users fi + + match=$(sysrepoctl -l | grep "ietf-datastores ") + if [ ! "$match" ]; then + sysrepoctl --install --yang=/etc/sysrepo/yang/ietf-datastores@2017-08-17.yang -o root:root -p 600 + fi + + match=$(sysrepoctl -l | grep "ietf-yang-library ") + if [ ! "$match" ]; then + sysrepoctl --install --yang=/etc/sysrepo/yang/ietf-yang-library@2018-01-17.yang -o root:root -p 600 + fi fi exit 0 diff --git a/net/Netopeer2/files/netopeer2-server.init b/net/Netopeer2/files/netopeer2-server.init new file mode 100644 index 000000000..6b2c133b3 --- /dev/null +++ b/net/Netopeer2/files/netopeer2-server.init @@ -0,0 +1,21 @@ +#!/bin/sh /etc/rc.common + +START=99 +STOP=11 + +USE_PROCD=1 +PROG=/bin/netopeer2-server + +start_service() { + procd_open_instance + procd_set_param command $PROG + procd_append_param command -d -v 0 + procd_set_param respawn + procd_close_instance +} + +stop_service() +{ + service_stop ${PROG} + rm /var/run/netopeer2-server.pid +} diff --git a/net/netopeer2/files/stock_config.xml b/net/Netopeer2/files/stock_config.xml similarity index 100% rename from net/netopeer2/files/stock_config.xml rename to net/Netopeer2/files/stock_config.xml diff --git a/net/netopeer2/patches/001-fix-for-cmake-build b/net/Netopeer2/patches/001-fix-for-cmake-build similarity index 78% rename from net/netopeer2/patches/001-fix-for-cmake-build rename to net/Netopeer2/patches/001-fix-for-cmake-build index 920086a7c..dad54a440 100644 --- a/net/netopeer2/patches/001-fix-for-cmake-build +++ b/net/Netopeer2/patches/001-fix-for-cmake-build @@ -1,17 +1,17 @@ -Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/CMakeLists.txt +Index: Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/CMakeLists.txt =================================================================== --- /dev/null -+++ netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/CMakeLists.txt ++++ Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 2.6) + +add_subdirectory(server) +add_subdirectory(cli) +add_subdirectory(keystored) -Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/cli/CMakeLists.txt +Index: Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/cli/CMakeLists.txt =================================================================== ---- netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/cli/CMakeLists.txt -+++ netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/cli/CMakeLists.txt +--- Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/cli/CMakeLists.txt ++++ Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/cli/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 2.6) @@ -30,10 +30,10 @@ Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/cli/CMakeLists. COMMAND make clean COMMAND find . -iname '*cmake*' -not -name CMakeLists.txt -exec rm -rf {} + COMMAND rm -rf Makefile Doxyfile -Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/keystored/CMakeLists.txt +Index: Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/keystored/CMakeLists.txt =================================================================== ---- netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/keystored/CMakeLists.txt -+++ netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/keystored/CMakeLists.txt +--- Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/keystored/CMakeLists.txt ++++ Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/keystored/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 2.6) @@ -52,10 +52,10 @@ Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/keystored/CMake scripts/model-install.sh scripts/ssh-key-import.sh ) -Index: netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/server/CMakeLists.txt +Index: Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/server/CMakeLists.txt =================================================================== ---- netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/server/CMakeLists.txt -+++ netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/server/CMakeLists.txt +--- Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d.orig/server/CMakeLists.txt ++++ Netopeer2-0.4.13-ae560bef2e70d274f6d028b59e3cb398ea2a621d/server/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 2.8.9) diff --git a/net/Netopeer2/patches/002-fix-keystored-cross-compile b/net/Netopeer2/patches/002-fix-keystored-cross-compile new file mode 100644 index 000000000..11301e768 --- /dev/null +++ b/net/Netopeer2/patches/002-fix-keystored-cross-compile @@ -0,0 +1,18 @@ +Index: Netopeer2-0.6-r1/keystored/CMakeLists.txt +=================================================================== +--- Netopeer2-0.6-r1.orig/keystored/CMakeLists.txt ++++ Netopeer2-0.6-r1/keystored/CMakeLists.txt +@@ -69,6 +69,8 @@ find_package(SYSREPO REQUIRED) + target_link_libraries(keystored ${SYSREPO_LIBRARIES}) + include_directories(${SYSREPO_INCLUDE_DIRS}) + ++# skip step because of cross compiling ++if (FALSE) + # get sysrepo plugins directory + if (NOT SR_PLUGINS_DIR) + if (PKG_CONFIG_FOUND) +@@ -154,3 +156,4 @@ add_custom_target(install-scripts-ide-ke + + # plugins should be installed into sysrepo plugins dir + install(TARGETS keystored DESTINATION ${SR_PLUGINS_DIR}) ++endif() diff --git a/net/netopeer2/files/netopeer2-server.init b/net/netopeer2/files/netopeer2-server.init deleted file mode 100644 index 59f769967..000000000 --- a/net/netopeer2/files/netopeer2-server.init +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh /etc/rc.common - -START=99 -STOP=11 - -USE_PROCD=1 -PROG=/bin/netopeer2-server - -start_service() { - - PERSIST_FILE=/etc/sysrepo/data/ietf-keystore.persist - - while [ ! -f $PERSIST_FILE ] - do - echo "no persist file yet" - sleep 3 - done - - RETRY_CNT=5 - LAST_LINE=$(tail -n1 $PERSIST_FILE) - - while [[ -f $PERSIST_FILE && $LAST_LINE != "" ]] - do - sleep 1 - - echo "$RETRY_CNT: $LAST_LINE" - LAST_LINE=$(tail -n1 $PERSIST_FILE) - RETRY_CNT=$(($RETRY_CNT-1)) - - if [ $RETRY_CNT -le 0 ]; - then - rm $PERSIST_FILE - RETRY_CNT=5 - fi - done - - procd_open_instance - procd_set_param command $PROG - procd_append_param command -d -v 0 - procd_set_param respawn - procd_close_instance -} - -stop_service() -{ - service_stop ${PROG} -}