meta-openembedded and poky: subtree updates

Squash of the following due to dependencies among them
and OpenBMC changes:

meta-openembedded: subtree update:d0748372d2..9201611135
meta-openembedded: subtree update:9201611135..17fd382f34
poky: subtree update:9052e5b32a..2e11d97b6c
poky: subtree update:2e11d97b6c..a8544811d7

The change log was too large for the jenkins plugin
to handle therefore it has been removed. Here is
the first and last commit of each subtree:

meta-openembedded:d0748372d2
      cppzmq: bump to version 4.6.0
meta-openembedded:17fd382f34
      mpv: Remove X11 dependency
poky:9052e5b32a
      package_ipk: Remove pointless comment to trigger rebuild
poky:a8544811d7
      pbzip2: Fix license warning

Change-Id: If0fc6c37629642ee207a4ca2f7aa501a2c673cd6
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_git.bb
index 71368c1..2820f9f 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_git.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_git.bb
@@ -2,10 +2,10 @@
 HOMEPAGE = "https://github.com/civetweb/civetweb"
 
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6f28fdcba0dda735eed62bac6a397562"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=50bd1d7f135b50d7e218996ba28d0d88"
 
-SRCREV = "6423faea4800f6cd4055750a7af2da85cdbe4e96"
-PV = "1.11+git${SRCPV}"
+SRCREV = "4b440a339979852d5a51fb11a822952712231c23"
+PV = "1.12+git${SRCPV}"
 SRC_URI = "git://github.com/civetweb/civetweb.git \
            file://0001-Unittest-Link-librt-and-libm-using-l-option.patch \
            "
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/crda-4.14-python-3.patch b/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/crda-4.14-python-3.patch
new file mode 100644
index 0000000..9125d0a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/crda-4.14-python-3.patch
@@ -0,0 +1,101 @@
+Imported from Gentoo
+https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c50acec16bc7c33d6dc122c007d713e7fbecf9c
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/utils/key2pub.py
++++ b/utils/key2pub.py
+@@ -1,22 +1,22 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
+ 
+ import sys
+ try:
+        from M2Crypto import RSA
+-except ImportError, e:
++except ImportError as e:
+        sys.stderr.write('ERROR: Failed to import the "M2Crypto" module: %s\n' % e.message)
+        sys.stderr.write('Please install the "M2Crypto" Python module.\n')
+        sys.stderr.write('On Debian GNU/Linux the package is called "python-m2crypto".\n')
+        sys.exit(1)
+ 
+ def print_ssl_64(output, name, val):
+-    while val[0] == '\0':
++    while val[0:1] == b'\0':
+         val = val[1:]
+     while len(val) % 8:
+-        val = '\0' + val
++        val = b'\0' + val
+     vnew = []
+     while len(val):
+-        vnew.append((val[0], val[1], val[2], val[3], val[4], val[5], val[6], val[7]))
++        vnew.append((val[0:1], val[1:2], val[2:3], val[3:4], val[4:5], val[5:6], val[6:7], val[7:8]))
+         val = val[8:]
+     vnew.reverse()
+     output.write('static BN_ULONG %s[%d] = {\n' % (name, len(vnew)))
+@@ -34,13 +34,13 @@ def print_ssl_64(output, name, val):
+     output.write('};\n\n')
+ 
+ def print_ssl_32(output, name, val):
+-    while val[0] == '\0':
++    while val[0:1] == b'\0':
+         val = val[1:]
+     while len(val) % 4:
+-        val = '\0' + val
++        val = b'\0' + val
+     vnew = []
+     while len(val):
+-        vnew.append((val[0], val[1], val[2], val[3], ))
++        vnew.append((val[0:1], val[1:2], val[2:3], val[3:4]))
+         val = val[4:]
+     vnew.reverse()
+     output.write('static BN_ULONG %s[%d] = {\n' % (name, len(vnew)))
+@@ -81,21 +81,21 @@ struct pubkey {
+ 
+ static struct pubkey keys[] __attribute__((unused))= {
+ ''')
+-    for n in xrange(n + 1):
++    for n in range(n + 1):
+         output.write('	KEYS(e_%d, n_%d),\n' % (n, n))
+     output.write('};\n')
+     pass
+ 
+ def print_gcrypt(output, name, val):
+     output.write('#include <stdint.h>\n')
+-    while val[0] == '\0':
++    while val[0:1] == b'\0':
+         val = val[1:]
+     output.write('static const uint8_t %s[%d] = {\n' % (name, len(val)))
+     idx = 0
+     for v in val:
+         if not idx:
+             output.write('\t')
+-        output.write('0x%.2x, ' % ord(v))
++        output.write('0x%.2x, ' % (v if sys.version_info[0] >=3 else ord(v)))
+         idx += 1
+         if idx == 8:
+             idx = 0
+@@ -118,7 +118,7 @@ struct key_params {
+ 
+ static const struct key_params keys[] __attribute__((unused))= {
+ ''')
+-    for n in xrange(n + 1):
++    for n in range(n + 1):
+         output.write('	KEYS(e_%d, n_%d),\n' % (n, n))
+     output.write('};\n')
+     
+@@ -136,7 +136,7 @@ except IndexError:
+     mode = None
+ 
+ if not mode in modes:
+-    print 'Usage: %s [%s] input-file... output-file' % (sys.argv[0], '|'.join(modes.keys()))
++    print('Usage: %s [%s] input-file... output-file' % (sys.argv[0], '|'.join(modes.keys())))
+     sys.exit(2)
+ 
+ output = open(outfile, 'w')
+@@ -154,3 +154,5 @@ for f in files:
+     idx += 1
+ 
+ modes[mode][1](output, idx - 1)
++
++output.close()
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb b/meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb
index 7c925b2..b380eaf 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb
@@ -4,7 +4,7 @@
 LICENSE = "copyleft-next-0.3.0"
 LIC_FILES_CHKSUM = "file://copyleft-next-0.3.0;md5=8743a2c359037d4d329a31e79eabeffe"
 
-DEPENDS = "python-m2crypto-native python-typing-native python-native libnl libgcrypt"
+DEPENDS = "python3-m2crypto-native libnl libgcrypt"
 
 SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz \
            file://do-not-run-ldconfig-if-destdir-is-set.patch \
@@ -14,11 +14,12 @@
            file://make.patch \
            file://use-target-word-size-instead-of-host-s.patch \
            file://fix-issues-when-USE_OPENSSL-1.patch \
+           file://crda-4.14-python-3.patch \
 "
 SRC_URI[md5sum] = "0431fef3067bf503dfb464069f06163a"
 SRC_URI[sha256sum] = "43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf"
 
-inherit python-dir pythonnative siteinfo
+inherit python3-dir python3native siteinfo
 
 # Recursive make problem
 EXTRA_OEMAKE = "MAKEFLAGS= DESTDIR=${D} LIBDIR=${libdir}/crda LDLIBREG='-Wl,-rpath,${libdir}/crda -lreg' \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.5.bb b/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.6.bb
similarity index 86%
rename from meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.5.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.6.bb
index 3349ca1..1cb2af5 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.5.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.1.6.bb
@@ -12,8 +12,8 @@
 SRC_URI = "http://roy.marples.name/downloads/${BPN}/${BPN}-${PV}.tar.xz \
            file://0001-remove-INCLUDEDIR-to-prevent-build-issues.patch"
 
-SRC_URI[md5sum] = "57fd5dd4ff9722773ec67239db34d3b5"
-SRC_URI[sha256sum] = "c5cbe15069cef347e72d0bf7a19b0255571ee0c184c6705859a09588a50a8ebd"
+SRC_URI[md5sum] = "e1eea03388d12c9ad21ecd7c135fdf8b"
+SRC_URI[sha256sum] = "6c2934a3e1e67a5cfd5bb15b1efa71f65c00314ac1ccb5c50da8eae3a0b8147f"
 
 inherit pkgconfig autotools-brokensep
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.2.bb b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.3.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.2.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.3.bb
index 97c7bd6..4dea848 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.2.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.7.3.bb
@@ -8,8 +8,8 @@
 SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
            file://firewalld.init \
 "
-SRC_URI[md5sum] = "2549c2006def07a19b4c77ec960e5aab"
-SRC_URI[sha256sum] = "fbd1b72b3c4b4d0c20659f664b2ba36175364ffbb9cebf3bdfaf9b5e6983be77"
+SRC_URI[md5sum] = "05ec772cbdc0a2b3df081e4beca5599d"
+SRC_URI[sha256sum] = "414c46202c12334cd5c986214e5e2575d18e743c5531a97ace1c0cd94341c60d"
 
 # glib-2.0-native is needed for GSETTINGS_RULES autoconf macro from gsettings.m4
 DEPENDS = "intltool-native glib-2.0-native libxslt-native docbook-xsl-stylesheets-native"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch
new file mode 100644
index 0000000..d630231
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch
@@ -0,0 +1,58 @@
+From 733330888fff49e4d2b6c2121a6050fdd9f11a87 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Thu, 6 Feb 2020 09:32:04 +0800
+Subject: [PATCH] rlm_python3: add PY_INC_DIR in search dir
+
+The configure option --with-rlm-python3-include-dir is used to set
+PY_INC_DIR which is never used and it fails to find Python.h,
+so add it into search dir to fix it.
+
+Also remove SMART_LIBS from mod_flags because it introduces rpath
+to LDFALGS which causes a do_package_qa error:
+
+ERROR: freeradius-3.0.20-r0 do_package_qa: QA Issue: package freeradius-python contains bad RPATH
+/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/recipe-sysroot-native/usr/lib/python3.8/config in file
+/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/packages-split/freeradius-python/usr/lib/rlm_python3.so.0.0.0
+package freeradius-python contains bad RPATH
+/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/recipe-sysroot-native/usr/lib/python3.8/config in file
+/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/packages-split/freeradius-python/usr/lib/rlm_python3.so.0.0.0 [rpaths]
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ src/modules/rlm_python3/configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/rlm_python3/configure.ac b/src/modules/rlm_python3/configure.ac
+index a00320f..adbdf19 100644
+--- a/src/modules/rlm_python3/configure.ac
++++ b/src/modules/rlm_python3/configure.ac
+@@ -95,7 +95,7 @@ if test x$with_[]modname != xno; then
+ 
+ 		old_CFLAGS=$CFLAGS
+ 		CFLAGS="$CFLAGS $PY_CFLAGS"
+-		smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION"
++		smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR"
+ 		FR_SMART_CHECK_INCLUDE(Python.h)
+ 		CFLAGS=$old_CFLAGS
+ 
+@@ -114,13 +114,13 @@ if test x$with_[]modname != xno; then
+ 
+ 		eval t=\${ac_cv_lib_${sm_lib_safe}_${sm_func_safe}}
+ 		if test "x$t" = "xyes"; then
+-			mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS $SMART_LIBS -lm"
++			mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS -lm"
+ 			targetname=modname
+ 		else
+ 			FR_SMART_CHECK_LIB(python${PY_SYS_VERSION}m, Py_Initialize)
+ 			eval t=\${ac_cv_lib_${sm_lib_safe}_${sm_func_safe}}
+ 			if test "x$t" = "xyes"; then
+-				mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS $SMART_LIBS -lm"
++				mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS -lm"
+ 				targetname=modname
+ 			else
+ 				targetname=
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-su-to-radiusd-user-group-when-rotating-logs.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-su-to-radiusd-user-group-when-rotating-logs.patch
deleted file mode 100644
index 5859dc7..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-su-to-radiusd-user-group-when-rotating-logs.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From 1f233773962bf1a9c2d228a180eacddb9db2d574 Mon Sep 17 00:00:00 2001
-From: Alexander Scheel <ascheel@redhat.com>
-Date: Tue, 7 May 2019 16:04:29 -0400
-Subject: [PATCH] su to radiusd user/group when rotating logs
-
-The su directive to logrotate ensures that log rotation happens under the
-owner of the logs. Otherwise, logrotate runs as root:root, potentially
-enabling privilege escalation if a RCE is discovered against the
-FreeRADIUS daemon.
-
-Signed-off-by: Alexander Scheel <ascheel@redhat.com>
-
-Upstream-Status: Backport
-[https://github.com/FreeRADIUS/freeradius-server/commit/1f233773962bf1a9c2d228a180eacddb9db2d574]
-
-CVE: CVE-2019-10143
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- debian/freeradius.logrotate  | 3 +++
- redhat/freeradius-logrotate  | 1 +
- scripts/logrotate/freeradius | 3 +++
- suse/radiusd-logrotate       | 1 +
- 4 files changed, 8 insertions(+)
-
-diff --git a/debian/freeradius.logrotate b/debian/freeradius.logrotate
-index 7d837d5..a8d29b7 100644
---- a/debian/freeradius.logrotate
-+++ b/debian/freeradius.logrotate
-@@ -9,6 +9,7 @@
- 	notifempty
- 
- 	copytruncate
-+	su freerad freerad
- }
- 
- # (in order)
-@@ -26,6 +27,7 @@
- 	notifempty
- 
- 	nocreate
-+	su freerad freerad
- }
- 
- # There are different detail-rotating strategies you can use.  One is
-@@ -45,4 +47,5 @@
- 	notifempty
- 
- 	nocreate
-+	su freerad freerad
- }
-diff --git a/redhat/freeradius-logrotate b/redhat/freeradius-logrotate
-index 360765d..bb97ca5 100644
---- a/redhat/freeradius-logrotate
-+++ b/redhat/freeradius-logrotate
-@@ -9,6 +9,7 @@ rotate 4
- missingok
- compress
- delaycompress
-+su radiusd radiusd
- 
- #
- #  The main server log
-diff --git a/scripts/logrotate/freeradius b/scripts/logrotate/freeradius
-index 3de435e..eecf631 100644
---- a/scripts/logrotate/freeradius
-+++ b/scripts/logrotate/freeradius
-@@ -17,6 +17,7 @@
- 	notifempty
- 
- 	copytruncate
-+	su radiusd radiusd
- }
- 
- # (in order)
-@@ -34,6 +35,7 @@
- 	notifempty
- 
- 	nocreate
-+	su radiusd radiusd
- }
- 
- # There are different detail-rotating strategies you can use.  One is
-@@ -53,4 +55,5 @@
- 	notifempty
- 
- 	nocreate
-+	su radiusd radiusd
- }
-diff --git a/suse/radiusd-logrotate b/suse/radiusd-logrotate
-index 24d56be..be5a797 100644
---- a/suse/radiusd-logrotate
-+++ b/suse/radiusd-logrotate
-@@ -11,6 +11,7 @@ missingok
- compress
- delaycompress
- notifempty
-+su radiusd radiusd
- 
- #
- #  The main server log
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb
similarity index 87%
rename from meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb
index 31e6978..005ca47 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb
@@ -13,7 +13,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a"
 DEPENDS = "openssl-native openssl libidn libtool libpcap libtalloc"
 
-SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x; \
+SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0; \
     file://freeradius \
     file://volatiles.58_radiusd \
     file://freeradius-enble-user-in-conf.patch \
@@ -26,12 +26,12 @@
     file://freeradius-fix-quoting-for-BUILT_WITH.patch \
     file://freeradius-fix-error-for-expansion-of-macro.patch \
     file://0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch \
-    file://0001-su-to-radiusd-user-group-when-rotating-logs.patch \
+    file://0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch \
     file://radiusd.service \
     file://radiusd-volatiles.conf \
 "
 
-SRCREV = "ab4c767099f263a7cd4109bcdca80ee74210a769"
+SRCREV = "d94c953ab9602a238433ba18533111b845fd8e9e"
 
 PARALLEL_MAKE = ""
 
@@ -61,9 +61,11 @@
         --without-rlm_sql_iodbc \
         --without-rlm_sql_oracle \
         --without-rlm_sql_sybase \
+        --without-rlm_sql_mongo \
         --without-rlm_sqlhpwippool \
         --without-rlm_securid \
         --without-rlm_unbound \
+        --without-rlm_python \
         ac_cv_path_PERL=${bindir}/perl \
         ax_cv_cc_builtin_choose_expr=no \
         ax_cv_cc_builtin_types_compatible_p=no \
