package/netopeer2: add package
Netopeer2 is a set of tools implementing network configuration tools based on the NETCONF Protocol. Netopeer2 needs libnetconf2 to have SSL/TSL and SSH support, so we enable both openssl and libssh+server from netopeer2, so that libnetconf2 has appropriate support. But netopeer2 does not use either, so does not build-depend on them. Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> [yann.morin.1998@free.fr: - fix dependencies and their comments - explain openssl and libssh+server dependencies - fix codestyle in Config,in, noticed by Adam - fix codestyle in .mk ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
7f97fd4f15
commit
6335ff0857
|
@ -1090,6 +1090,7 @@ F: package/python-sip/
|
|||
N: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
F: package/libnetconf2/
|
||||
F: package/libyang/
|
||||
F: package/netopeer2/
|
||||
F: package/sysrepo/
|
||||
|
||||
N: Henrique Camargo <henrique@henriquecamargo.com>
|
||||
|
|
|
@ -1751,6 +1751,7 @@ menu "Networking"
|
|||
source "package/mongoose/Config.in"
|
||||
source "package/nanomsg/Config.in"
|
||||
source "package/neon/Config.in"
|
||||
source "package/netopeer2/Config.in"
|
||||
source "package/nghttp2/Config.in"
|
||||
source "package/norm/Config.in"
|
||||
source "package/nss-mdns/Config.in"
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
From c6afffafd1e27054ff59b82ffed3a99795814631 Mon Sep 17 00:00:00 2001
|
||||
From: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Date: Mon, 8 Jun 2020 09:47:58 +0200
|
||||
Subject: [PATCH] build BUGFIX take DESTDIR into account (#649)
|
||||
|
||||
When installing yang modules add DESTDIR prefix to the NP2_MODULE_DIR.
|
||||
|
||||
Fixes #648
|
||||
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
[patch taken from upstream:
|
||||
https://github.com/CESNET/netopeer2/commit/726b1384a3f93090ede1143da86c99d5d24d06c5]
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
---
|
||||
scripts/setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/setup.sh b/scripts/setup.sh
|
||||
index 7175bc4..81abf63 100755
|
||||
--- a/scripts/setup.sh
|
||||
+++ b/scripts/setup.sh
|
||||
@@ -8,7 +8,7 @@ fi
|
||||
|
||||
# avoid problems with sudo path
|
||||
SYSREPOCTL=`su -c "which sysrepoctl" $USER`
|
||||
-MODDIR=${NP2_MODULE_DIR}
|
||||
+MODDIR=${DESTDIR}${NP2_MODULE_DIR}
|
||||
PERMS=${NP2_MODULE_PERMS}
|
||||
OWNER=${NP2_MODULE_OWNER}
|
||||
GROUP=${NP2_MODULE_GROUP}
|
||||
--
|
||||
2.20.1
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
From 71cc996faa5500b3bfd499ad0c436c8b96629ea7 Mon Sep 17 00:00:00 2001
|
||||
From: Michal Vasko <mvasko@cesnet.cz>
|
||||
Date: Wed, 10 Jun 2020 15:20:23 +0200
|
||||
Subject: [PATCH] scripts CHANGE use su only for effective root
|
||||
|
||||
Fixes #645
|
||||
|
||||
[patch taken from upstream:
|
||||
https://github.com/CESNET/netopeer2/commit/2161b333009c21ffc8501e5127b82e6f0570ca8e]
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
---
|
||||
scripts/merge_config.sh | 8 ++++++--
|
||||
scripts/merge_hostkey.sh | 11 ++++++++---
|
||||
scripts/setup.sh | 8 ++++++--
|
||||
3 files changed, 20 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/scripts/merge_config.sh b/scripts/merge_config.sh
|
||||
index dde0c75..4ad151c 100755
|
||||
--- a/scripts/merge_config.sh
|
||||
+++ b/scripts/merge_config.sh
|
||||
@@ -2,8 +2,12 @@
|
||||
|
||||
set -e
|
||||
|
||||
-# avoid problems with sudo path
|
||||
-SYSREPOCFG=`su -c "which sysrepocfg" $USER`
|
||||
+# avoid problems with sudo PATH
|
||||
+if [ `id -u` -eq 0 ]; then
|
||||
+ SYSREPOCFG=`su -c 'which sysrepocfg' -l $USER`
|
||||
+else
|
||||
+ SYSREPOCFG=`which sysrepocfg`
|
||||
+fi
|
||||
KS_KEY_NAME=genkey
|
||||
|
||||
# check that there is no listen/Call Home configuration yet
|
||||
diff --git a/scripts/merge_hostkey.sh b/scripts/merge_hostkey.sh
|
||||
index 87947fa..a0677ee 100755
|
||||
--- a/scripts/merge_hostkey.sh
|
||||
+++ b/scripts/merge_hostkey.sh
|
||||
@@ -2,9 +2,14 @@
|
||||
|
||||
set -e
|
||||
|
||||
-# avoid problems with sudo path
|
||||
-SYSREPOCFG=`su -c "which sysrepocfg" $USER`
|
||||
-OPENSSL=`su -c "which openssl" $USER`
|
||||
+# avoid problems with sudo PATH
|
||||
+if [ `id -u` -eq 0 ]; then
|
||||
+ SYSREPOCFG=`su -c 'which sysrepocfg' -l $USER`
|
||||
+ OPENSSL=`su -c 'which openssl' -l $USER`
|
||||
+else
|
||||
+ SYSREPOCFG=`which sysrepocfg`
|
||||
+ OPENSSL=`which openssl`
|
||||
+fi
|
||||
|
||||
# check that there is no SSH key with this name yet
|
||||
KEYSTORE_KEY=`$SYSREPOCFG -X -x "/ietf-keystore:keystore/asymmetric-keys/asymmetric-key[name='genkey']/name"`
|
||||
diff --git a/scripts/setup.sh b/scripts/setup.sh
|
||||
index 81abf63..8bf6825 100755
|
||||
--- a/scripts/setup.sh
|
||||
+++ b/scripts/setup.sh
|
||||
@@ -6,8 +6,12 @@ if [ -z "$NP2_MODULE_DIR" -o -z "$NP2_MODULE_PERMS" -o -z "$NP2_MODULE_OWNER" -o
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-# avoid problems with sudo path
|
||||
-SYSREPOCTL=`su -c "which sysrepoctl" $USER`
|
||||
+# avoid problems with sudo PATH
|
||||
+if [ `id -u` -eq 0 ]; then
|
||||
+ SYSREPOCTL=`su -c 'which sysrepoctl' -l $USER`
|
||||
+else
|
||||
+ SYSREPOCTL=`which sysrepoctl`
|
||||
+fi
|
||||
MODDIR=${DESTDIR}${NP2_MODULE_DIR}
|
||||
PERMS=${NP2_MODULE_PERMS}
|
||||
OWNER=${NP2_MODULE_OWNER}
|
||||
--
|
||||
2.20.1
|
||||
|
34
package/netopeer2/Config.in
Normal file
34
package/netopeer2/Config.in
Normal file
|
@ -0,0 +1,34 @@
|
|||
comment "netopeer2 needs a toolchain w/ gcc >= 4.8, C++, threads, dynamic library"
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP \
|
||||
|| !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
|
||||
config BR2_PACKAGE_NETOPEER2
|
||||
bool "netopeer2"
|
||||
depends on BR2_USE_MMU # libnetconf2, libssh, sysrepo
|
||||
depends on !BR2_STATIC_LIBS # libnetconf2, libssh, libyang, sysrepo
|
||||
depends on BR2_INSTALL_LIBSTDCPP # sysrepo
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # sysrepo
|
||||
select BR2_PACKAGE_LIBNETCONF2
|
||||
select BR2_PACKAGE_LIBSSH
|
||||
select BR2_PACKAGE_LIBSSH_SERVER # For libnetconf2 to have SSH
|
||||
select BR2_PACKAGE_LIBYANG
|
||||
select BR2_PACKAGE_OPENSSL # For libnetconf2 to have TLS
|
||||
select BR2_PACKAGE_SYSREPO
|
||||
help
|
||||
Netopeer2 is a set of tools implementing network configuration
|
||||
tools based on the NETCONF Protocol.
|
||||
|
||||
This is the server part.
|
||||
|
||||
https://github.com/CESNET/Netopeer2
|
||||
|
||||
if BR2_PACKAGE_NETOPEER2
|
||||
|
||||
config BR2_PACKAGE_NETOPEER2_CLI
|
||||
bool "cli"
|
||||
help
|
||||
Enable netopeer2 CLI.
|
||||
|
||||
endif
|
50
package/netopeer2/S52netopeer2
Normal file
50
package/netopeer2/S52netopeer2
Normal file
|
@ -0,0 +1,50 @@
|
|||
#!/bin/sh
|
||||
|
||||
DAEMON="netopeer2-server"
|
||||
PIDFILE="/var/run/$DAEMON.pid"
|
||||
|
||||
NETOPEER2_SERVER_ARGS=""
|
||||
|
||||
start() {
|
||||
printf 'Starting %s: ' "$DAEMON"
|
||||
|
||||
start-stop-daemon -S -b -q -p $PIDFILE -x "/usr/bin/$DAEMON" \
|
||||
-- $NETOPEER2_SERVER_ARGS
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
stop() {
|
||||
printf 'Stopping %s: ' "$DAEMON"
|
||||
start-stop-daemon -K -q -p $PIDFILE
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
restart() {
|
||||
stop
|
||||
sleep 1
|
||||
start
|
||||
}
|
||||
|
||||
reload() {
|
||||
# we do not support real reload .. just restart
|
||||
restart
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start|stop|restart|reload)
|
||||
"$1";;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|reload}"
|
||||
esac
|
3
package/netopeer2/netopeer2.hash
Normal file
3
package/netopeer2/netopeer2.hash
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Locally calculated
|
||||
sha256 66f3ad68cc6e41f3231b090ef27016ccbfe007cda7d08ec19f409f7429f46ff9 netopeer2-1.1.34.tar.gz
|
||||
sha256 b46f161fbdcf127d3ef22602e15958c3092fe3294f71a2dc8cdf8f6689cba95b LICENSE
|
21
package/netopeer2/netopeer2.mk
Normal file
21
package/netopeer2/netopeer2.mk
Normal file
|
@ -0,0 +1,21 @@
|
|||
################################################################################
|
||||
#
|
||||
# netopeer2
|
||||
#
|
||||
################################################################################
|
||||
|
||||
NETOPEER2_VERSION = 1.1.34
|
||||
NETOPEER2_SITE = $(call github,CESNET,Netopeer2,v$(NETOPEER2_VERSION))
|
||||
NETOPEER2_DL_SUBDIR = netopeer2
|
||||
NETOPEER2_LICENSE = BSD-3-Clause
|
||||
NETOPEER2_LICENSE_FILES = LICENSE
|
||||
NETOPEER2_DEPENDENCIES = libnetconf2 libyang sysrepo
|
||||
|
||||
NETOPEER2_CONF_OPTS = -DBUILD_CLI=$(if $(BR2_PACKAGE_NETOPEER2_CLI),ON,OFF)
|
||||
|
||||
define NETOPEER2_INSTALL_INIT_SYSV
|
||||
$(INSTALL) -m 755 -D package/netopeer2/S52netopeer2 \
|
||||
$(TARGET_DIR)/etc/init.d/S52netopeer2
|
||||
endef
|
||||
|
||||
$(eval $(cmake-package))
|
Loading…
Reference in a new issue