@@ -86,7 +88,7 @@
 PACKAGECONFIG[postgresql] = "--with-rlm_sql_postgresql,--without-rlm_sql_postgresql,postgresql"
 PACKAGECONFIG[pcre] = "--with-pcre,--without-pcre,libpcre"
 PACKAGECONFIG[perl] = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl --with-rlm_perl,--without-rlm_perl,perl-native perl,perl"
-PACKAGECONFIG[python] = "--with-rlm_python --with-rlm-python-bin=${STAGING_BINDIR_NATIVE}/python-native/python --with-rlm-python-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python,python-native python"
+PACKAGECONFIG[python3] = "--with-rlm_python3 --with-rlm-python3-bin=${STAGING_BINDIR_NATIVE}/python3-native/python3 --with-rlm-python3-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python3,python3-native python3"
 PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest,curl json-c"
 PACKAGECONFIG[ruby] = "--with-rlm_ruby,--without-rlm_ruby,ruby"
 PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl"
@@ -96,9 +98,9 @@
 inherit useradd autotools-brokensep update-rc.d systemd
 
 # This is not a cpan or python based package, but it needs some definitions
-# from cpan-base and python-dir bbclasses for building rlm_perl and rlm_python
+# from cpan-base and python3-dir bbclasses for building rlm_perl and rlm_python
 # correctly.
-inherit cpan-base python-dir
+inherit cpan-base python3-dir
 
 # The modules subdirs also need to be processed by autoreconf. Use autogen.sh
 # in order to handle the subdirs correctly.
@@ -145,23 +147,24 @@
     rm -f ${D}/${sbindir}/rc.radiusd
     chmod +x ${D}/${sysconfdir}/init.d/radiusd
     rm -rf ${D}/${localstatedir}/run/
+    rm -rf ${D}/${localstatedir}/log/
     install -m 0644 ${WORKDIR}/volatiles.58_radiusd  ${D}${sysconfdir}/default/volatiles/58_radiusd
 
     chown -R radiusd:radiusd ${D}/${sysconfdir}/raddb/
     chown -R radiusd:radiusd ${D}/${localstatedir}/lib/radiusd
 
     # For systemd
-    install -d ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/radiusd.service ${D}${systemd_unitdir}/system
-    sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-           -e 's,@SBINDIR@,${sbindir},g' \
-           -e 's,@STATEDIR@,${localstatedir},g' \
-           -e 's,@SYSCONFDIR@,${sysconfdir},g' \
-           ${D}${systemd_unitdir}/system/radiusd.service
-
     if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+        install -d ${D}${systemd_unitdir}/system
+        install -m 0644 ${WORKDIR}/radiusd.service ${D}${systemd_unitdir}/system
+        sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
+            -e 's,@SBINDIR@,${sbindir},g' \
+            -e 's,@STATEDIR@,${localstatedir},g' \
+            -e 's,@SYSCONFDIR@,${sysconfdir},g' \
+            ${D}${systemd_unitdir}/system/radiusd.service
+
         install -d ${D}${sysconfdir}/tmpfiles.d/
-        install -m 0644 ${WORKDIR}/radiusd-volatiles.conf ${D}${sysconfdir}/tmpfiles.d/
+        install -m 0644 ${WORKDIR}/radiusd-volatiles.conf ${D}${sysconfdir}/tmpfiles.d/radiusd.conf
     fi
 }
 
@@ -171,7 +174,7 @@
     if [ -z "$D" ]; then
         if command -v systemd-tmpfiles >/dev/null; then
             # create /var/log/radius, /var/run/radiusd
-            systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/radiusd-volatiles.conf
+            systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/radiusd.conf
         elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
             ${sysconfdir}/init.d/populate-volatile.sh update
         fi
@@ -210,9 +213,9 @@
     ${sysconfdir}/raddb/mods-available/perl \
 "
 
-FILES_${PN}-python = "${libdir}/rlm_python.so* \
-    ${sysconfdir}/raddb/mods-config/python \
-    ${sysconfdir}/raddb/mods-available/python \
+FILES_${PN}-python = "${libdir}/rlm_python3.so* \
+    ${sysconfdir}/raddb/mods-config/python3 \
+    ${sysconfdir}/raddb/mods-available/python3 \
 "
 
 FILES_${PN}-mysql = "${libdir}/rlm_sql_mysql.so* \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.3.bb b/meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.6.bb
similarity index 78%
rename from meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.3.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.6.bb
index e230fd0..4e221c3 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.3.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/kea/kea_1.7.6.bb
@@ -3,7 +3,7 @@
 HOMEPAGE = "http://kea.isc.org"
 SECTION = "connectivity"
 LICENSE = "MPL-2.0 & Apache-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0e5b01c848c7736a0c9e68f9c9cd0281"
+LIC_FILES_CHKSUM = "file://COPYING;md5=68d95543d2096459290a4e6b9ceccffa"
 
 DEPENDS += "kea-native"
 
@@ -14,8 +14,8 @@
     file://kea-dhcp6.service \
     file://kea-dhcp-ddns.service \
 "
-SRC_URI[md5sum] = "fda03bf465818009b70dffc226da777d"
-SRC_URI[sha256sum] = "30f82c548b844c12ed46c4eb3880d63b45ec04cecfcf2e4ab1d7bada7fff4f2a"
+SRC_URI[md5sum] = "26f48997a37a670a406d5020ce64a7fb"
+SRC_URI[sha256sum] = "1da3d50e0c8e92e1aa6d66100b5afd7b93ba2c50b0a4ea114fd9dcb8be982ca9"
 
 inherit autotools systemd
 
@@ -35,6 +35,10 @@
 do_configure_prepend_class-target() {
     mkdir -p ${B}/src/lib/log/compiler/
     ln -sf ${STAGING_BINDIR_NATIVE}/kea-msg-compiler ${B}/src/lib/log/compiler/kea-msg-compiler
+    # replace abs_top_builddir to avoid introducing the build path
+    # don't expand the abs_top_builddir on the target as the abs_top_builddir is meanlingless on the target
+    find ${S} -type f -name *.sh.in | xargs sed -i  "s:@abs_top_builddir@:@abs_top_builddir_placeholder@:g"
+    sed -i "s:@abs_top_srcdir@:@abs_top_srcdir_placeholder@:g" ${S}/src/bin/admin/kea-admin.in
 }
 
 do_install_append_class-target() {
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.1.bb
similarity index 89%
rename from meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.1.bb
index ef047f7..79a380a 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/lftp/lftp_4.9.1.bb
@@ -7,8 +7,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
 SRC_URI = "http://lftp.yar.ru/ftp/lftp-${PV}.tar.bz2"
-SRC_URI[md5sum] = "b05817a2c26463618271730d0f677edb"
-SRC_URI[sha256sum] = "309e7e91a7c020625715e85c1726b1e7524da22518683fbe051ac13116dedeac"
+SRC_URI[md5sum] = "19ce64012bc722ad61667372fa262382"
+SRC_URI[sha256sum] = "a692fd081c19e2cc045869ab721a4fb3d7571040849a4406c4042f735232414c"
 
 inherit autotools gettext pkgconfig
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.12.bb b/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.12.bb
index 5b6e45c..5b27cfe 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.12.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.12.bb
@@ -11,8 +11,10 @@
 
 S = "${WORKDIR}/git"
 
-inherit autotools
+inherit autotools multilib_script
 
 acpaths = "-I ./config/"
 
 BBCLASSEXTEND = "native"
+
+MULTILIB_SCRIPTS = "${PN}:${bindir}/dnet-config"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.3.bb b/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.6.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.3.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.6.bb
index 79d0dbe..12ad397 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.3.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.6.bb
@@ -23,8 +23,8 @@
 SECTION = "libs"
 
 SRC_URI = "https://tls.mbed.org/download/mbedtls-${PV}-apache.tgz"
-SRC_URI[md5sum] = "90ce7c7a001d2514410280706b3ab1a7"
-SRC_URI[sha256sum] = "ec1bee6d82090ed6ea2690784ea4b294ab576a65d428da9fe8750f932d2da661"
+SRC_URI[md5sum] = "1f629a43c166de2eca808f3e30aa961d"
+SRC_URI[sha256sum] = "66455e23a6190a30142cdc1113f7418158839331a9d8e6b0778631d077281770"
 
 inherit cmake
 
@@ -39,3 +39,5 @@
 
 PACKAGES =+ "${PN}-programs"
 FILES_${PN}-programs = "${bindir}/"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20191006.bb b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20191006.bb
index 81bfe66..a630d27 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20191006.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20191006.bb
@@ -37,6 +37,7 @@
     install ${S}/netfilter/iptables_init.sh ${D}/${sysconfdir}/${BPN}
     install ${S}/netfilter/iptables_removeall.sh ${D}/${sysconfdir}/${BPN}
     install ${S}/netfilter/ip6tables_init.sh ${D}/${sysconfdir}/${BPN}
+    install ${S}/netfilter/miniupnpd_functions.sh ${D}/${sysconfdir}/${BPN}
     install ${S}/netfilter/ip6tables_removeall.sh ${D}/${sysconfdir}/${BPN}
     install -m 0644 -b ${S}/miniupnpd.conf ${D}/${sysconfdir}/${BPN}
     install -d ${D}/${sysconfdir}/init.d
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/1571.patch b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/1571.patch
new file mode 100644
index 0000000..93ff6bc
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/1571.patch
@@ -0,0 +1,22 @@
+Upstream-Status: Submitted [https://github.com/eclipse/mosquitto/pull/1571]
+From 3fe5468f1bdca1bff1d18cf43c9e338f41aa9e32 Mon Sep 17 00:00:00 2001
+From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
+Date: Wed, 22 Jan 2020 12:39:49 +0100
+Subject: [PATCH] Add dynamic symbols linking with cmake too
+
+Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
+---
+ lib/CMakeLists.txt | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -89,6 +89,8 @@
+ 	OUTPUT_NAME mosquitto
+ 	VERSION ${VERSION}
+ 	SOVERSION 1
++	LINK_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/linker.version
++	LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/linker.version"
+ )
+ 
+ install(TARGETS libmosquitto RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/install-protocol.patch b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/install-protocol.patch
new file mode 100644
index 0000000..1397fc6
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/install-protocol.patch
@@ -0,0 +1,14 @@
+Description: Also install mqtt_protocol.h, as is done in Makefile
+Author: Gianfranco Costamagna <locutusofborg@debian.org>
+Bug-Debian: https://bugs.debian.org/951116
+Forwarded: https://github.com/eclipse/mosquitto/pull/1599
+Last-Update: 2020-02-15
+
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -114,4 +114,4 @@
+ 	install(TARGETS libmosquitto_static ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
+ endif (WITH_STATIC_LIBRARIES)
+ 
+-install(FILES mosquitto.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
++install(FILES mqtt_protocol.h mosquitto.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/mosquitto.init b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/mosquitto.init
index 6a0c127..9d5963c 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/mosquitto.init
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/files/mosquitto.init
@@ -38,7 +38,7 @@
 case "$1" in
     start)
         echo "Starting Mosquitto message broker" "mosquitto"
-        if start-stop-daemon --start --quiet --oknodo --background  --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} ; then
+        if start-stop-daemon --start --quiet --oknodo --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} -- -c @SYSCONFDIR@/mosquitto/mosquitto.conf ; then
             exit 0
         else
             exit 1
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.8.bb b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.9.bb
similarity index 66%
rename from meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.8.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.9.bb
index ea533d8..de43aae 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.8.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_1.6.9.bb
@@ -16,45 +16,34 @@
 
 SRC_URI = "http://mosquitto.org/files/source/mosquitto-${PV}.tar.gz \
            file://mosquitto.init \
+           file://1571.patch \
+           file://install-protocol.patch \
 "
 
-SRC_URI[md5sum] = "24a0e567c845b3e41b75e237d200edf8"
-SRC_URI[sha256sum] = "7df23c81ca37f0e070574fe74414403cf25183016433d07add6134366fb45df6"
+SRC_URI[md5sum] = "52f5078ec18aaf623b14dfb121fd534b"
+SRC_URI[sha256sum] = "412979b2db0a0020bd02fa64f0a0de9e7000b84462586e32b67f29bb1f6c1685"
 
-inherit systemd update-rc.d useradd
+inherit systemd update-rc.d useradd cmake
 
-PACKAGECONFIG ??= "ssl uuid \
+PACKAGECONFIG ??= "ssl dlt websockets \
                   ${@bb.utils.filter('DISTRO_FEATURES','systemd', d)} \
                   "
 
-PACKAGECONFIG[dns-srv] = "WITH_SRV=yes,WITH_SRV=no,c-ares"
-PACKAGECONFIG[ssl] = "WITH_TLS=yes WITH_TLS_PSK=yes,WITH_TLS=no WITH_TLS_PSK=no,openssl"
-PACKAGECONFIG[uuid] = "WITH_UUID=yes,WITH_UUID=no,util-linux"
-PACKAGECONFIG[systemd] = "WITH_SYSTEMD=yes,WITH_SYSTEMD=no,systemd"
-PACKAGECONFIG[websockets] = "WITH_WEBSOCKETS=yes,WITH_WEBSOCKETS=no,libwebsockets"
+PACKAGECONFIG[dns-srv] = "-DWITH_SRV=ON,-DWITH_SRV=OFF,c-ares"
+PACKAGECONFIG[ssl] = "-DWITH_TLS=ON -DWITH_TLS_PSK=ON -DWITH_EC=ON,-DWITH_TLS=OFF -DWITH_TLS_PSK=OFF -DWITH_EC_OFF,openssl"
+PACKAGECONFIG[systemd] = "-DWITH_SYSTEMD=ON,-DWITH_SYSTEMD=OFF,systemd"
+PACKAGECONFIG[websockets] = "-DWITH_WEBSOCKETS=ON,-DWITH_WEBSOCKETS=OFF,libwebsockets"
+PACKAGECONFIG[dlt] = "-DWITH_DLT=ON,-DWITH_DLT=OFF,dlt-daemon"
 
-EXTRA_OEMAKE = " \
-    prefix=${prefix} \
-    mandir=${mandir} \
-    localedir=${localedir} \
-    ${PACKAGECONFIG_CONFARGS} \
-    STRIP=/bin/true \
-    WITH_DOCS=no \
-    WITH_BUNDLED_DEPS=no \
+EXTRA_OECMAKE = " \
+    -DWITH_BUNDLED_DEPS=OFF \
+    -DWITH_ADNS=ON \
 "
 
-export LIB_SUFFIX = "${@d.getVar('baselib').replace('lib', '')}"
-
-do_install() {
-    oe_runmake 'DESTDIR=${D}' install
-
+do_install_append() {
     install -d ${D}${systemd_unitdir}/system/
     install -m 0644 ${S}/service/systemd/mosquitto.service.notify ${D}${systemd_unitdir}/system/mosquitto.service
 
-    install -d ${D}${sysconfdir}/mosquitto
-    install -m 0644 ${D}${sysconfdir}/mosquitto/mosquitto.conf.example \
-                    ${D}${sysconfdir}/mosquitto/mosquitto.conf
-
     install -d ${D}${sysconfdir}/init.d/
     install -m 0755 ${WORKDIR}/mosquitto.init ${D}${sysconfdir}/init.d/mosquitto
     sed -i -e 's,@SBINDIR@,${sbindir},g' \
@@ -77,9 +66,9 @@
 
 CONFFILES_${PN} += "${sysconfdir}/mosquitto/mosquitto.conf"
 
-FILES_libmosquitto1 = "${libdir}/libmosquitto.so.1"
+FILES_libmosquitto1 = "${libdir}/libmosquitto.so.*"
 
-FILES_libmosquittopp1 = "${libdir}/libmosquittopp.so.1"
+FILES_libmosquittopp1 = "${libdir}/libmosquittopp.so.*"
 
 FILES_${PN}-clients = "${bindir}/mosquitto_pub \
                        ${bindir}/mosquitto_sub \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nng_1.2.5.bb b/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nng_1.2.5.bb
new file mode 100644
index 0000000..77be27f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nng_1.2.5.bb
@@ -0,0 +1,21 @@
+SUMMARY = "nanomsg-next-generation -- light-weight brokerless messaging"
+DESCRIPTION = "NNG, like its predecessors nanomsg (and to some extent ZeroMQ), is a lightweight, broker-less library, offering a simple API to solve common recurring messaging problems, such as publish/subscribe, RPC-style request/reply, or service discovery."
+HOMEPAGE = "https://github.com/nanomsg/nng"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a19b15be6e844b39a54de2ef665bd6de"
+
+SECTION = "libs/networking"
+
+SRCREV = "53ae1a5ab37fdfc9ad5c236df3eaf4dd63f0fee9"
+
+SRC_URI = "git://github.com/nanomsg/nng.git;branch=v1.2.x"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON"
+
+PACKAGECONFIG ??= ""
+
+PACKAGECONFIG[mbedtls] = "-DNNG_ENABLE_TLS=ON,-DNNG_ENABLE_TLS=OFF,mbedtls"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.98.bb b/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.98.bb
index 860762c..db029a4 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.98.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.98.bb
@@ -19,7 +19,7 @@
 "
 
 DEPENDS = "glib-2.0 libyaml"
-RDEPENDS_${PN} = "python3 python3-core python3-pyyaml python3-netifaces python3-nose python3-coverage python3-pycodestyle python-pyflakes util-linux-libuuid"
+RDEPENDS_${PN} = "python3 python3-core python3-pyyaml python3-netifaces python3-nose python3-coverage python3-pycodestyle python3-pyflakes util-linux-libuuid"
 
 inherit pkgconfig systemd
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb
deleted file mode 100644
index 56db770..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "NetworkManager-openvpn-plugin"
-SECTION = "net/misc"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=100d5a599bead70ddcd70dcd73f2e29c"
-
-DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native glib-2.0-native"
-
-inherit gnomebase useradd gettext systemd
-
-SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
-
-SRC_URI[md5sum] = "4dbbc103761facc7a61a1c00dfd55231"
-SRC_URI[sha256sum] = "af3cc86ba848d21b4ac807a09d575de11335ba4df8ce6fdb089212e77c2231ef"
-
-S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
-
-PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
-
-do_install_append () {
-    rm -rf ${D}${libdir}/NetworkManager/*.la
-}
-
-# Create user and group nm-openvpn that are needed since version 1.0.6
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system nm-openvpn"
-
-FILES_${PN} += " \
-    ${libdir}/NetworkManager/*.so \
-    ${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
-"
-
-FILES_${PN}-staticdev += " \
-    ${libdir}/NetworkManager/*.a \
-"
-
-RDEPENDS_${PN} = " \
-    networkmanager \
-    openvpn \
-"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb
new file mode 100644
index 0000000..d455a0f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb
@@ -0,0 +1,52 @@
+SUMMARY = "NetworkManager-openvpn-plugin"
+SECTION = "net/misc"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=100d5a599bead70ddcd70dcd73f2e29c"
+
+DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native glib-2.0-native"
+
+inherit gnomebase useradd gettext systemd
+
+SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
+
+SRC_URI[md5sum] = "e8b1210011ece18d0278310fbff45af5"
+SRC_URI[sha256sum] = "0efda8878aaf0e6eb5071a053aea5d7f9d42aac097b3ff89e7cbc9233f815318"
+
+S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
+
+# meta-gnome in layers is required using gnome:
+PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome,gtk+3 libnma libsecret"
+
+do_configure_append() {
+    # network-manager-openvpn.metainfo.xml is created in source folder but
+    # compile expects it in build folder. As long as nobody comes up with a
+    # better solution just support build:
+    if [ -e ${S}/appdata/network-manager-openvpn.metainfo.xml ]; then
+        mkdir -p ${B}/appdata
+        cp -f ${S}/appdata/network-manager-openvpn.metainfo.xml ${B}/appdata/
+    fi
+}
+
+do_install_append () {
+    rm -rf ${D}${libdir}/NetworkManager/*.la
+}
+
+# Create user and group nm-openvpn that are needed since version 1.0.6
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--system nm-openvpn"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${libdir}/NetworkManager/*.so \
+    ${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
+"
+
+FILES_${PN}-staticdev += " \
+    ${libdir}/NetworkManager/*.a \
+"
+
+RDEPENDS_${PN} = " \
+    networkmanager \
+    openvpn \
+"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch
index 302c029..19c8c74 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch
@@ -1,4 +1,4 @@
-From 3dc3d8e73bc430ea4e93e33f7b2a4b3e0ff175af Mon Sep 17 00:00:00 2001
+From 9bcf4c81a559d1e7deac47b2e510d7f1e5837a02 Mon Sep 17 00:00:00 2001
 From: Pablo Saavedra <psaavedra@igalia.com>
 Date: Tue, 13 Mar 2018 17:36:20 +0100
 Subject: [PATCH] Fixed configure.ac: Fix pkgconfig sysroot locations
@@ -8,10 +8,10 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/configure.ac b/configure.ac
-index 967eac0..b914219 100644
+index 65ceffb..ad4b0fc 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -592,7 +592,7 @@ if test "$have_jansson" = "yes"; then
+@@ -561,7 +561,7 @@ if test "$have_jansson" = "yes"; then
  	AC_DEFINE(WITH_JANSSON, 1, [Define if JANSSON is enabled])
  
  	AC_CHECK_TOOLS(READELF, [eu-readelf readelf])
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
index 5581dd3..446637b 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
@@ -1,4 +1,4 @@
-From 4f000a4a19975d6aba71427e693cd1ed080abda9 Mon Sep 17 00:00:00 2001
+From 9eab96351a726e9ce6a15d158f743e35d73a8900 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
 Date: Thu, 22 Mar 2018 11:08:30 +0100
 Subject: [PATCH] Do not create settings settings/property documentation
@@ -6,23 +6,29 @@
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
 
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
 It was tried to get this work but gi / GirRepository could not be found by
 python. Anyway it is not necessary for us to have the settings/property docs.
 
 Upstream-Status: Inappropriate [OE specific]
 
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
 ---
  Makefile.am  | 11 -----------
  configure.ac |  5 -----
  2 files changed, 16 deletions(-)
 
 diff --git a/Makefile.am b/Makefile.am
-index b180466..1ab4658 100644
+index d5cbcf5..2a1819a 100644
 --- a/Makefile.am
 +++ b/Makefile.am
-@@ -1298,9 +1298,7 @@ EXTRA_DIST += \
- if HAVE_INTROSPECTION
+@@ -1473,9 +1473,7 @@ libnm/libnm.typelib: libnm/libnm.gir
+ INTROSPECTION_GIRS += libnm/NM-1.0.gir
  
  libnm_noinst_data = \
 -	libnm/nm-property-docs.xml \
@@ -31,7 +37,7 @@
  	libnm/nm-settings-keyfile-docs.xml \
  	libnm/nm-settings-ifcfg-rh-docs.xml
  
-@@ -3930,18 +3928,9 @@ $(clients_common_libnmc_base_la_OBJECTS): $(libnm_lib_h_pub_mkenums)
+@@ -4236,18 +4234,9 @@ $(clients_common_libnmc_base_la_OBJECTS): $(libnm_lib_h_pub_mkenums)
  $(clients_common_libnmc_base_la_OBJECTS): clients/common/.dirstamp
  
  clients_common_settings_doc_h = clients/common/settings-docs.h
@@ -51,10 +57,10 @@
  	$(clients_common_settings_doc_h) \
  	$(clients_common_settings_doc_h).in
 diff --git a/configure.ac b/configure.ac
-index b914219..872c292 100644
+index ad4b0fc..0092092 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1215,11 +1215,6 @@ GTK_DOC_CHECK(1.0)
+@@ -1201,11 +1201,6 @@ GTK_DOC_CHECK(1.0)
  # check if we can build setting property documentation
  build_docs=no
  if test -n "$INTROSPECTION_MAKEFILE"; then
@@ -66,6 +72,3 @@
  	AC_PATH_PROG(PERL, perl)
  	if test -z "$PERL"; then
  		AC_MSG_ERROR([--enable-introspection requires perl])
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
index af6f938..c23fc30 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
@@ -1,4 +1,4 @@
-From a89c2e6d40606f563467a83fb98933e990e71377 Mon Sep 17 00:00:00 2001
+From e7ed91c48e1a07527a860637a7865eb67ce34cf3 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
 Date: Tue, 2 Apr 2019 01:34:35 +0200
 Subject: [PATCH] Fix build with musl - systemd specific
@@ -12,6 +12,7 @@
 Upstream-Status: Pending
 
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
 ---
  shared/systemd/src/basic/in-addr-util.c |  1 +
  shared/systemd/src/basic/process-util.c |  9 +++++++++
@@ -22,10 +23,10 @@
  6 files changed, 27 insertions(+), 23 deletions(-)
 
 diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c
-index 5899f62..0adb248 100644
+index 91d687c..8388304 100644
 --- a/shared/systemd/src/basic/in-addr-util.c
 +++ b/shared/systemd/src/basic/in-addr-util.c
-@@ -14,6 +14,7 @@
+@@ -15,6 +15,7 @@
  #include "in-addr-util.h"
  #include "macro.h"
  #include "parse-util.h"
@@ -34,10 +35,10 @@
  #include "strxcpyx.h"
  #include "util.h"
 diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
-index 7431be3..189060a 100644
+index 1456167..42f51a0 100644
 --- a/shared/systemd/src/basic/process-util.c
 +++ b/shared/systemd/src/basic/process-util.c
-@@ -21,6 +21,9 @@
+@@ -17,6 +17,9 @@
  #include <sys/wait.h>
  #include <syslog.h>
  #include <unistd.h>
@@ -47,7 +48,7 @@
  #if 0 /* NM_IGNORED */
  #if HAVE_VALGRIND_VALGRIND_H
  #include <valgrind/valgrind.h>
-@@ -1183,11 +1186,13 @@ void reset_cached_pid(void) {
+@@ -1123,11 +1126,13 @@ void reset_cached_pid(void) {
          cached_pid = CACHED_PID_UNSET;
  }
  
@@ -61,7 +62,7 @@
  
  pid_t getpid_cached(void) {
          static bool installed = false;
-@@ -1216,7 +1221,11 @@ pid_t getpid_cached(void) {
+@@ -1156,7 +1161,11 @@ pid_t getpid_cached(void) {
                           * only half-documented (glibc doesn't document it but LSB does — though only superficially)
                           * we'll check for errors only in the most generic fashion possible. */
  
@@ -74,10 +75,10 @@
                                  cached_pid = CACHED_PID_UNSET;
                                  return new_pid;
 diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
-index 15443f1..4807198 100644
+index a0886e0..da47d14 100644
 --- a/shared/systemd/src/basic/socket-util.h
 +++ b/shared/systemd/src/basic/socket-util.h
-@@ -13,6 +13,12 @@
+@@ -14,6 +14,12 @@
  #include <sys/types.h>
  #include <sys/un.h>
  
@@ -147,10 +148,10 @@
  #include <stdio.h>
  #include <sys/types.h>
 diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h
-index b23f4c8..8f2f6e0 100644
+index 04cc82b..2cf589a 100644
 --- a/shared/systemd/src/basic/string-util.h
 +++ b/shared/systemd/src/basic/string-util.h
-@@ -27,6 +27,11 @@
+@@ -26,6 +26,11 @@
  #define strcaseeq(a,b) (strcasecmp((a),(b)) == 0)
  #define strncaseeq(a, b, n) (strncasecmp((a), (b), (n)) == 0)
  
@@ -162,6 +163,3 @@
  int strcmp_ptr(const char *a, const char *b) _pure_;
  
  static inline bool streq_ptr(const char *a, const char *b) {
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
index e0973af..196a335 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
@@ -1,7 +1,7 @@
-From 3d1307735667758f44378585482fe421db086af8 Mon Sep 17 00:00:00 2001
+From 877fbb4e848629ff57371b5bdb0d56369abe9d81 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
 Date: Mon, 8 Apr 2019 23:10:43 +0200
-Subject: [PATCH 2/2] Fix build with musl
+Subject: [PATCH] Fix build with musl
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -32,6 +32,7 @@
 Upstream-Status: Pending
 
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
 ---
  clients/tui/nmt-device-entry.c   | 1 -
  libnm-core/nm-utils.h            | 4 ++++
@@ -41,10 +42,10 @@
  5 files changed, 8 insertions(+), 3 deletions(-)
 
 diff --git a/clients/tui/nmt-device-entry.c b/clients/tui/nmt-device-entry.c
-index 43fbbc1..3eae286 100644
+index 4ab5932..915248c 100644
 --- a/clients/tui/nmt-device-entry.c
 +++ b/clients/tui/nmt-device-entry.c
-@@ -39,7 +39,6 @@
+@@ -26,7 +26,6 @@
  #include "nmt-device-entry.h"
  
  #include <sys/socket.h>
@@ -53,10 +54,10 @@
  #include "nmtui.h"
  
 diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
-index 2b5baba..f7abab6 100644
+index 5418a1e..f492da6 100644
 --- a/libnm-core/nm-utils.h
 +++ b/libnm-core/nm-utils.h
-@@ -25,6 +25,10 @@
+@@ -10,6 +10,10 @@
  #error "Only <NetworkManager.h> can be included directly."
  #endif
  
@@ -68,10 +69,10 @@
  
  #include <netinet/in.h>
 diff --git a/shared/nm-default.h b/shared/nm-default.h
-index 54e9916..26e9f4e 100644
+index ace6ede..25357da 100644
 --- a/shared/nm-default.h
 +++ b/shared/nm-default.h
-@@ -211,6 +211,9 @@
+@@ -182,6 +182,9 @@
  #endif
  
  #include <stdlib.h>
@@ -82,10 +83,10 @@
  /*****************************************************************************/
  
 diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index bd4fbcc..f70b309 100644
+index 3bbc975..4e8a3f6 100644
 --- a/src/devices/nm-device.c
 +++ b/src/devices/nm-device.c
-@@ -24,6 +24,7 @@
+@@ -9,6 +9,7 @@
  #include "nm-device.h"
  
  #include <netinet/in.h>
@@ -93,7 +94,7 @@
  #include <unistd.h>
  #include <sys/ioctl.h>
  #include <signal.h>
-@@ -32,7 +33,6 @@
+@@ -17,7 +18,6 @@
  #include <arpa/inet.h>
  #include <fcntl.h>
  #include <linux/if_addr.h>
@@ -102,10 +103,10 @@
  #include <linux/pkt_sched.h>
  
 diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
-index d4b0115..22a3a90 100644
+index 7abe4df..9f53147 100644
 --- a/src/platform/nm-linux-platform.c
 +++ b/src/platform/nm-linux-platform.c
-@@ -28,7 +28,6 @@
+@@ -14,7 +14,6 @@
  #include <libudev.h>
  #include <linux/fib_rules.h>
  #include <linux/ip.h>
@@ -113,6 +114,3 @@
  #include <linux/if_bridge.h>
  #include <linux/if_link.h>
  #include <linux/if_tun.h>
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch
new file mode 100644
index 0000000..6225282
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-for-n-dhcp4.patch
@@ -0,0 +1,61 @@
+From aff5cded8847f3eee59f5cec22afb8630d401a85 Mon Sep 17 00:00:00 2001
+From: Adrian Freihofer <adrian.freihofer@siemens.com>
+Date: Sat, 7 Mar 2020 14:22:36 +0100
+Subject: [PATCH 3/4] Fix build with musl for n-dhcp4
+
+---
+ shared/n-dhcp4/src/n-dhcp4-c-probe.c | 8 ++++++++
+ shared/n-dhcp4/src/n-dhcp4-private.h | 4 ++++
+ 2 files changed, 12 insertions(+)
+
+diff --git a/shared/n-dhcp4/src/n-dhcp4-c-probe.c b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
+index e4477a7..75713c8 100644
+--- a/shared/n-dhcp4/src/n-dhcp4-c-probe.c
++++ b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
+@@ -360,8 +360,12 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
+         seed16v[1] = (u64 >> 16) ^ (u64 >>  0);
+         seed16v[2] = (u64 >> 32) ^ (u64 >> 16);
+ 
++#ifdef __GLIBC__
+         r = seed48_r(seed16v, &config->entropy);
+         c_assert(!r);
++#else
++        memcpy(config->entropy, seed16v, sizeof seed16v);
++#endif
+ }
+ 
+ /**
+@@ -375,10 +379,14 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
+  */
+ uint32_t n_dhcp4_client_probe_config_get_random(NDhcp4ClientProbeConfig *config) {
+         long int result;
++#ifdef __GLIBC__
+         int r;
+ 
+         r = mrand48_r(&config->entropy, &result);
+         c_assert(!r);
++#else
++        result = jrand48(config->entropy);
++#endif
+ 
+         return result;
+ };
+diff --git a/shared/n-dhcp4/src/n-dhcp4-private.h b/shared/n-dhcp4/src/n-dhcp4-private.h
+index 436ee80..ffcb4b2 100644
+--- a/shared/n-dhcp4/src/n-dhcp4-private.h
++++ b/shared/n-dhcp4/src/n-dhcp4-private.h
+@@ -267,7 +267,11 @@ struct NDhcp4ClientProbeConfig {
+         bool inform_only;
+         bool init_reboot;
+         struct in_addr requested_ip;
++#ifdef __GLIBC__
+         struct drand48_data entropy;    /* entropy pool */
++#else
++        unsigned short entropy[3];      /* entropy pool */
++#endif
+         uint64_t ms_start_delay;        /* max ms to wait before starting probe */
+         NDhcp4ClientProbeOption *options[UINT8_MAX + 1];
+         int8_t request_parameters[UINT8_MAX + 1];
+-- 
+2.24.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0004-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0004-Fix-build-with-musl-systemd-specific.patch
new file mode 100644
index 0000000..55aa4d2
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0004-Fix-build-with-musl-systemd-specific.patch
@@ -0,0 +1,26 @@
+From 80c7d3391510993cba1a7499bf33a5b2b115280d Mon Sep 17 00:00:00 2001
+From: Adrian Freihofer <adrian.freihofer@siemens.com>
+Date: Sat, 7 Mar 2020 14:24:01 +0100
+Subject: [PATCH 4/4] Fix build with musl - systemd specific
+
+---
+ src/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
+index e1150f9..2c63bac 100644
+--- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
++++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
+@@ -7,7 +7,9 @@
+ 
+ #include <errno.h>
+ #include <sys/ioctl.h>
++#ifdef __GLIBC__  /* musl supplies full set of userspace headers */
+ #include <linux/if_arp.h>
++#endif
+ #include <linux/if_infiniband.h>
+ 
+ #include "sd-dhcp6-client.h"
+-- 
+2.24.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.4.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.22.10.bb
similarity index 76%
rename from meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.4.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.22.10.bb
index 27508c4..33a2b7c 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.4.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.22.10.bb
@@ -2,9 +2,9 @@
 HOMEPAGE = "https://wiki.gnome.org/Projects/NetworkManager"
 SECTION = "net/misc"
 
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cbbffd568227ada506640fe950a4823b \
-                    file://libnm-util/COPYING;md5=1c4fa765d6eb3cd2fbd84344a1b816cd \
+LICENSE = "GPLv2+ & LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+                    file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
 "
 
 DEPENDS = " \
@@ -30,9 +30,10 @@
 SRC_URI_append_libc-musl = " \
     file://musl/0001-Fix-build-with-musl-systemd-specific.patch \
     file://musl/0002-Fix-build-with-musl.patch \
+    file://musl/0003-Fix-build-with-musl-for-n-dhcp4.patch \
+    file://musl/0004-Fix-build-with-musl-systemd-specific.patch \
 "
-SRC_URI[md5sum] = "fc86588a3ae54e0d406b560a312d5a5d"
-SRC_URI[sha256sum] = "a3bd07f695b6d3529ec6adbd9a1d6385b967e9c8ae90946f51d8852b320fd05e"
+SRC_URI[sha256sum] = "2b29ccc1531ba7ebba95a97f40c22b963838e8b6833745efe8e6fb71fd8fca77"
 
 S = "${WORKDIR}/NetworkManager-${PV}"
 
@@ -65,7 +66,7 @@
     --with-systemdsystemunitdir=${systemd_unitdir}/system --with-session-tracking=systemd, \
     --without-systemdsystemunitdir, \
 "
-PACKAGECONFIG[polkit] = "--enable-polkit --enable-polkit-agent,--disable-polkit --disable-polkit-agent,polkit"
+PACKAGECONFIG[polkit] = "--enable-polkit,--disable-polkit,polkit"
 PACKAGECONFIG[bluez5] = "--enable-bluez5-dun,--disable-bluez5-dun,bluez5"
 # consolekit is not picked by shlibs, so add it to RDEPENDS too
 PACKAGECONFIG[consolekit] = "--with-session-tracking=consolekit,,consolekit,consolekit"
@@ -75,33 +76,47 @@
 PACKAGECONFIG[dhclient] = "--with-dhclient=${base_sbindir}/dhclient,,,dhcp-client"
 PACKAGECONFIG[dnsmasq] = "--with-dnsmasq=${bindir}/dnsmasq"
 PACKAGECONFIG[nss] = "--with-crypto=nss,,nss"
-PACKAGECONFIG[glib] = "--with-libnm-glib,,dbus-glib-native dbus-glib"
 PACKAGECONFIG[resolvconf] = "--with-resolvconf=${base_sbindir}/resolvconf,,,resolvconf"
 PACKAGECONFIG[gnutls] = "--with-crypto=gnutls,,gnutls"
 PACKAGECONFIG[wifi] = "--enable-wifi=yes,--enable-wifi=no,,wpa-supplicant"
 PACKAGECONFIG[ifupdown] = "--enable-ifupdown,--disable-ifupdown"
 PACKAGECONFIG[qt4-x11-free] = "--enable-qt,--disable-qt,qt4-x11-free"
+PACKAGECONFIG[cloud-setup] = "--with-nm-cloud-setup=yes,--with-nm-cloud-setup=no"
 
-PACKAGES =+ "libnmutil libnmglib libnmglib-vpn \
+PACKAGES =+ " \
   ${PN}-nmtui ${PN}-nmtui-doc \
-  ${PN}-adsl \
+  ${PN}-adsl ${PN}-cloud-setup \
 "
 
-FILES_libnmutil += "${libdir}/libnm-util.so.*"
-FILES_libnmglib += "${libdir}/libnm-glib.so.*"
-FILES_libnmglib-vpn += "${libdir}/libnm-glib-vpn.so.*"
+SYSTEMD_PACKAGES = "${PN} ${PN}-cloud-setup"
 
 FILES_${PN}-adsl = "${libdir}/NetworkManager/${PV}/libnm-device-plugin-adsl.so"
 
+FILES_${PN}-cloud-setup = " \
+    ${libexecdir}/nm-cloud-setup \
+    ${systemd_system_unitdir}/nm-cloud-setup.service \
+    ${systemd_system_unitdir}/nm-cloud-setup.timer \
+    ${libdir}/NetworkManager/dispatcher.d/90-nm-cloud-setup.sh \
+    ${libdir}/NetworkManager/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh \
+"
+ALLOW_EMPTY_${PN}-cloud-setup = "1"
+SYSTEMD_SERVICE_${PN}-cloud-setup = "${@bb.utils.contains('PACKAGECONFIG', 'cloud-setup', 'nm-cloud-setup.service nm-cloud-setup.timer', '', d)}"
+
 FILES_${PN} += " \
     ${libexecdir} \
     ${libdir}/NetworkManager/${PV}/*.so \
-    ${nonarch_libdir}/NetworkManager/VPN \
+    ${libdir}/NetworkManager \
     ${nonarch_libdir}/NetworkManager/conf.d \
+    ${nonarch_libdir}/NetworkManager/dispatcher.d \
+    ${nonarch_libdir}/NetworkManager/dispatcher.d/pre-down.d \
+    ${nonarch_libdir}/NetworkManager/dispatcher.d/pre-up.d \
+    ${nonarch_libdir}/NetworkManager/dispatcher.d/no-wait.d \
+    ${nonarch_libdir}/NetworkManager/VPN \
+    ${nonarch_libdir}/NetworkManager/system-connections \
     ${datadir}/polkit-1 \
     ${datadir}/dbus-1 \
     ${nonarch_base_libdir}/udev/* \
-    ${systemd_unitdir}/system \
+    ${systemd_system_unitdir} \
     ${libdir}/pppd \
 "
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect/0001-trojans-tncc-wrapper.py-convert-to-python3.patch b/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect/0001-trojans-tncc-wrapper.py-convert-to-python3.patch
new file mode 100644
index 0000000..623ec10
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect/0001-trojans-tncc-wrapper.py-convert-to-python3.patch
@@ -0,0 +1,71 @@
+From de78bcac5e1fd13de0371c8e14b062b8786ade56 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Sun, 2 Feb 2020 15:53:05 +0000
+Subject: [PATCH] trojans/tncc-wrapper.py: convert to python3
+
+Use 2to3 to convert the script to python3.
+
+Upstream-Status: Pending
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ trojans/tncc-wrapper.py | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/trojans/tncc-wrapper.py b/trojans/tncc-wrapper.py
+index 0d4587bf..1a9a1f4d 100755
+--- a/trojans/tncc-wrapper.py
++++ b/trojans/tncc-wrapper.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/python2
++#!/usr/bin/python3
+ 
+ # Lifted from Russ Dill's juniper-vpn-wrap.py, thus:
+ #
+@@ -18,19 +18,19 @@
+ 
+ import subprocess
+ import mechanize
+-import cookielib
++import http.cookiejar
+ import getpass
+ import sys
+ import os
+ import zipfile
+-import urllib
++import urllib.request, urllib.parse, urllib.error
+ import socket
+ import ssl
+ import errno
+ import argparse
+ import atexit
+ import signal
+-import ConfigParser
++import configparser
+ import time
+ import binascii
+ import hmac
+@@ -39,7 +39,7 @@ import hashlib
+ def mkdir_p(path):
+     try:
+         os.mkdir(path)
+-    except OSError, exc:
++    except OSError as exc:
+         if exc.errno == errno.EEXIST and os.path.isdir(path):
+             pass
+         else:
+@@ -64,9 +64,9 @@ class Tncc:
+             if zipfile.ZipFile(self.tncc_jar, 'r').testzip() is not None:
+                 raise Exception()
+         except:
+-            print 'Downloading tncc.jar...'
++            print('Downloading tncc.jar...')
+             mkdir_p(os.path.expanduser('~/.juniper_networks'))
+-            urllib.urlretrieve('https://' + self.vpn_host
++            urllib.request.urlretrieve('https://' + self.vpn_host
+                                + '/dana-cached/hc/tncc.jar', self.tncc_jar)
+ 
+         with zipfile.ZipFile(self.tncc_jar, 'r') as jar:
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect_8.03.bb b/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect_8.03.bb
index ec36a37..597c192 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect_8.03.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openconnect/openconnect_8.03.bb
@@ -2,11 +2,14 @@
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING.LGPL;md5=243b725d71bb5df4a1e5920b344b86ad"
 
-SRC_URI = "git://git.infradead.org/users/dwmw2/openconnect.git"
+SRC_URI = " \
+    git://git.infradead.org/users/dwmw2/openconnect.git \
+    file://0001-trojans-tncc-wrapper.py-convert-to-python3.patch \
+"
 SRCREV = "ea73851969ae7a6ea54fdd2d2b8c94776af24b2a"
 
 DEPENDS = "vpnc libxml2 krb5 gettext-native"
-RDEPENDS_${PN} = "bash python"
+RDEPENDS_${PN} = "bash python3-core vpnc-script"
 
 PACKAGECONFIG ??= "gnutls lz4 libproxy"
 
@@ -22,10 +25,5 @@
 
 inherit autotools pkgconfig
 
-EXTRA_OECONF += "--with-vpnc-script=${SYSROOT_DESTDIR}${sysconfdir}/vpnc/vpnc-script \
+EXTRA_OECONF += "--with-vpnc-script=${sysconfdir}/vpnc/vpnc-script \
                  --disable-static"
-
-do_configure_append() {
-    # script has /usr/bin/python2 path hardcoded
-    sed -i -e 's=python2\.*=python=g' ${S}/trojans/tncc-wrapper.py
-}
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python-networkmanager_2.1.bb b/meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python3-networkmanager_2.1.bb
similarity index 82%
rename from meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python-networkmanager_2.1.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python3-networkmanager_2.1.bb
index 3aa41f1..91a6edd 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python-networkmanager_2.1.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/python-networkmanager/python3-networkmanager_2.1.bb
@@ -8,6 +8,6 @@
 SRC_URI[sha256sum] = "aef1e34d98d7bec7cc368e0ca0f2e97493f9b5ebe6d7103f8f6460cfca3dc6fc"
 
 PYPI_PACKAGE = "python-networkmanager"
-inherit pypi setuptools
+inherit pypi setuptools3
 
-RDEPENDS_${PN} = "networkmanager python-dbus python-six"
+RDEPENDS_${PN} = "networkmanager python3-dbus python3-six"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/relayd/relayd_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/relayd/relayd_git.bb
index 98dc41a..e3134e4 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/relayd/relayd_git.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/relayd/relayd_git.bb
@@ -12,6 +12,8 @@
 SRCREV = "ad0b25ad74345d367c62311e14b279f5ccb8ef13"
 PV = "0.0.1+git${SRCPV}"
 
+UPSTREAM_CHECK_COMMITS = "1"
+
 S = "${WORKDIR}/git"
 
 inherit cmake
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.11.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.13.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.11.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.13.bb
index ffdc15a..71d8fa2 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.11.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.13.bb
@@ -34,8 +34,8 @@
            file://0001-samba-fix-musl-lib-without-innetgr.patch \
           "
 
-SRC_URI[md5sum] = "eebd021de840312d7e08959e8a3d0ba1"
-SRC_URI[sha256sum] = "609f4232e04c6eaad0e3b8e00cd837683a960ebb95c1fe3349e968d1d1dff894"
+SRC_URI[md5sum] = "e7906580bf06dae087e99ef8254f327d"
+SRC_URI[sha256sum] = "49eb6426e97cbf538e416e51ed8535930382512ad2d13d5ffd7f4336aa7faf63"
 
 UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.10(\.\d+)+).tar.gz"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.33.bb b/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.33.bb
index 6ff103c..42fc262 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.33.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.33.bb
@@ -17,15 +17,18 @@
            file://0004-lp1039729.patch \
            file://0005-lp1191197.patch \
 "
+
+UPSTREAM_CHECK_URI = "https://launchpad.net/ufw"
+
 SRC_URI[md5sum] = "3747b453d76709e5a99da209fc0bb5f5"
 SRC_URI[sha256sum] = "5f85a8084ad3539b547bec097286948233188c971f498890316dec170bdd1da8"
 
-inherit setuptools features_check
+inherit setuptools3 features_check
 
 RDEPENDS_${PN} = " \
                   iptables \
-                  python \
-                  python-modules \
+                  python3 \
+                  python3-modules \
                  "
 
 RRECOMMENDS_${PN} = " \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/vpnc/vpnc_0.5.3.bb b/meta-openembedded/meta-networking/recipes-connectivity/vpnc/vpnc_0.5.3.bb
index ea21799..54e855a 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/vpnc/vpnc_0.5.3.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/vpnc/vpnc_0.5.3.bb
@@ -28,6 +28,8 @@
 PACKAGECONFIG[gnutls] = ",,gnutls"
 PACKAGECONFIG[openssl] = ",,openssl"
 
+PACKAGES =+ "${PN}-script"
+
 S = "${WORKDIR}/git"
 
 inherit perlnative pkgconfig
@@ -54,6 +56,8 @@
     install -m 755 ${D}${sysconfdir}/vpnc/vpnc-script ${SYSROOT_DESTDIR}${sysconfdir}/vpnc
 }
 
+FILES_${PN}-script = "${sysconfdir}/vpnc/vpnc-script"
+
 CONFFILES_${PN} = "${sysconfdir}/vpnc/default.conf"
-RDEPENDS_${PN} = "perl-module-io-file"
+RDEPENDS_${PN} = "perl-module-io-file ${PN}-script"
 RRECOMMENDS_${PN} = "kernel-module-tun"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.3.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.4.0.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.3.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.4.0.bb
index a6c8cd0..db7b0d4 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.3.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.4.0.bb
@@ -13,7 +13,7 @@
 RPROVIDES_${PN} = "cyassl"
 
 SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https"
-SRCREV = "3f13b49fa318fbd3216d7da36d942e7c276d3413"
+SRCREV = "e116c89a58af750421d82ece13f80516d2bde02e"
 S = "${WORKDIR}/git"
 
 inherit autotools