diff options
author | takeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp> | 2020-11-02 11:07:33 +0900 |
---|---|---|
committer | takeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp> | 2020-11-02 11:07:33 +0900 |
commit | 1c7d6584a7811b7785ae5c1e378f14b5ba0971cf (patch) | |
tree | cd70a267a5ef105ba32f200aa088e281fbd85747 /external/meta-openembedded/meta-networking/recipes-support | |
parent | 4204309872da5cb401cbb2729d9e2d4869a87f42 (diff) |
basesystem-jjsandbox/ToshikazuOhiwa/master-jj
recipes
Diffstat (limited to 'external/meta-openembedded/meta-networking/recipes-support')
166 files changed, 2664 insertions, 5645 deletions
diff --git a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch index e8be45e6..eb58389c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch @@ -8,24 +8,17 @@ which OE uses to pass tweaks Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - Makefile | 15 +++++++-------- - extensions/Makefile | 5 ++++- - 2 files changed, 11 insertions(+), 9 deletions(-) + Makefile | 10 ++++------ + extensions/Makefile | 4 ++++ + 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile -index 7bead0d..336db6b 100644 +index 62ebdf2..cd06813 100644 --- a/Makefile +++ b/Makefile -@@ -7,15 +7,13 @@ LIBDIR:=$(PREFIX)/lib - BINDIR:=$(PREFIX)/sbin - MANDIR:=$(PREFIX)/man - man8dir=$(MANDIR)/man8 --INITDIR:=/etc/rc.d/init.d -+INITDIR:=/etc/init.d - SYSCONFIGDIR:=/etc/sysconfig - DESTDIR:= +@@ -12,9 +12,7 @@ DESTDIR:= - MANS = arptables.8 arptables-save.8 arptables-restore.8 + MANS = arptables-legacy.8 arptables-save.8 arptables-restore.8 -COPT_FLAGS:=-O2 -CFLAGS:=$(COPT_FLAGS) -Wall -Wunused -I$(KERNEL_DIR)/include/ -Iinclude/ -DARPTABLES_VERSION=\"$(ARPTABLES_VERSION)\" #-g -DDEBUG #-pg # -DARPTC_DEBUG @@ -34,8 +27,8 @@ index 7bead0d..336db6b 100644 ifndef ARPT_LIBDIR ARPT_LIBDIR:=$(LIBDIR)/arptables endif -@@ -25,13 +23,13 @@ include extensions/Makefile - all: arptables libarptc/libarptc.a +@@ -24,13 +22,13 @@ include extensions/Makefile + all: arptables-legacy libarptc/libarptc.a arptables.o: arptables.c - $(CC) $(CFLAGS) -c -o $@ $< @@ -51,29 +44,18 @@ index 7bead0d..336db6b 100644 libarptc/libarptc.a: libarptc/libarptc.o $(AR) rcs $@ $< -@@ -53,7 +51,8 @@ scripts: arptables-save arptables-restore arptables.sysv - install -m 0755 arptables-restore_ $(DESTDIR)$(BINDIR)/arptables-restore - cat arptables.sysv | sed 's/__EXEC_PATH__/$(tmp1)/g' | sed 's/__SYSCONFIG__/$(tmp2)/g' > arptables.sysv_ - if [ "$(DESTDIR)" != "" ]; then mkdir -p $(DESTDIR)$(INITDIR); fi -- if test -d $(DESTDIR)$(INITDIR); then install -m 0755 arptables.sysv_ $(DESTDIR)$(INITDIR)/arptables; fi -+ install -d $(DESTDIR)$(INITDIR) -+ install -m 0755 arptables.sysv_ $(DESTDIR)$(INITDIR)/arptables - rm -f arptables-save_ arptables-restore_ arptables.sysv_ - - .PHONY: install-man diff --git a/extensions/Makefile b/extensions/Makefile -index 0189cc9..b046425 100644 +index 0189cc9..e8af782 100644 --- a/extensions/Makefile +++ b/extensions/Makefile -@@ -4,4 +4,7 @@ EXT_FUNC+=standard mangle CLASSIFY MARK - EXT_OBJS+=$(foreach T,$(EXT_FUNC), extensions/arpt_$(T).o) +@@ -5,3 +5,7 @@ EXT_OBJS+=$(foreach T,$(EXT_FUNC), extensions/arpt_$(T).o) extensions/ebt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h -- $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< + $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< + $(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $< + +extensions/arpt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h + $(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $< -- -2.12.1 +2.17.1 diff --git a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch deleted file mode 100644 index 24956c4c..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch +++ /dev/null @@ -1,77 +0,0 @@ -Index: arptables-v0.0.3-4/arptables.sysv -=================================================================== ---- arptables-v0.0.3-4.orig/arptables.sysv 2010-03-22 16:28:03.000000000 +0300 -+++ arptables-v0.0.3-4/arptables.sysv 2010-03-22 16:27:51.000000000 +0300 -@@ -12,10 +12,10 @@ - # config: __SYSCONFIG__/arptables - - source /etc/init.d/functions --source /etc/sysconfig/network -+# source /etc/sysconfig/network - - # Check that networking is up. --[ ${NETWORKING} = "no" ] && exit 0 -+# [ ${NETWORKING} = "no" ] && exit 0 - - [ -x __EXEC_PATH__/arptables ] || exit 1 - [ -x __EXEC_PATH__/arptables-save ] || exit 1 -@@ -28,32 +28,30 @@ - desc="Arp filtering" - - start() { -- echo -n $"Starting $desc ($prog): " -+ echo -n "Starting $desc ($prog): " - __EXEC_PATH__/arptables-restore < __SYSCONFIG__/arptables || RETVAL=1 - - if [ $RETVAL -eq 0 ]; then -- success "$prog startup" -- rm -f /var/lock/subsys/$prog -+ echo "$prog ok" -+ touch /var/lock/subsys/$prog - else -- failure "$prog startup" -+ echo "$prog failed" - fi - -- echo - return $RETVAL - } - - stop() { -- echo -n $"Stopping $desc ($prog): " -+ echo -n "Stopping $desc ($prog): " - __EXEC_PATH__/arptables-restore < /dev/null || RETVAL=1 - - if [ $RETVAL -eq 0 ]; then -- success "$prog shutdown" -- rm -f %{_localstatedir}/lock/subsys/$prog -+ echo "$prog stopped" -+ rm -f /var/lock/subsys/$prog - else -- failure "$prog shutdown" -+ echo "$prog failed to stop" - fi - -- echo - return $RETVAL - } - -@@ -63,15 +61,14 @@ - } - - save() { -- echo -n $"Saving $desc ($prog): " -+ echo -n "Saving $desc ($prog): " - __EXEC_PATH__/arptables-save > __SYSCONFIG__/arptables || RETVAL=1 - - if [ $RETVAL -eq 0 ]; then -- success "$prog saved" -+ echo "$prog saved" - else -- failure "$prog saved" -+ echo "$prog is not saved" - fi -- echo - } - - case "$1" in diff --git a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch deleted file mode 100644 index f332658b..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cd312bc0e3686404428878d23b8888cba09a20e1 Mon Sep 17 00:00:00 2001 -From: Robert Yang <liezhi.yang@windriver.com> -Date: Thu, 18 Sep 2014 19:46:58 -0700 -Subject: [PATCH] arptables.sysv: remove bashism - -Use "." to replace of "source", and change /bin/bash to /bin/sh, the -echo $"foo" works well in busybox. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> ---- - arptables.sysv | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/arptables.sysv b/arptables.sysv -index 7a90bd2..7710376 100644 ---- a/arptables.sysv -+++ b/arptables.sysv -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - # - # init script for arptables - # -@@ -11,7 +11,7 @@ - # - # config: __SYSCONFIG__/arptables - --source /etc/init.d/functions -+. /etc/init.d/functions - # source /etc/sysconfig/network - - # Check that networking is up. --- -1.7.9.5 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables_git.bb b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables_git.bb index cec1d1f7..c02a1994 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/arptables/arptables_git.bb @@ -2,15 +2,13 @@ SUMMARY = "Administration tool for arp packet filtering" SECTION = "net" LICENSE = "GPL-2.0" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" -SRCREV = "f4ab8f63f11a72f14687a6646d04ae1bae3fa45f" -PV = "0.0.4+git${SRCPV}" +SRCREV = "efae8949e31f8b2eb6290f377a28384cecaf105a" +PV = "0.0.5+git${SRCPV}" SRC_URI = " \ git://git.netfilter.org/arptables \ file://0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch \ - file://arptables-init-busybox.patch \ file://arptables-arpt-get-target-fix.patch \ - file://arptables-remove-bashism.patch \ file://arptables.service \ " SRC_URI[arptables.md5sum] = "1d4ab05761f063b0751645d8f2b8f8e5" diff --git a/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch b/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch deleted file mode 100644 index 8cadb2bb..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch +++ /dev/null @@ -1,112 +0,0 @@ -From 12414304245cce6ef0e8b9547949be5109845353 Mon Sep 17 00:00:00 2001 -From: Changqing Li <changqing.li@windriver.com> -Date: Tue, 24 Jul 2018 13:33:33 +0800 -Subject: [PATCH] cmake: Install libcares.pc - -Prepare and install libcares.pc file during cmake build, so libraries -using pkg-config to find libcares will not fail. - -Signed-off-by: Alexey Firago <alexey_firago@mentor.com> - -update to 1.14.0, fix patch warning - -Signed-off-by: Changqing Li <changqing.li@windriver.com> ---- - CMakeLists.txt | 23 +++++++++++++++++++++++ - libcares.pc.cmakein | 20 ++++++++++++++++++++ - 2 files changed, 43 insertions(+) - create mode 100644 libcares.pc.cmakein - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 60a880c..71eaa53 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -193,22 +193,30 @@ ADD_DEFINITIONS(${SYSFLAGS}) - - - # Tell C-Ares about libraries to depend on -+# Also pass these libraries to pkg-config file -+SET(CARES_PRIVATE_LIBS_LIST) - IF (HAVE_LIBRESOLV) - LIST (APPEND CARES_DEPENDENT_LIBS resolv) -+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lresolv") - ENDIF () - IF (HAVE_LIBNSL) - LIST (APPEND CARES_DEPENDENT_LIBS nsl) -+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lnsl") - ENDIF () - IF (HAVE_LIBSOCKET) - LIST (APPEND CARES_DEPENDENT_LIBS socket) -+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lsocket") - ENDIF () - IF (HAVE_LIBRT) - LIST (APPEND CARES_DEPENDENT_LIBS rt) -+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lrt") - ENDIF () - IF (WIN32) - LIST (APPEND CARES_DEPENDENT_LIBS ws2_32) -+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lws2_32") - ENDIF () - -+string (REPLACE ";" " " CARES_PRIVATE_LIBS "${CARES_PRIVATE_LIBS_LIST}") - - # When checking for symbols, we need to make sure we set the proper - # headers, libraries, and definitions for the detection to work properly -@@ -514,6 +522,15 @@ CONFIGURE_FILE (ares_build.h.cmake ${PROJECT_BINARY_DIR}/ares_build.h) - # Write ares_config.h configuration file. This is used only for the build. - CONFIGURE_FILE (ares_config.h.cmake ${PROJECT_BINARY_DIR}/ares_config.h) - -+# Pass required CFLAGS to pkg-config in case of static library -+IF (CARES_STATIC) -+ SET (CPPFLAG_CARES_STATICLIB "-DCARES_STATICLIB") -+ENDIF() -+ -+# Write ares_config.h configuration file. This is used only for the build. -+CONFIGURE_FILE (libcares.pc.cmakein ${PROJECT_BINARY_DIR}/libcares.pc @ONLY) -+ -+ - - # TRANSFORM_MAKEFILE_INC - # -@@ -664,6 +681,12 @@ IF (CARES_INSTALL) - INSTALL (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcares.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") - ENDIF () - -+# pkg-config file -+IF (CARES_INSTALL) -+ SET (PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig") -+ INSTALL (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcares.pc" DESTINATION ${PKGCONFIG_INSTALL_DIR}) -+ENDIF () -+ - # Legacy chain-building variables (provided for compatibility with old code). - # Don't use these, external code should be updated to refer to the aliases directly (e.g., Cares::cares). - SET (CARES_FOUND 1 CACHE INTERNAL "CARES LIBRARY FOUND") -diff --git a/libcares.pc.cmakein b/libcares.pc.cmakein -new file mode 100644 -index 0000000..3579256 ---- /dev/null -+++ b/libcares.pc.cmakein -@@ -0,0 +1,20 @@ -+#*************************************************************************** -+# Project ___ __ _ _ __ ___ ___ -+# / __|____ / _` | '__/ _ \/ __| -+# | (_|_____| (_| | | | __/\__ \ -+# \___| \__,_|_| \___||___/ -+# -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=@CMAKE_INSTALL_PREFIX@ -+libdir=@CMAKE_INSTALL_FULL_LIBDIR@ -+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ -+ -+Name: c-ares -+URL: http://daniel.haxx.se/projects/c-ares/ -+Description: asynchronous DNS lookup library -+Version: @VERSION@ -+Requires: -+Requires.private: -+Cflags: -I${includedir} @CPPFLAG_CARES_STATICLIB@ -+Libs: -L${libdir} -lcares -+Libs.private: @CARES_PRIVATE_LIBS@ --- -2.7.4 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares_1.14.0.bb b/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares_1.14.0.bb deleted file mode 100644 index b31543d9..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/c-ares/c-ares_1.14.0.bb +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2012-2014 LG Electronics, Inc. -SUMMARY = "c-ares is a C library that resolves names asynchronously." -HOMEPAGE = "http://daniel.haxx.se/projects/c-ares/" -SECTION = "libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE.md;md5=fb997454c8d62aa6a47f07a8cd48b006" - -PV = "1.14.0+gitr${SRCPV}" - -SRC_URI = "\ - git://github.com/c-ares/c-ares.git \ - file://cmake-install-libcares.pc.patch \ -" -SRCREV = "17dc1b3102e0dfc3e7e31369989013154ee17893" - -UPSTREAM_CHECK_GITTAGREGEX = "cares-(?P<pver>\d+_(\d_?)+)" - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig - -PACKAGES =+ "${PN}-utils" - -FILES_${PN}-utils = "${bindir}" - -BBCLASSEXTEND = "native nativesdk" diff --git a/external/meta-openembedded/meta-networking/recipes-support/celt051/celt051_git.bb b/external/meta-openembedded/meta-networking/recipes-support/celt051/celt051_git.bb index 11680052..12b9124f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/celt051/celt051_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/celt051/celt051_git.bb @@ -9,7 +9,7 @@ with high quality. Unlike these formats CELT imposes very little delay \ on the signal, even less than is typical for speech centric formats \ like Speex, GSM, or G.729." -LICENSE = "BSD" +LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;md5=375f60ab360d17f0172737036ff155b2" PV = "0.5.1.3+git${SRCPV}" diff --git a/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch new file mode 100644 index 00000000..17b63535 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch @@ -0,0 +1,29 @@ +From 11ec10cdb5ab4b94c5999e018a9c854419997761 Mon Sep 17 00:00:00 2001 +From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> +Date: Wed, 10 Apr 2019 03:18:17 +0200 +Subject: [PATCH] Fix compilation with musl + +Fixes: +../hash_intmd5.c:58: undefined reference to `MIN' + +Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> +--- + hash_intmd5.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/hash_intmd5.c b/hash_intmd5.c +index 49da1cf..47efe4c 100644 +--- a/hash_intmd5.c ++++ b/hash_intmd5.c +@@ -33,6 +33,8 @@ + + #include "md5.c" + ++#include <sys/param.h> ++ + static MD5_CTX ctx; + + int +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch index 9f943cdc..187898a6 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch @@ -1,7 +1,7 @@ -From 9ca48a6fef1da1bb0dd67ab94256c7e240da1834 Mon Sep 17 00:00:00 2001 +From f35e07aceb4a16121d83b47ee77990018bec98ea Mon Sep 17 00:00:00 2001 From: Joe Slater <jslater@windriver.com> Date: Thu, 9 Mar 2017 10:58:06 -0800 -Subject: [PATCH] chrony: fix build failure for arma9 +Subject: [PATCH] chrony: fix build failure for arma9 Eliminate references to syscalls not available for ARM_EABI. Also add a dependency on libseccomp @@ -18,16 +18,15 @@ Subject: [PATCH] chrony: fix build failure for arma9 Refresh patch for new upstream version. Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org> - --- - sys_linux.c | 19 +++++++++++++------ - 1 file changed, 13 insertions(+), 6 deletions(-) + sys_linux.c | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/sys_linux.c b/sys_linux.c -index f4b532d..d05fa24 100644 +index 898dc7a..b268ad1 100644 --- a/sys_linux.c +++ b/sys_linux.c -@@ -482,14 +482,14 @@ SYS_Linux_EnableSystemCallFilter(int level) +@@ -479,14 +479,14 @@ SYS_Linux_EnableSystemCallFilter(int level) const int syscalls[] = { /* Clock */ SCMP_SYS(adjtimex), SCMP_SYS(clock_gettime), SCMP_SYS(gettimeofday), @@ -38,24 +37,24 @@ index f4b532d..d05fa24 100644 - SCMP_SYS(getrlimit), SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn), + SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn), SCMP_SYS(rt_sigprocmask), SCMP_SYS(set_tid_address), SCMP_SYS(sigreturn), - SCMP_SYS(wait4), + SCMP_SYS(wait4), SCMP_SYS(waitpid), /* Memory */ - SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap), SCMP_SYS(mmap2), + SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap2), SCMP_SYS(mprotect), SCMP_SYS(mremap), SCMP_SYS(munmap), SCMP_SYS(shmdt), /* Filesystem */ - SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown), SCMP_SYS(chown32), -@@ -500,14 +500,21 @@ SYS_Linux_EnableSystemCallFilter(int level) + SCMP_SYS(_llseek), SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown), +@@ -499,14 +499,22 @@ SYS_Linux_EnableSystemCallFilter(int level) SCMP_SYS(bind), SCMP_SYS(connect), SCMP_SYS(getsockname), SCMP_SYS(getsockopt), - SCMP_SYS(recvfrom), SCMP_SYS(recvmmsg), SCMP_SYS(recvmsg), - SCMP_SYS(sendmmsg), SCMP_SYS(sendmsg), SCMP_SYS(sendto), + SCMP_SYS(recv), SCMP_SYS(recvfrom), SCMP_SYS(recvmmsg), SCMP_SYS(recvmsg), + SCMP_SYS(send), SCMP_SYS(sendmmsg), SCMP_SYS(sendmsg), SCMP_SYS(sendto), - /* TODO: check socketcall arguments */ - SCMP_SYS(socketcall), /* General I/O */ SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(openat), SCMP_SYS(pipe), -- SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex), SCMP_SYS(select), -+ SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex), - SCMP_SYS(set_robust_list), SCMP_SYS(write), + SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(ppoll), SCMP_SYS(pselect6), SCMP_SYS(read), +- SCMP_SYS(futex), SCMP_SYS(select), SCMP_SYS(set_robust_list), SCMP_SYS(write), ++ SCMP_SYS(futex), SCMP_SYS(set_robust_list), SCMP_SYS(write), /* Miscellaneous */ SCMP_SYS(getrandom), SCMP_SYS(sysinfo), SCMP_SYS(uname), + /* not always available */ @@ -67,6 +66,10 @@ index f4b532d..d05fa24 100644 + /* TODO: check socketcall arguments */ + SCMP_SYS(socketcall), +#endif ++ }; const int socket_domains[] = { +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.3.bb b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.5.bb index 2586370f..7c6356d2 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.3.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.5.bb @@ -35,8 +35,12 @@ SRC_URI = "https://download.tuxfamily.org/chrony/chrony-${PV}.tar.gz \ file://chronyd \ file://arm_eabi.patch \ " -SRC_URI[md5sum] = "81ab62cf5d60b4b3fa8cd2c1b267ffd9" -SRC_URI[sha256sum] = "0d1fb2d5875032f2d5a86f3770374c87ee4c941916f64171e81f7684f2a73128" + +SRC_URI_append_libc-musl = " \ + file://0001-Fix-compilation-with-musl.patch \ +" +SRC_URI[md5sum] = "5f66338bc940a9b51eede8f391e7bed3" +SRC_URI[sha256sum] = "4e02795b1260a4ec51e6ace84149036305cc9fc340e65edb9f8452aa611339b5" DEPENDS = "pps-tools" diff --git a/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils/0001-Bugfix-Modify-the-dir-of-install-exec-hook-and.patch b/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils/0001-Bugfix-Modify-the-dir-of-install-exec-hook-and.patch new file mode 100644 index 00000000..233ae40c --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils/0001-Bugfix-Modify-the-dir-of-install-exec-hook-and.patch @@ -0,0 +1,43 @@ +From f61f5f8a328207867b5c523b1c6bef6aaecaab88 Mon Sep 17 00:00:00 2001 +From: Wang Mingyu <wangmy@cn.fujitsu.com> +Date: Sat, 15 Feb 2020 16:05:58 +0800 +Subject: [PATCH] Bugfix: Modify the dir of install-exec-hook and + install-data-hook + +Error message: +(cd /sbin && ln -sf mount.cifs mount.smb3) + /yocto/work001/fnst/wangmy/build/tmp/hosttools/install -c mount.cifs +'/yocto/work001/fnst/wangmy/build/tmp/work/core2-64-poky-linux/cifs-utils/6.10-r0/image/sbin' +make install-data-hook +ln: failed to create symbolic link 'mount.smb3': Permission denied + +Upstream-Status: Pending + +Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> +--- + Makefile.am | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index fe9cd34..e9be6b3 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -119,11 +119,11 @@ endif + SUBDIRS = contrib + + install-exec-hook: +- (cd $(ROOTSBINDIR) && ln -sf mount.cifs mount.smb3) ++ (cd $(DESTDIR)$(ROOTSBINDIR) && ln -sf mount.cifs mount.smb3) + + install-data-hook: +- (cd $(man8dir) && ln -sf mount.cifs.8 mount.smb3.8) ++ (test -n "$(man_MANS)" || exit 0; cd $(DESTDIR)$(man8dir) && ln -sf mount.cifs.8 mount.smb3.8) + + uninstall-hook: +- (cd $(ROOTSBINDIR) && rm -f $(ROOTSBINDIR)/mount.smb3) +- (cd $(man8dir) && rm -f $(man8dir)/mount.smb3.8) ++ (cd $(DESTDIR)$(ROOTSBINDIR) && rm -f $(DESTDIR)$(ROOTSBINDIR)/mount.smb3) ++ (test -n "$(man_MANS)" || exit 0; cd $(DESTDIR)$(man8dir) && rm -f $(DESTDIR)$(man8dir)/mount.smb3.8) +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_git.bb b/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.10.bb index 198e3ef9..8d82ee45 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.10.bb @@ -4,12 +4,10 @@ SECTION = "otherosfs" LICENSE = "GPLv3 & LGPLv3" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" -PV = "6.7" +PV = "6.10" -SRCREV = "8101a07871f185c7044fa2ca221b282ab4607c8b" -SRC_URI = "git://git.samba.org/cifs-utils.git \ - file://0001-mount.cifs-Remove-data_blob.h-include.patch \ - " +SRCREV = "5ff5fc2ecc10353fd39ad508db5c2828fd2d8d9a" +SRC_URI = "git://git.samba.org/cifs-utils.git" S = "${WORKDIR}/git" DEPENDS += "libtalloc" @@ -24,6 +22,10 @@ PACKAGECONFIG[cifsidmap] = "--enable-cifsidmap,--disable-cifsidmap,keyutils samb PACKAGECONFIG[cifsacl] = "--enable-cifsacl,--disable-cifsacl,samba" PACKAGECONFIG[pam] = "--enable-pam --with-pamdir=${base_libdir}/security,--disable-pam,libpam keyutils" +SRC_URI += " \ + file://0001-Bugfix-Modify-the-dir-of-install-exec-hook-and.patch \ + " + inherit autotools pkgconfig do_install_append() { diff --git a/external/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch b/external/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch deleted file mode 100644 index 07f2a572..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch +++ /dev/null @@ -1,32 +0,0 @@ -Upstream-Status: Backport -Signed-off-by: S. Lockwood-Childs <sjl@vctlabs.com> - -From 272d523a57a4e8791d625a479128613be5e401f5 Mon Sep 17 00:00:00 2001 -From: Thomas Witt <pyromaniac@exherbo.org> -Date: Wed, 15 Mar 2017 20:20:44 +0000 -Subject: [PATCH] mount.cifs: Remove data_blob.h include - -data_blob.h includes talloc.h from libtalloc, but that is only marked as -a dependency for cifs.upcall. No symbols from that header are used by -cifs.mount, so remove it to avoid the libtalloc dependency - -Signed-off-by: Thomas Witt <pyromaniac@exherbo.org> ---- - mount.cifs.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/mount.cifs.c b/mount.cifs.c -index 13b71ef..2612feb 100644 ---- a/mount.cifs.c -+++ b/mount.cifs.c -@@ -61,7 +61,6 @@ - #include "mount.h" - #include "util.h" - #include "resolve_host.h" --#include "data_blob.h" - - #ifndef MS_MOVE - #define MS_MOVE 8192 --- -1.9.4 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb b/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb index 31875ea5..4ecaabd7 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb @@ -4,18 +4,13 @@ SECTION = "doc" LICENSE = "DMTF" -SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-Doc.zip \ +SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-Doc.zip;subdir=${BP} \ file://LICENSE \ " SRC_URI[md5sum] = "3d01940bc1085c6c42184c25fb61f739" SRC_URI[sha256sum] = "3174cf0f8657b19d80dc59e184778d8e553da424728cb2966fe9d5428dd84267" LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=eecc6f71a56ff3caf17f15bf7aeac7b4" -do_unpack() { - unzip -q ${DL_DIR}/cim_schema_${PV}Final-Doc.zip -d ${S} - cp -f ${FILE_DIRNAME}/files/LICENSE ${WORKDIR}/ -} - do_install() { install -d -m 0755 ${D}${datadir}/doc/cim-schema-${PV}-docs cp -R --no-dereference --preserve=mode,links -v ${S}/* ${D}${datadir}/doc/cim-schema-${PV}-docs diff --git a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb b/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb index a14de46d..67d1db22 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb @@ -4,18 +4,13 @@ LICENSE = "DMTF" RCONFLICTS_${PN} = "cim-schema-exper" -SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-MOFs.zip \ +SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-MOFs.zip;subdir=${BP} \ file://LICENSE \ " SRC_URI[md5sum] = "a9bdf17c7374e3b5b7adeaac4842c4ad" SRC_URI[sha256sum] = "dbfa3064ea427acd71a4bebbc172ca2dc44b0b09a6d83b0945b9ffa988a9058a" LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=eecc6f71a56ff3caf17f15bf7aeac7b4" -do_unpack() { - unzip -q ${DL_DIR}/cim_schema_${PV}Final-MOFs.zip -d ${S} - cp -f ${FILE_DIRNAME}/files/LICENSE ${WORKDIR}/ -} - do_install() { install -d -m 0755 ${D}${datadir}/mof/cimv${PV}/ install -d -m 0755 ${D}${datadir}/doc/cim-schema-${PV} diff --git a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE b/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE deleted file mode 100644 index 54a28120..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 1998-2008 Distributed Management Task Force, Inc. (DMTF). -// All rights reserved. -// DMTF is a not-for-profit association of industry members dedicated -// to promoting enterprise and systems management and interoperability. -// DMTF specifications and documents may be reproduced by -// members and non-members, provided that correct attribution is given. -// As DMTF specifications may be revised from time to time, -// the particular version and release date should always be noted. -// -// Implementation of certain elements of this standard or proposed -// standard may be subject to third party patent rights, including -// provisional patent rights (herein "patent rights"). DMTF makes -// no representations to users of the standard as to the existence -// of such rights, and is not responsible to recognize, disclose, or -// identify any or all such third party patent right, owners or -// claimants, nor for any incomplete or inaccurate identification or -// disclosure of such rights, owners or claimants. DMTF shall have no -// liability to any party, in any manner or circumstance, under any -// legal theory whatsoever, for failure to recognize, disclose, or -// identify any such third party patent rights, or for such party's -// reliance on the standard or incorporation thereof in its product, -// protocols or testing procedures. DMTF shall have no liability to -// any party implementing such standard, whether such implementation -// is foreseeable or not, nor to any patent owner or claimant, and shall -// have no liability or responsibility for costs or losses incurred if -// a standard is withdrawn or modified after publication, and shall be -// indemnified and held harmless by any party implementing the -// standard from any and all claims of infringement by a patent owner -// for such implementations. -// -// For information about patents held by third-parties which have -// notified the DMTF that, in their opinion, such patent may relate to -// or impact implementations of DMTF standards, visit -// http://www.dmtf.org/about/policies/disclosures.php. diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq.inc b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq.inc index 4f4bbf14..33678e23 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq.inc +++ b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq.inc @@ -12,6 +12,7 @@ SRC_URI = "http://www.thekelleys.org.uk/dnsmasq/${@['archive/', ''][float(d.getV file://dnsmasq.conf \ file://dnsmasq-resolvconf.service \ file://dnsmasq-noresolvconf.service \ + file://dnsmasq-resolved.conf \ " inherit pkgconfig update-rc.d systemd @@ -58,6 +59,8 @@ do_install () { else install -m 0644 ${WORKDIR}/dnsmasq-noresolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service fi + install -d ${D}${sysconfdir}/systemd/resolved.conf.d/ + install -m 0644 ${WORKDIR}/dnsmasq-resolved.conf ${D}${sysconfdir}/systemd/resolved.conf.d/ install -m 0755 ${S}/contrib/lease-tools/dhcp_release ${D}${bindir} diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.79.bb b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.79.bb deleted file mode 100644 index a66b9a9a..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.79.bb +++ /dev/null @@ -1,8 +0,0 @@ -require dnsmasq.inc - -SRC_URI[dnsmasq-2.79.md5sum] = "5d7120a46d0c16a334f46757d7e2ba55" -SRC_URI[dnsmasq-2.79.sha256sum] = "77512dd6f31ffd96718e8dcbbf54f02c083f051d4cca709bd32540aea269f789" -SRC_URI += "\ - file://lua.patch \ -" - diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.81.bb b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.81.bb new file mode 100644 index 00000000..92415386 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/dnsmasq_2.81.bb @@ -0,0 +1,8 @@ +require dnsmasq.inc + +SRC_URI[dnsmasq-2.81.md5sum] = "e43808177a773014b5892ccba238f7a8" +SRC_URI[dnsmasq-2.81.sha256sum] = "3c28c68c6c2967c3a96e9b432c0c046a5df17a426d3a43cffe9e693cf05804d0" +SRC_URI += "\ + file://lua.patch \ +" + diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf new file mode 100644 index 00000000..33f46496 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf @@ -0,0 +1,3 @@ +# Avoid conflicts between dnsmasq and systemd-resolved about port 53 +[Resolve] +DNSStubListener=no diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf index 9e5ab9f8..2897b903 100755 --- a/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf +++ b/external/meta-openembedded/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf @@ -2,7 +2,7 @@ # # Format is one option per line, legal options are the same # as the long options legal on the command line. See -# "/usr/sbin/dnsmasq --help" or "man 8 dnsmasq" for details. +# "/usr/bin/dnsmasq --help" or "man 8 dnsmasq" for details. # Listen on this specific port instead of the standard DNS port # (53). Setting this to zero completely disables DNS function, diff --git a/external/meta-openembedded/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb b/external/meta-openembedded/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb deleted file mode 100644 index ca59bd21..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb +++ /dev/null @@ -1,35 +0,0 @@ -SUMMARY = "DNSSEC and DLV configuration and priming tool" -DESCRIPTION = "\ -DNSSEC configuration and priming tool. Keys are required until the root \ -is signed, as well as for local unpublished DNSSEC keys to be preloaded \ -into the recursive nameserver. These DNSSEC configuration files can be \ -directly included in the bind or unbound nameserver configuration files. \ -dnssec-conf includes a commandline configuration client for Bind and \ -Unbound, known DNSSEC keys, URL's to official publication pages of keys, \ -and harvested keys, as well a script to harvest DNSKEY's from DNS. \ -See also: system-config-dnssec" -HOMEPAGE = "https://github.com/xelerance/dnssec-conf" -SECTION = "net" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=0636e73ff0215e8d672dc4c32c317bb3" -DEPENDS += "xmlto-native docbook-xml-dtd4-native \ - docbook-xsl-stylesheets-native libxslt-native" - -SRC_URI = "git://github.com/xelerance/dnssec-conf.git" -SRCREV = "8e799683736b4a7b5e5e78f98fba0a6f48393537" - -S = "${WORKDIR}/git" - -do_install () { - rm -rf ${D} - make PREFIX=${prefix} DESTDIR=${D} ETCDIR=${D}${sysconfdir} install - # We no longer ship trust anchors. Most of these are in the DLV Registry now. - # and it prevents the problem of shipping outdated trust anchors. - # For DLV, we ship the ISC DLV Registry key - rm -rf ${D}${sysconfdir}/pki/dnssec-keys/harvest/* - rm -rf ${D}${sysconfdir}/pki/dnssec-keys/production/reverse/* - install -d -m 0755 ${D}${sysconfdir}/sysconfig - install -m 0644 packaging/fedora/dnssec.sysconfig ${D}${sysconfdir}/sysconfig/dnssec -} - -RDEPENDS_${PN} = "python" diff --git a/external/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.33.bb b/external/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.4.bb index 882d5d55..0f7fad2b 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.33.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.4.bb @@ -12,14 +12,14 @@ SRC_URI = "http://dovecot.org/releases/2.2/dovecot-${PV}.tar.gz \ file://0001-doveadm-Fix-parallel-build.patch \ " -SRC_URI[md5sum] = "d61d1e923a22f9062cc9f47696882666" -SRC_URI[sha256sum] = "e9483d68a7698d701bc06124fcf6e1b1f16380c2986c7ec0cf4e1475b9d0c218" +SRC_URI[md5sum] = "66c4d71858b214afee5b390ee602dee2" +SRC_URI[sha256sum] = "777c61e264869e9b288b8d6603f4ed3ac3aac9ec573908067353f51269dce2fe" DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc" CFLAGS += "-I${STAGING_INCDIR}/tirpc" LDFLAGS += "-ltirpc" -inherit autotools pkgconfig systemd useradd +inherit autotools pkgconfig systemd useradd gettext PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}" diff --git a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch deleted file mode 100644 index c0f3adf2..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch +++ /dev/null @@ -1,43 +0,0 @@ -Subject: drbd-tools: only rmmod if DRBD is a module - -Account for the case if the DRBD drive is built into -the kernel. Otherwise, errors, like the following, -will occur: - -root@localhost:~# /etc/init.d/drbd stop - Stopping all DRBD resources: ERROR: Module drbd - does not exist in /proc/modules - -Upstream-Status: Submitted [https://github.com/LINBIT/drbd-utils/pull/2] - -Signed-off-by: Aws Ismail <aws.ismail@windriver.com> -Signed-off-by: Jason Wessel <jason.wessel@windriver.com> - -[ refresh to 8.4.4: squash Aws' and Jason's patches ] -Signed-off-by: Michel Thebeau <michel.thebeau@windriver.com> - -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> -Signed-off-by: Changqing Li <changqing.li@windriver.com> - ---- - scripts/drbd | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/scripts/drbd b/scripts/drbd -index 20bf628..de589dc 100755 ---- a/scripts/drbd -+++ b/scripts/drbd -@@ -241,7 +241,9 @@ case "$1" in - if [ -d /sys/module/drbd/holders ]; then - (cd /sys/module/drbd/holders; for tr in *; do [ -d ${tr} ] && ${RMMOD} ${tr}; done) - fi -- $RMMOD drbd && break -+ if [ ! -z "$(cat /proc/modules | grep -w drbd)" ]; then -+ $RMMOD drbd && break -+ fi - fi - done - run_hook stop --- -1.9.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch new file mode 100644 index 00000000..5e128727 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch @@ -0,0 +1,108 @@ +From 642b5823abeee27a0fdc2d12d0e1235461ace9ed Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 5 Sep 2019 18:57:39 +0800 +Subject: [PATCH] drbd-utils: support usrmerge + +Upstream-Status: Inappropriate[oe-specific] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + configure.ac | 2 +- + scripts/Makefile.in | 4 ++-- + user/v83/Makefile.in | 14 +++++++------- + user/v84/Makefile.in | 14 +++++++------- + 4 files changed, 17 insertions(+), 17 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 4df1b4d..c4ef1bc 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -176,7 +176,7 @@ AC_ARG_WITH(tmpfilesdir, + AC_SUBST(tmpfilesdir) + + # set default early +-default_udevdir=/lib/udev ++default_udevdir=${prefix}/lib/udev + if test x"$with_udev" = x || \ + test x"$with_udev" = xyes ; then + if test x"$PKG_CONFIG" != x; then +diff --git a/scripts/Makefile.in b/scripts/Makefile.in +index fbb0beb..da701a1 100644 +--- a/scripts/Makefile.in ++++ b/scripts/Makefile.in +@@ -75,8 +75,8 @@ endif + ifeq ($(subst both,systemd,$(initscripttype)),systemd) + install -d $(DESTDIR)$(systemdunitdir) + install -m 644 drbd.service $(DESTDIR)$(systemdunitdir)/ +- install -d $(DESTDIR)/lib/drbd/ +- install -m 755 drbd $(DESTDIR)/lib/drbd/ ++ install -d $(DESTDIR)/${nonarch_libdir}/drbd ++ install -m 755 drbd $(DESTDIR)/${nonarch_libdir}/drbd + install -d $(DESTDIR)$(tmpfilesdir)/ + install -m 444 drbd.tmpfiles.conf $(DESTDIR)$(tmpfilesdir)/drbd.conf + endif +diff --git a/user/v83/Makefile.in b/user/v83/Makefile.in +index 27516de..b301376 100644 +--- a/user/v83/Makefile.in ++++ b/user/v83/Makefile.in +@@ -96,19 +96,19 @@ install: + ifeq ($(WITH_83_SUPPORT),yes) + install -d $(DESTDIR)$(localstatedir)/lib/drbd + install -d $(DESTDIR)$(localstatedir)/lock +- install -d $(DESTDIR)/lib/drbd/ ++ install -d $(DESTDIR)/${nonarch_libdir}/drbd/ + if getent group haclient > /dev/null 2> /dev/null ; then \ +- install -g haclient -m 4750 drbdsetup-83 $(DESTDIR)/lib/drbd/ ; \ +- install -m 755 drbdadm-83 $(DESTDIR)/lib/drbd/ ; \ ++ install -g haclient -m 4750 drbdsetup-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ ++ install -m 755 drbdadm-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ + else \ +- install -m 755 drbdsetup-83 $(DESTDIR)/lib/drbd/ ; \ +- install -m 755 drbdadm-83 $(DESTDIR)/lib/drbd/ ; \ ++ install -m 755 drbdsetup-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ ++ install -m 755 drbdadm-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ + fi + endif + + uninstall: +- rm -f $(DESTDIR)/lib/drbd/drbdsetup-83 +- rm -f $(DESTDIR)/lib/drbd/drbdadm-83 ++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdsetup-83 ++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdadm-83 + + .PHONY: install uninstall clean distclean + ../../configure: +diff --git a/user/v84/Makefile.in b/user/v84/Makefile.in +index 38977c6..05ef060 100644 +--- a/user/v84/Makefile.in ++++ b/user/v84/Makefile.in +@@ -109,19 +109,19 @@ ifeq ($(WITH_84_SUPPORT),yes) + install -d $(DESTDIR)$(localstatedir)/lib/drbd + install -d $(DESTDIR)$(localstatedir)/run/drbd + install -d $(DESTDIR)$(localstatedir)/lock +- install -d $(DESTDIR)/lib/drbd/ ++ install -d $(DESTDIR)/${nonarch_libdir}/drbd/ + if getent group haclient > /dev/null 2> /dev/null ; then \ +- install -g haclient -m 4750 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \ +- install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \ ++ install -g haclient -m 4750 drbdsetup-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ ++ install -m 755 drbdadm-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ + else \ +- install -m 755 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \ +- install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \ ++ install -m 755 drbdsetup-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ ++ install -m 755 drbdadm-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \ + fi + endif + + uninstall: +- rm -f $(DESTDIR)/lib/drbd/drbdsetup-84 +- rm -f $(DESTDIR)/lib/drbd/drbdadm-84 ++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdsetup-84 ++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdadm-84 + + spell: + for f in drbdadm_adjust.c drbdadm_main.c drbdadm_parser.c drbdadm_usage_cnt.c drbdsetup.c drbdtool_common.c; do \ +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.12.0.bb index bd1e8576..b83f68f8 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.12.0.bb @@ -10,11 +10,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018" SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils \ git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers \ - file://0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch \ + ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','file://0001-drbd-utils-support-usrmerge.patch','',d)} \ " -# v9.5.0 -SRCREV_drbd-utils = "ee126652638328b55dc6bff47d07d6161ab768db" -SRCREV_drbd-headers = "b47cc11bcabe1a65c40ad23f71dcaf2da6419630" +# v9.12.0 +SRCREV_drbd-utils = "91629a4cce49ca0d4f917fe0bffa25cfe8db3052" +SRCREV_drbd-headers = "233006b4d26cf319638be0ef6d16ec7dee287b66" S = "${WORKDIR}/git" @@ -23,6 +23,8 @@ UPSTREAM_CHECK_URI = "https://github.com/LINBIT/drbd-utils/releases" SYSTEMD_SERVICE_${PN} = "drbd.service" SYSTEMD_AUTO_ENABLE = "disable" +DEPENDS = "flex-native" + inherit autotools-brokensep systemd EXTRA_OECONF = " \ @@ -36,20 +38,13 @@ EXTRA_OECONF = " \ --without-manual \ " -do_configure_prepend() { - # move the the file under folder /lib/drbd/ to /usr/lib/drbd when usrmerge enabled - if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then - for m_file in `find ${S} -name 'Makefile.in'`; do - sed -i -e "s;\$(DESTDIR)\/lib\/drbd;\$(DESTDIR)\${nonarch_libdir}\/drbd;g" $m_file - done - # move the the file under folder /lib/udev/ to /usr/lib/udev when usrmerge enabled - sed -i -e "s;default_udevdir=/lib/udev;default_udevdir=\${prefix}/lib/udev;g" ${S}/configure.ac - fi +# If we have inherited reproducible_build, we want to use it. +export WANT_DRBD_REPRODUCIBLE_BUILD = "yes" -} do_install_append() { - # don't install empty /var/lock to avoid conflict with base-files + # don't install empty /var/lock and /var/run to avoid conflict with base-files rm -rf ${D}${localstatedir}/lock + rm -rf ${D}${localstatedir}/run } RDEPENDS_${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module-constant perl-module-overloading perl-module-exporter-heavy" diff --git a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.19-1.bb index fa4d10b4..23fe2021 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.19-1.bb @@ -9,10 +9,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018" DEPENDS = "virtual/kernel" SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \ - file://check_existence_of_modules_before_installing.patch" + file://check_existence_of_modules_before_installing.patch \ + " +SRC_URI[md5sum] = "bd1202eaaf81641752d0c9b003b10f6c" +SRC_URI[sha256sum] = "5b3d2bcb99542940e40af903dea783cf04524e9f41cc530e210d2c15ef84fa58" -SRC_URI[md5sum] = "c1dd58043f46e9926b579aa65d4ea980" -SRC_URI[sha256sum] = "87f72d46db9bad926415b3ab9f5f1397de8c581d2e2ec1addbdd5ce2604e6123" inherit module EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}'" @@ -21,4 +22,4 @@ do_install () { oe_runmake install DESTDIR="${D}" } -PNBLACKLIST[drbd] = "implicit declaration of function 'setup_timer'; 4.15 head file issue?" +PNBLACKLIST[drbd] = "Kernel module Needs forward porting to kernel 5.2+" diff --git a/external/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb b/external/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb index 663161a9..972d5aa7 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb @@ -18,11 +18,15 @@ EXTRA_OECONF = "--with-libesmtp=${STAGING_EXECPREFIXDIR}" inherit autotools update-alternatives -ALTERNATIVE_${PN} += "sendmail mailq newaliases" +ALTERNATIVE_${PN} = "sendmail mailq newaliases" +# /usr/lib/sendmial is required by LSB core test +ALTERNATIVE_${PN}_linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail" ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq" ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases" ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail" ALTERNATIVE_TARGET[sendmail] = "${bindir}/esmtp" +ALTERNATIVE_LINK_NAME[usr-lib-sendmail] = "/usr/lib/sendmail" +ALTERNATIVE_TARGET[usr-lib-sendmail] = "${bindir}/esmtp" ALTERNATIVE_PRIORITY = "10" @@ -39,9 +43,4 @@ do_install_append() { rm -rf ${D}${libdir} } -pkg_postinst_${PN}_linuxstdbase () { - # /usr/lib/sendmial is required by LSB core test - [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/ -} - FILES_${PN} += "${libdir}/" diff --git a/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch b/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch deleted file mode 100644 index 95cfa2f4..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch +++ /dev/null @@ -1,1576 +0,0 @@ -Description: <short summary of the patch> - TODO: Put a short summary on the line above and replace this paragraph - with a longer explanation of this change. Complete the meta-information - with other relevant fields (see below for details). To make it easier, the - information below has been extracted from the changelog. Adjust it or drop - it. - . - fetchmail (6.3.26-2) unstable; urgency=low - . - * New maintainer (closes: #800750). - * Backport upstream fix for SSLv3 removal (closes: #804604) and do not - recommend SSLv3 (closes: #801178). - * Remove quilt and its usage. - * Add dh-python to build depends. - * Update upstream URLs. - * Update watch file. - * Update Standards-Version to 3.9.6 . -Author: Laszlo Boszormenyi (GCS) <gcs@debian.org> -Bug-Debian: https://bugs.debian.org/800750 -Bug-Debian: https://bugs.debian.org/801178 -Bug-Debian: https://bugs.debian.org/804604 - ---- -The information above should follow the Patch Tagging Guidelines, please -checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here -are templates for supplementary fields that you might want to add: - -Origin: <vendor|upstream|other>, <url of original patch> -Bug: <url in upstream bugtracker> -Bug-Debian: https://bugs.debian.org/<bugnumber> -Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber> -Forwarded: <no|not-needed|url proving that it has been forwarded> -Reviewed-By: <name and email of someone who approved the patch> -Last-Update: <YYYY-MM-DD> - ---- fetchmail-6.3.26.orig/Makefile.am -+++ fetchmail-6.3.26/Makefile.am -@@ -31,7 +31,7 @@ libfm_a_SOURCES= xmalloc.c base64.c rfc8 - servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \ - smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \ - libesmtp/gethostbyname.h libesmtp/gethostbyname.c \ -- smbtypes.h fm_getaddrinfo.c tls.c rfc822valid.c \ -+ smbtypes.h fm_getaddrinfo.c starttls.c rfc822valid.c \ - xmalloc.h sdump.h sdump.c x509_name_match.c \ - fm_strl.h md5c.c - if NTLM_ENABLE ---- fetchmail-6.3.26.orig/Makefile.in -+++ fetchmail-6.3.26/Makefile.in -@@ -97,14 +97,14 @@ am__libfm_a_SOURCES_DIST = xmalloc.c bas - rfc2047e.c servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \ - smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \ - libesmtp/gethostbyname.h libesmtp/gethostbyname.c smbtypes.h \ -- fm_getaddrinfo.c tls.c rfc822valid.c xmalloc.h sdump.h sdump.c \ -+ fm_getaddrinfo.c starttls.c rfc822valid.c xmalloc.h sdump.h sdump.c \ - x509_name_match.c fm_strl.h md5c.c ntlmsubr.c - @NTLM_ENABLE_TRUE@am__objects_1 = ntlmsubr.$(OBJEXT) - am_libfm_a_OBJECTS = xmalloc.$(OBJEXT) base64.$(OBJEXT) \ - rfc822.$(OBJEXT) report.$(OBJEXT) rfc2047e.$(OBJEXT) \ - servport.$(OBJEXT) smbdes.$(OBJEXT) smbencrypt.$(OBJEXT) \ - smbmd4.$(OBJEXT) smbutil.$(OBJEXT) gethostbyname.$(OBJEXT) \ -- fm_getaddrinfo.$(OBJEXT) tls.$(OBJEXT) rfc822valid.$(OBJEXT) \ -+ fm_getaddrinfo.$(OBJEXT) starttls.$(OBJEXT) rfc822valid.$(OBJEXT) \ - sdump.$(OBJEXT) x509_name_match.$(OBJEXT) md5c.$(OBJEXT) \ - $(am__objects_1) - libfm_a_OBJECTS = $(am_libfm_a_OBJECTS) -@@ -483,7 +483,7 @@ libfm_a_SOURCES = xmalloc.c base64.c rfc - servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \ - smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \ - libesmtp/gethostbyname.h libesmtp/gethostbyname.c smbtypes.h \ -- fm_getaddrinfo.c tls.c rfc822valid.c xmalloc.h sdump.h sdump.c \ -+ fm_getaddrinfo.c starttls.c rfc822valid.c xmalloc.h sdump.h sdump.c \ - x509_name_match.c fm_strl.h md5c.c $(am__append_1) - libfm_a_LIBADD = $(EXTRAOBJ) - libfm_a_DEPENDENCIES = $(EXTRAOBJ) ---- fetchmail-6.3.26.orig/NEWS -+++ fetchmail-6.3.26/NEWS -@@ -51,8 +51,6 @@ removed from a 6.4.0 or newer release.) - * The --bsmtp - mode of operation may be removed in a future release. - * Given that OpenSSL is severely underdocumented, and needs license exceptions, - fetchmail may switch to a different SSL library. --* SSLv2 support will be removed from a future fetchmail release. It has been -- obsolete for more than a decade. - - -------------------------------------------------------------------------------- - ---- fetchmail-6.3.26.orig/README.SSL -+++ fetchmail-6.3.26/README.SSL -@@ -11,36 +11,45 @@ specific to fetchmail. - In case of troubles, mail the README.SSL-SERVER file to your ISP and - have them check their server configuration against it. - --Unfortunately, fetchmail confuses SSL/TLS protocol levels with whether --a service needs to use in-band negotiation (STLS/STARTTLS for POP3/IMAP4) or is --totally SSL-wrapped on a separate port. For compatibility reasons, this cannot --be fixed in a bugfix release. -+Unfortunately, fetchmail confuses SSL/TLS protocol levels with whether a -+service needs to use in-band negotiation (STLS/STARTTLS for POP3/IMAP4) -+or is totally SSL-wrapped on a separate port. For compatibility -+reasons, this cannot be fixed in a bugfix or minor release. -+ -+Also, fetchmail 6.4.0 and newer releases changed some of the semantics -+as the result of a bug-fix, and will auto-negotiate TLSv1 or newer only. -+If your server does not support this, you may have to specify --sslproto -+ssl3. This is in order to prefer the newer TLS protocols, because SSLv2 -+and v3 are broken. - -- -- Matthias Andree, 2009-05-09 -+ -- Matthias Andree, 2015-01-16 - - - Quickstart - ---------- - -+Use an up-to-date release of OpenSSL 1.0.1 or newer, so as to get -+TLSv1.2 support. -+ - For use of SSL or TLS with in-band negotiation on the regular service's port, - i. e. with STLS or STARTTLS, use these command line options - -- --sslproto tls1 --sslcertck -+ --sslproto auto --sslcertck - - or these options in the rcfile (after the respective "user"... options) - -- sslproto tls1 sslcertck -+ sslproto auto sslcertck - - - For use of SSL or TLS on a separate port, if the whole TCP connection is --SSL-encrypted from the very beginning, use these command line options (in the --rcfile, omit all leading "--"): -+SSL-encrypted from the very beginning (SSL- or TLS-wrapped), use these -+command line options (in the rcfile, omit all leading "--"): - -- --ssl --sslproto ssl3 --sslcertck -+ --ssl --sslproto auto --sslcertck - - or these options in the rcfile (after the respective "user"... options) - -- ssl sslproto ssl3 sslcertck -+ ssl sslproto auto sslcertck - - - Background and use (long version :-)) ---- fetchmail-6.3.26.orig/config.h.in -+++ fetchmail-6.3.26/config.h.in -@@ -49,9 +49,9 @@ - don't. */ - #undef HAVE_DECL_H_ERRNO - --/* Define to 1 if you have the declaration of `SSLv2_client_method', and to 0 -+/* Define to 1 if you have the declaration of `SSLv3_client_method', and to 0 - if you don't. */ --#undef HAVE_DECL_SSLV2_CLIENT_METHOD -+#undef HAVE_DECL_SSLV3_CLIENT_METHOD - - /* Define to 1 if you have the declaration of `strerror', and to 0 if you - don't. */ ---- fetchmail-6.3.26.orig/configure -+++ fetchmail-6.3.26/configure -@@ -1,13 +1,11 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.68 for fetchmail 6.3.26. -+# Generated by GNU Autoconf 2.69 for fetchmail 6.3.26. - # - # Report bugs to <fetchmail-users@lists.berlios.de>. - # - # --# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, --# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software --# Foundation, Inc. -+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. - # - # - # This configure script is free software; the Free Software Foundation -@@ -136,6 +134,31 @@ export LANGUAGE - # CDPATH. - (unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -+# Use a proper internal environment variable to ensure we don't fall -+ # into an infinite loop, continuously re-executing ourselves. -+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then -+ _as_can_reexec=no; export _as_can_reexec; -+ # We cannot yet assume a decent shell, so we have to provide a -+# neutralization value for shells without unset; and this also -+# works around shells that cannot unset nonexistent variables. -+# Preserve -v and -x to the replacement shell. -+BASH_ENV=/dev/null -+ENV=/dev/null -+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -+case $- in # (((( -+ *v*x* | *x*v* ) as_opts=-vx ;; -+ *v* ) as_opts=-v ;; -+ *x* ) as_opts=-x ;; -+ * ) as_opts= ;; -+esac -+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -+# Admittedly, this is quite paranoid, since all the known shells bail -+# out after a failed `exec'. -+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -+as_fn_exit 255 -+ fi -+ # We don't want this to propagate to other subprocesses. -+ { _as_can_reexec=; unset _as_can_reexec;} - if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh -@@ -169,7 +192,8 @@ if ( set x; as_fn_ret_success y && test - else - exitcode=1; echo positional parameters were not saved. - fi --test x\$exitcode = x0 || exit 1" -+test x\$exitcode = x0 || exit 1 -+test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && -@@ -214,21 +238,25 @@ IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : -- # We cannot yet assume a decent shell, so we have to provide a -- # neutralization value for shells without unset; and this also -- # works around shells that cannot unset nonexistent variables. -- # Preserve -v and -x to the replacement shell. -- BASH_ENV=/dev/null -- ENV=/dev/null -- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -- export CONFIG_SHELL -- case $- in # (((( -- *v*x* | *x*v* ) as_opts=-vx ;; -- *v* ) as_opts=-v ;; -- *x* ) as_opts=-x ;; -- * ) as_opts= ;; -- esac -- exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} -+ export CONFIG_SHELL -+ # We cannot yet assume a decent shell, so we have to provide a -+# neutralization value for shells without unset; and this also -+# works around shells that cannot unset nonexistent variables. -+# Preserve -v and -x to the replacement shell. -+BASH_ENV=/dev/null -+ENV=/dev/null -+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -+case $- in # (((( -+ *v*x* | *x*v* ) as_opts=-vx ;; -+ *v* ) as_opts=-v ;; -+ *x* ) as_opts=-x ;; -+ * ) as_opts= ;; -+esac -+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -+# Admittedly, this is quite paranoid, since all the known shells bail -+# out after a failed `exec'. -+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -+exit 255 - fi - - if test x$as_have_required = xno; then : -@@ -331,6 +359,14 @@ $as_echo X"$as_dir" | - - - } # as_fn_mkdir_p -+ -+# as_fn_executable_p FILE -+# ----------------------- -+# Test if FILE is an executable regular file. -+as_fn_executable_p () -+{ -+ test -f "$1" && test -x "$1" -+} # as_fn_executable_p - # as_fn_append VAR VALUE - # ---------------------- - # Append the text in VALUE to the end of the definition contained in VAR. Take -@@ -452,6 +488,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - -+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have -+ # already done that, so ensure we don't try to do so again and fall -+ # in an infinite loop. This has already happened in practice. -+ _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). -@@ -486,16 +526,16 @@ if (echo >conf$$.file) 2>/dev/null; then - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. -- # In both cases, we have to default to `cp -p'. -+ # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - fi - else -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - fi - rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file - rmdir conf$$.dir 2>/dev/null -@@ -507,28 +547,8 @@ else - as_mkdir_p=false - fi - --if test -x / >/dev/null 2>&1; then -- as_test_x='test -x' --else -- if ls -dL / >/dev/null 2>&1; then -- as_ls_L_option=L -- else -- as_ls_L_option= -- fi -- as_test_x=' -- eval sh -c '\'' -- if test -d "$1"; then -- test -d "$1/."; -- else -- case $1 in #( -- -*)set "./$1";; -- esac; -- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( -- ???[sx]*):;;*)false;;esac;fi -- '\'' sh -- ' --fi --as_executable_p=$as_test_x -+as_test_x='test -x' -+as_executable_p=as_fn_executable_p - - # Sed expression to map a string onto a valid CPP name. - as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" -@@ -742,6 +762,7 @@ infodir - docdir - oldincludedir - includedir -+runstatedir - localstatedir - sharedstatedir - sysconfdir -@@ -841,6 +862,7 @@ datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' -+runstatedir='${localstatedir}/run' - includedir='${prefix}/include' - oldincludedir='/usr/include' - docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -@@ -1093,6 +1115,15 @@ do - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - -+ -runstatedir | --runstatedir | --runstatedi | --runstated \ -+ | --runstate | --runstat | --runsta | --runst | --runs \ -+ | --run | --ru | --r) -+ ac_prev=runstatedir ;; -+ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ -+ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ -+ | --run=* | --ru=* | --r=*) -+ runstatedir=$ac_optarg ;; -+ - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ -@@ -1230,7 +1261,7 @@ fi - for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ -- libdir localedir mandir -+ libdir localedir mandir runstatedir - do - eval ac_val=\$$ac_var - # Remove trailing slashes. -@@ -1258,8 +1289,6 @@ target=$target_alias - if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe -- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. -- If a cross compiler is detected then cross compile mode will be used" >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -@@ -1385,6 +1414,7 @@ Fine tuning of the installation director - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] -+ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] -@@ -1548,9 +1578,9 @@ test -n "$ac_init_help" && exit $ac_stat - if $ac_init_version; then - cat <<\_ACEOF - fetchmail configure 6.3.26 --generated by GNU Autoconf 2.68 -+generated by GNU Autoconf 2.69 - --Copyright (C) 2010 Free Software Foundation, Inc. -+Copyright (C) 2012 Free Software Foundation, Inc. - This configure script is free software; the Free Software Foundation - gives unlimited permission to copy, distribute and modify it. - _ACEOF -@@ -1827,7 +1857,7 @@ $as_echo "$ac_try_echo"; } >&5 - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || -- $as_test_x conftest$ac_exeext -+ test -x conftest$ac_exeext - }; then : - ac_retval=0 - else -@@ -2030,7 +2060,8 @@ int - main () - { - static int test_array [1 - 2 * !(($2) >= 0)]; --test_array [0] = 0 -+test_array [0] = 0; -+return test_array [0]; - - ; - return 0; -@@ -2046,7 +2077,8 @@ int - main () - { - static int test_array [1 - 2 * !(($2) <= $ac_mid)]; --test_array [0] = 0 -+test_array [0] = 0; -+return test_array [0]; - - ; - return 0; -@@ -2072,7 +2104,8 @@ int - main () - { - static int test_array [1 - 2 * !(($2) < 0)]; --test_array [0] = 0 -+test_array [0] = 0; -+return test_array [0]; - - ; - return 0; -@@ -2088,7 +2121,8 @@ int - main () - { - static int test_array [1 - 2 * !(($2) >= $ac_mid)]; --test_array [0] = 0 -+test_array [0] = 0; -+return test_array [0]; - - ; - return 0; -@@ -2122,7 +2156,8 @@ int - main () - { - static int test_array [1 - 2 * !(($2) <= $ac_mid)]; --test_array [0] = 0 -+test_array [0] = 0; -+return test_array [0]; - - ; - return 0; -@@ -2195,7 +2230,7 @@ This file contains any messages produced - running configure, to aid debugging if configure makes a mistake. - - It was created by fetchmail $as_me 6.3.26, which was --generated by GNU Autoconf 2.68. Invocation command line was -+generated by GNU Autoconf 2.69. Invocation command line was - - $ $0 $@ - -@@ -2689,7 +2724,7 @@ case $as_dir/ in #(( - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. -@@ -2858,7 +2893,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -2898,7 +2933,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -2949,7 +2984,7 @@ do - test -z "$as_dir" && as_dir=. - for ac_prog in mkdir gmkdir; do - for ac_exec_ext in '' $ac_executable_extensions; do -- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue -+ as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue - case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( - 'mkdir (GNU coreutils) '* | \ - 'mkdir (coreutils) '* | \ -@@ -3002,7 +3037,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3295,7 +3330,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3466,7 +3501,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3512,7 +3547,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3552,7 +3587,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3605,7 +3640,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3646,7 +3681,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue -@@ -3704,7 +3739,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -3748,7 +3783,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -4194,8 +4229,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ - /* end confdefs.h. */ - #include <stdarg.h> - #include <stdio.h> --#include <sys/types.h> --#include <sys/stat.h> -+struct stat; - /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ - struct buf { int x; }; - FILE * (*rcsopen) (struct buf *, struct stat *, int); -@@ -4751,7 +4785,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -4791,7 +4825,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -4859,7 +4893,7 @@ do - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue -+ as_fn_executable_p "$ac_path_GREP" || continue - # Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP - case `"$ac_path_GREP" --version 2>&1` in -@@ -4925,7 +4959,7 @@ do - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" -- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue -+ as_fn_executable_p "$ac_path_EGREP" || continue - # Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP - case `"$ac_path_EGREP" --version 2>&1` in -@@ -5132,8 +5166,8 @@ else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ - --# define __EXTENSIONS__ 1 -- $ac_includes_default -+# define __EXTENSIONS__ 1 -+ $ac_includes_default - int - main () - { -@@ -5513,11 +5547,11 @@ else - int - main () - { --/* FIXME: Include the comments suggested by Paul. */ -+ - #ifndef __cplusplus -- /* Ultrix mips cc rejects this. */ -+ /* Ultrix mips cc rejects this sort of thing. */ - typedef int charset[2]; -- const charset cs; -+ const charset cs = { 0, 0 }; - /* SunOS 4.1.1 cc rejects this. */ - char const *const *pcpcc; - char **ppc; -@@ -5534,8 +5568,9 @@ main () - ++pcpcc; - ppc = (char**) pcpcc; - pcpcc = (char const *const *) ppc; -- { /* SCO 3.2v4 cc rejects this. */ -- char *t; -+ { /* SCO 3.2v4 cc rejects this sort of thing. */ -+ char tx; -+ char *t = &tx; - char const *s = 0 ? (char *) 0 : (char const *) 0; - - *t++ = 0; -@@ -5551,10 +5586,10 @@ main () - iptr p = 0; - ++p; - } -- { /* AIX XL C 1.02.0.0 rejects this saying -+ { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying - "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ -- struct s { int j; const int *ap[3]; }; -- struct s *b; b->j = 5; -+ struct s { int j; const int *ap[3]; } bx; -+ struct s *b = &bx; b->j = 5; - } - { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ - const int foo = 10; -@@ -5600,7 +5635,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_LEX="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -5632,7 +5667,8 @@ a { ECHO; } - b { REJECT; } - c { yymore (); } - d { yyless (1); } --e { yyless (input () != 0); } -+e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ -+ yyless ((input () != 0)); } - f { unput (yytext[0]); } - . { BEGIN INITIAL; } - %% -@@ -5792,7 +5828,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_YACC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -6044,7 +6080,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -8548,7 +8584,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_procmail="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -8590,7 +8626,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_sendmail="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -8632,7 +8668,7 @@ do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_maildrop="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 -@@ -10121,16 +10157,16 @@ $as_echo "$as_me: WARNING: Consider re-r - fi - - case "$LIBS" in *-lssl*) -- ac_fn_c_check_decl "$LINENO" "SSLv2_client_method" "ac_cv_have_decl_SSLv2_client_method" "#include <openssl/ssl.h> -+ ac_fn_c_check_decl "$LINENO" "SSLv3_client_method" "ac_cv_have_decl_SSLv3_client_method" "#include <openssl/ssl.h> - " --if test "x$ac_cv_have_decl_SSLv2_client_method" = xyes; then : -+if test "x$ac_cv_have_decl_SSLv3_client_method" = xyes; then : - ac_have_decl=1 - else - ac_have_decl=0 - fi - - cat >>confdefs.h <<_ACEOF --#define HAVE_DECL_SSLV2_CLIENT_METHOD $ac_have_decl -+#define HAVE_DECL_SSLV3_CLIENT_METHOD $ac_have_decl - _ACEOF - - ;; -@@ -11334,16 +11370,16 @@ if (echo >conf$$.file) 2>/dev/null; then - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. -- # In both cases, we have to default to `cp -p'. -+ # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - fi - else -- as_ln_s='cp -p' -+ as_ln_s='cp -pR' - fi - rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file - rmdir conf$$.dir 2>/dev/null -@@ -11403,28 +11439,16 @@ else - as_mkdir_p=false - fi - --if test -x / >/dev/null 2>&1; then -- as_test_x='test -x' --else -- if ls -dL / >/dev/null 2>&1; then -- as_ls_L_option=L -- else -- as_ls_L_option= -- fi -- as_test_x=' -- eval sh -c '\'' -- if test -d "$1"; then -- test -d "$1/."; -- else -- case $1 in #( -- -*)set "./$1";; -- esac; -- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( -- ???[sx]*):;;*)false;;esac;fi -- '\'' sh -- ' --fi --as_executable_p=$as_test_x -+ -+# as_fn_executable_p FILE -+# ----------------------- -+# Test if FILE is an executable regular file. -+as_fn_executable_p () -+{ -+ test -f "$1" && test -x "$1" -+} # as_fn_executable_p -+as_test_x='test -x' -+as_executable_p=as_fn_executable_p - - # Sed expression to map a string onto a valid CPP name. - as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" -@@ -11446,7 +11470,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri - # values after options handling. - ac_log=" - This file was extended by fetchmail $as_me 6.3.26, which was --generated by GNU Autoconf 2.68. Invocation command line was -+generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS -@@ -11512,10 +11536,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_writ - ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" - ac_cs_version="\\ - fetchmail config.status 6.3.26 --configured by $0, generated by GNU Autoconf 2.68, -+configured by $0, generated by GNU Autoconf 2.69, - with options \\"\$ac_cs_config\\" - --Copyright (C) 2010 Free Software Foundation, Inc. -+Copyright (C) 2012 Free Software Foundation, Inc. - This config.status script is free software; the Free Software Foundation - gives unlimited permission to copy, distribute and modify it." - -@@ -11606,7 +11630,7 @@ fi - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - if \$ac_cs_recheck; then -- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' ---- fetchmail-6.3.26.orig/configure.ac -+++ fetchmail-6.3.26/configure.ac -@@ -802,7 +802,7 @@ else - fi - - case "$LIBS" in *-lssl*) -- AC_CHECK_DECLS([SSLv2_client_method],,,[#include <openssl/ssl.h>]) -+ AC_CHECK_DECLS([SSLv3_client_method],,,[#include <openssl/ssl.h>]) - ;; - esac - ---- fetchmail-6.3.26.orig/fetchmail-FAQ.html -+++ fetchmail-6.3.26/fetchmail-FAQ.html -@@ -667,8 +667,8 @@ because there is not currently a standar - also uses this method, so the two will interoperate happily. They - better, because this is how Craig gets his mail ;-)</p> - --<p>Finally, you can use <a href="#K5">SSL</a> for complete --end-to-end encryption if you have an SSL-enabled mailserver.</p> -+<p>Finally, you can use <a href="#K5">SSL or TLS</a> for complete -+end-to-end encryption if you have a TLS-enabled mailserver.</p> - - <h2><a id="G11" name="G11">G11. Is any special configuration needed - to use a dynamic IP address?</a></h2> -@@ -2120,7 +2120,7 @@ SSL?</a></h2> - - <p>You'll need to have the <a - href="http://www.openssl.org/">OpenSSL</a> libraries installed, and they --should at least be version 0.9.7. -+should at least be version 0.9.8, with 1.0.1 preferred. - Configure with --with-ssl. If you have the OpenSSL libraries - installed in commonly-used default locations, this will - suffice. If you have them installed in a non-default location, -@@ -2130,7 +2130,7 @@ to --with-ssl after an equal sign.</p> - <p>Fetchmail binaries built this way support <code>ssl</code>, - <code>sslkey</code>, and <code>sslcert</code> options that control - SSL encryption, and will automatically use <code>tls</code> if the --server offers it. You will need to have an SSL-enabled mailserver to -+server offers it. You will need to have an SSL/TLS-enabled mailserver to - use these options. See the manual page for details and some words - of care on the limited security provided.</p> - -@@ -2155,13 +2155,14 @@ poll MYSERVER port 993 plugin "openssl s - protocol imap username MYUSERNAME password MYPASSWORD - </pre> - --<p>You should note that SSL is only secure against a "man-in-the-middle" --attack if the client is able to verify that the peer's public key is the --correct one, and has not been substituted by an attacker. fetchmail can do --this in one of two ways: by verifying the SSL certificate, or by checking --the fingerprint of the peer's public key.</p> -+<p>You should note that SSL or TLS are only secure against a -+"man-in-the-middle" attack if the client is able to verify that the -+peer's public key is the correct one, and has not been substituted by an -+attacker. fetchmail can do this in one of two ways: by verifying the SSL -+certificate, or by checking the fingerprint of the peer's public -+key.</p> - --<p>There are three parts to SSL certificate verification: checking that the -+<p>There are three parts to TLS certificate verification: checking that the - domain name in the certificate matches the hostname you asked to connect to; - checking that the certificate expiry date has not passed; and checking that - the certificate has been signed by a known Certificate Authority (CA). This -@@ -2227,8 +2228,12 @@ will automatically attempt TLS negotiati - time. This can however cause problems if the upstream didn't configure - his certificates properly.</p> - --<p>In order to prevent fetchmail from trying TLS (STLS, STARTTLS) --negotiation, add this option:</p> -+<p>In order to prevent fetchmail 6.4.0 and newer versions from trying -+STLS or STARTTLS negotiation, add this option:</p> -+<pre>sslproto ''</pre> -+ -+<p>In order to prevent older fetchmail versions from trying TLS (STLS, STARTTLS) -+negotiation where the above does not work, try this option:</p> - - <pre>sslproto ssl23</pre> - -@@ -2876,15 +2881,22 @@ need to say something like '<code>envelo - - <pre> - Received: from send103.yahoomail.com (send103.yahoomail.com [205.180.60.92]) -- by iserv.ttns.net (8.8.5/8.8.5) with SMTP id RAA10088 -- for <ksturgeon@fbceg.org>; Wed, 9 Sep 1998 17:01:59 -0700 -+ by iserv.example.net (8.8.5/8.8.5) with SMTP id RAA10088 -+ for <ksturgeon@fbceg.example.org>; Wed, 9 Sep 1998 17:01:59 -0700 - </pre> - --<p>it checks to see if 'iserv.ttns.net' is a DNS alias of your --mailserver before accepting 'ksturgeon@fbceg.org' as an envelope -+<p>it checks to see if 'iserv.example.net' is a DNS alias of your -+mailserver before accepting 'ksturgeon@fbceg.example.org' as an envelope - address. This check might fail if your DNS were misconfigured, or --if you were using 'no dns' and had failed to declare iserv.ttns.net --as an alias of your server.</p> -+if you were using 'no dns' and had failed to declare iserv.example.net -+as an alias of your server. The typical hint is logging similar to: -+<code>line rejected, iserv.example.net is not an alias of the mailserver</code>, -+if you use fetchmail in verbose mode.</p> -+ -+<p><strong>Workaround:</strong> You can specify the alias explicitly, with <code>aka -+ <em>iserv.example.net</em></code> statements in the rcfile. Replace -+<em>iserv.example.net</em> by the name you find in <strong>your</strong> -+'by' part of the 'Received:' line.</p> - - <h2><a id="M8" name="M8">M8. Users are getting multiple copies of - messages.</a></h2> -@@ -3237,6 +3249,8 @@ Hayes mode escape "+++".</p> - <h2><a id="X8" name="X8">X8. A spurious ) is being appended to my - messages.</a></h2> - -+<p><em>Fetchmail 6.3.5 and newer releases are supposed to fix this.</em></p> -+ - <p>Due to the problem described in <a href="#S2">S2</a>, the - IMAP support in fetchmail cannot follow the IMAP protocol 100 %. - Most of the time it doesn't matter, but if you combine it with an -@@ -3279,8 +3293,6 @@ it at the end of the message it forwards - on, you'll get a message about actual != expected.</li> - </ol> - --<p>There is no fix for this.</p> -- - <h2><a id="X9" name="X9">X9. Missing "Content-Transfer-Encoding" header - with Domino IMAP</a></h2> - ---- fetchmail-6.3.26.orig/fetchmail.c -+++ fetchmail-6.3.26/fetchmail.c -@@ -54,6 +54,10 @@ - #define ENETUNREACH 128 /* Interactive doesn't know this */ - #endif /* ENETUNREACH */ - -+#ifdef SSL_ENABLE -+#include <openssl/ssl.h> /* for OPENSSL_NO_SSL2 and ..._SSL3 checks */ -+#endif -+ - /* prototypes for internal functions */ - static int load_params(int, char **, int); - static void dump_params (struct runctl *runp, struct query *, flag implicit); -@@ -138,7 +142,7 @@ static void printcopyright(FILE *fp) { - "Copyright (C) 2004 Matthias Andree, Eric S. Raymond,\n" - " Robert M. Funk, Graham Wilson\n" - "Copyright (C) 2005 - 2012 Sunil Shetye\n" -- "Copyright (C) 2005 - 2013 Matthias Andree\n" -+ "Copyright (C) 2005 - 2015 Matthias Andree\n" - )); - fprintf(fp, GT_("Fetchmail comes with ABSOLUTELY NO WARRANTY. This is free software, and you\n" - "are welcome to redistribute it under certain conditions. For details,\n" -@@ -262,6 +266,9 @@ int main(int argc, char **argv) - #endif /* ODMR_ENABLE */ - #ifdef SSL_ENABLE - "+SSL" -+#if (HAVE_DECL_SSLV3_CLIENT_METHOD + 0 == 0) || defined(OPENSSL_NO_SSL3) -+ "-SSLv3" -+#endif - #endif - #ifdef OPIE_ENABLE - "+OPIE" ---- fetchmail-6.3.26.orig/fetchmail.h -+++ fetchmail-6.3.26/fetchmail.h -@@ -771,9 +771,9 @@ int servport(const char *service); - int fm_getaddrinfo(const char *node, const char *serv, const struct addrinfo *hints, struct addrinfo **res); - void fm_freeaddrinfo(struct addrinfo *ai); - --/* prototypes from tls.c */ --int maybe_tls(struct query *ctl); --int must_tls(struct query *ctl); -+/* prototypes from starttls.c */ -+int maybe_starttls(struct query *ctl); -+int must_starttls(struct query *ctl); - - /* prototype from rfc822valid.c */ - int rfc822_valid_msgid(const unsigned char *); ---- fetchmail-6.3.26.orig/fetchmail.man -+++ fetchmail-6.3.26/fetchmail.man -@@ -412,23 +412,22 @@ from. The folder information is written - .B \-\-ssl - (Keyword: ssl) - .br --Causes the connection to the mail server to be encrypted --via SSL. Connect to the server using the specified base protocol over a --connection secured by SSL. This option defeats opportunistic starttls --negotiation. It is highly recommended to use \-\-sslproto 'SSL3' --\-\-sslcertck to validate the certificates presented by the server and --defeat the obsolete SSLv2 negotiation. More information is available in --the \fIREADME.SSL\fP file that ships with fetchmail. --.IP --Note that fetchmail may still try to negotiate SSL through starttls even --if this option is omitted. You can use the \-\-sslproto option to defeat --this behavior or tell fetchmail to negotiate a particular SSL protocol. -+Causes the connection to the mail server to be encrypted via SSL, by -+negotiating SSL directly after connecting (SSL-wrapped mode). It is -+highly recommended to use \-\-sslcertck to validate the certificates -+presented by the server. Please see the description of \-\-sslproto -+below! More information is available in the \fIREADME.SSL\fP file that -+ships with fetchmail. -+.IP -+Note that even if this option is omitted, fetchmail may still negotiate -+SSL in-band for POP3 or IMAP, through the STLS or STARTTLS feature. You -+can use the \-\-sslproto option to modify that behavior. - .IP - If no port is specified, the connection is attempted to the well known - port of the SSL version of the base protocol. This is generally a - different port than the port used by the base protocol. For IMAP, this - is port 143 for the clear protocol and port 993 for the SSL secured --protocol, for POP3, it is port 110 for the clear text and port 995 for -+protocol; for POP3, it is port 110 for the clear text and port 995 for - the encrypted variant. - .IP - If your system lacks the corresponding entries from /etc/services, see -@@ -470,39 +469,73 @@ cause some complications in daemon mode. - .IP - Also see \-\-sslcert above. - .TP --.B \-\-sslproto <name> --(Keyword: sslproto) -+.B \-\-sslproto <value> -+(Keyword: sslproto, NOTE: semantic changes since v6.4.0) - .br --Forces an SSL/TLS protocol. Possible values are \fB''\fP, --\&'\fBSSL2\fP' (not supported on all systems), --\&'\fBSSL23\fP', (use of these two values is discouraged --and should only be used as a last resort) \&'\fBSSL3\fP', and --\&'\fBTLS1\fP'. The default behaviour if this option is unset is: for --connections without \-\-ssl, use \&'\fBTLS1\fP' so that fetchmail will --opportunistically try STARTTLS negotiation with TLS1. You can configure --this option explicitly if the default handshake (TLS1 if \-\-ssl is not --used) does not work for your server. --.IP --Use this option with '\fBTLS1\fP' value to enforce a STARTTLS --connection. In this mode, it is highly recommended to also use --\-\-sslcertck (see below). Note that this will then cause fetchmail --v6.3.19 to force STARTTLS negotiation even if it is not advertised by --the server. --.IP --To defeat opportunistic TLSv1 negotiation when the server advertises --STARTTLS or STLS, and use a cleartext connection use \fB''\fP. This --option, even if the argument is the empty string, will also suppress the --diagnostic 'SERVER: opportunistic upgrade to TLS.' message in verbose --mode. The default is to try appropriate protocols depending on context. -+This option has a dual use, out of historic fetchmail behaviour. It -+controls both the SSL/TLS protocol version and, if \-\-ssl is not -+specified, the STARTTLS behaviour (upgrading the protocol to an SSL or -+TLS connection in-band). Some other options may however make TLS -+mandatory. -+.PP -+Only if this option and \-\-ssl are both missing for a poll, there will -+be opportunistic TLS for POP3 and IMAP, where fetchmail will attempt to -+upgrade to TLSv1 or newer. -+.PP -+Recognized values for \-\-sslproto are given below. You should normally -+chose one of the auto-negotiating options, i. e. '\fBauto\fP' or one of -+the options ending in a plus (\fB+\fP) character. Note that depending -+on OpenSSL library version and configuration, some options cause -+run-time errors because the requested SSL or TLS versions are not -+supported by the particular installed OpenSSL library. -+.RS -+.IP "\fB''\fP, the empty string" -+Disable STARTTLS. If \-\-ssl is given for the same server, log an error -+and pretend that '\fBauto\fP' had been used instead. -+.IP '\fBauto\fP' -+(default). Since v6.4.0. Require TLS. Auto-negotiate TLSv1 or newer, disable SSLv3 downgrade. -+(fetchmail 6.3.26 and older have auto-negotiated all protocols that -+their OpenSSL library supported, including the broken SSLv3). -+.IP "\&'\fBSSL23\fP' -+see '\fBauto\fP'. -+.IP \&'\fBSSL3\fP' -+Require SSLv3 exactly. SSLv3 is broken, not supported on all systems, avoid it -+if possible. This will make fetchmail negotiate SSLv3 only, and is the -+only way besides '\fBSSL3+\fP' to have fetchmail 6.4.0 or newer permit SSLv3. -+.IP \&'\fBSSL3+\fP' -+same as '\fBauto\fP', but permit SSLv3 as well. This is the only way -+besides '\fBSSL3\fP' to have fetchmail 6.4.0 or newer permit SSLv3. -+.IP \&'\fBTLS1\fP' -+Require TLSv1. This does not negotiate TLSv1.1 or newer, and is -+discouraged. Replace by TLS1+ unless the latter chokes your server. -+.IP \&'\fBTLS1+\fP' -+Since v6.4.0. See 'fBauto\fP'. -+.IP \&'\fBTLS1.1\fP' -+Since v6.4.0. Require TLS v1.1 exactly. -+.IP \&'\fBTLS1.1+\fP' -+Since v6.4.0. Require TLS. Auto-negotiate TLSv1.1 or newer. -+.IP \&'\fBTLS1.2\fP' -+Since v6.4.0. Require TLS v1.2 exactly. -+.IP '\fBTLS1.2+\fP' -+Since v6.4.0. Require TLS. Auto-negotiate TLSv1.2 or newer. -+.IP "Unrecognized parameters" -+are treated the same as '\fBauto\fP'. -+.RE -+.IP -+NOTE: you should hardly ever need to use anything other than '' (to -+force an unencrypted connection) or 'auto' (to enforce TLS). - .TP - .B \-\-sslcertck - (Keyword: sslcertck) - .br --Causes fetchmail to strictly check the server certificate against a set of --local trusted certificates (see the \fBsslcertfile\fP and \fBsslcertpath\fP --options). If the server certificate cannot be obtained or is not signed by one --of the trusted ones (directly or indirectly), the SSL connection will fail, --regardless of the \fBsslfingerprint\fP option. -+Causes fetchmail to require that SSL/TLS be used and disconnect if it -+can not successfully negotiate SSL or TLS, or if it cannot successfully -+verify and validate the certificate and follow it to a trust anchor (or -+trusted root certificate). The trust anchors are given as a set of local -+trusted certificates (see the \fBsslcertfile\fP and \fBsslcertpath\fP -+options). If the server certificate cannot be obtained or is not signed -+by one of the trusted ones (directly or indirectly), fetchmail will -+disconnect, regardless of the \fBsslfingerprint\fP option. - .IP - Note that CRL (certificate revocation lists) are only supported in - OpenSSL 0.9.7 and newer! Your system clock should also be reasonably -@@ -1202,31 +1235,33 @@ capability response. Specify a user opti - username and the part to the right as the NTLM domain. - - .SS Secure Socket Layers (SSL) and Transport Layer Security (TLS) -+.PP All retrieval protocols can use SSL or TLS wrapping for the -+transport. Additionally, POP3 and IMAP retrival can also negotiate -+SSL/TLS by means of STARTTLS (or STLS). - .PP - Note that fetchmail currently uses the OpenSSL library, which is - severely underdocumented, so failures may occur just because the - programmers are not aware of OpenSSL's requirement of the day. - For instance, since v6.3.16, fetchmail calls - OpenSSL_add_all_algorithms(), which is necessary to support certificates --using SHA256 on OpenSSL 0.9.8 -- this information is deeply hidden in the --documentation and not at all obvious. Please do not hesitate to report --subtle SSL failures. --.PP --You can access SSL encrypted services by specifying the \-\-ssl option. --You can also do this using the "ssl" user option in the .fetchmailrc --file. With SSL encryption enabled, queries are initiated over a --connection after negotiating an SSL session, and the connection fails if --SSL cannot be negotiated. Some services, such as POP3 and IMAP, have -+using SHA256 on OpenSSL 0.9.8 -- this information is deeply hidden in -+the documentation and not at all obvious. Please do not hesitate to -+report subtle SSL failures. -+.PP -+You can access SSL encrypted services by specifying the options starting -+with \-\-ssl, such as \-\-ssl, \-\-sslproto, \-\-sslcertck, and others. -+You can also do this using the corresponding user options in the .fetchmailrc -+file. Some services, such as POP3 and IMAP, have - different well known ports defined for the SSL encrypted services. The - encrypted ports will be selected automatically when SSL is enabled and --no explicit port is specified. The \-\-sslproto 'SSL3' option should be --used to select the SSLv3 protocol (default if unset: v2 or v3). Also, --the \-\-sslcertck command line or sslcertck run control file option --should be used to force strict certificate checking - see below. -+no explicit port is specified. Also, the \-\-sslcertck command line or -+sslcertck run control file option should be used to force strict -+certificate checking - see below. - .PP - If SSL is not configured, fetchmail will usually opportunistically try to use --STARTTLS. STARTTLS can be enforced by using \-\-sslproto "TLS1". TLS --connections use the same port as the unencrypted version of the -+STARTTLS. STARTTLS can be enforced by using \-\-sslproto\~auto and -+defeated by using \-\-sslproto\~''. -+TLS connections use the same port as the unencrypted version of the - protocol and negotiate TLS via special command. The \-\-sslcertck - command line or sslcertck run control file option should be used to - force strict certificate checking - see below. ---- fetchmail-6.3.26.orig/imap.c -+++ fetchmail-6.3.26/imap.c -@@ -405,6 +405,8 @@ static int imap_getauth(int sock, struct - /* apply for connection authorization */ - { - int ok = 0; -+ char *commonname; -+ - (void)greeting; - - /* -@@ -429,25 +431,21 @@ static int imap_getauth(int sock, struct - return(PS_SUCCESS); - } - --#ifdef SSL_ENABLE -- if (maybe_tls(ctl)) { -- char *commonname; -- -- commonname = ctl->server.pollname; -- if (ctl->server.via) -- commonname = ctl->server.via; -- if (ctl->sslcommonname) -- commonname = ctl->sslcommonname; -+ commonname = ctl->server.pollname; -+ if (ctl->server.via) -+ commonname = ctl->server.via; -+ if (ctl->sslcommonname) -+ commonname = ctl->sslcommonname; - -- if (strstr(capabilities, "STARTTLS") -- || must_tls(ctl)) /* if TLS is mandatory, ignore capabilities */ -+#ifdef SSL_ENABLE -+ if (maybe_starttls(ctl)) { -+ if ((strstr(capabilities, "STARTTLS") && maybe_starttls(ctl)) -+ || must_starttls(ctl)) /* if TLS is mandatory, ignore capabilities */ - { -- /* Use "tls1" rather than ctl->sslproto because tls1 is the only -- * protocol that will work with STARTTLS. Don't need to worry -- * whether TLS is mandatory or opportunistic unless SSLOpen() fails -- * (see below). */ -+ /* Don't need to worry whether TLS is mandatory or -+ * opportunistic unless SSLOpen() fails (see below). */ - if (gen_transact(sock, "STARTTLS") == PS_SUCCESS -- && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, "tls1", ctl->sslcertck, -+ && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, ctl->sslproto, ctl->sslcertck, - ctl->sslcertfile, ctl->sslcertpath, ctl->sslfingerprint, commonname, - ctl->server.pollname, &ctl->remotename)) != -1) - { -@@ -470,7 +468,7 @@ static int imap_getauth(int sock, struct - { - report(stdout, GT_("%s: upgrade to TLS succeeded.\n"), commonname); - } -- } else if (must_tls(ctl)) { -+ } else if (must_starttls(ctl)) { - /* Config required TLS but we couldn't guarantee it, so we must - * stop. */ - set_timeout(0); -@@ -492,6 +490,10 @@ static int imap_getauth(int sock, struct - /* Usable. Proceed with authenticating insecurely. */ - } - } -+ } else { -+ if (strstr(capabilities, "STARTTLS") && outlevel >= O_VERBOSE) { -+ report(stdout, GT_("%s: WARNING: server offered STARTTLS but sslproto '' given.\n"), commonname); -+ } - } - #endif /* SSL_ENABLE */ - ---- fetchmail-6.3.26.orig/po/Makevars -+++ fetchmail-6.3.26/po/Makevars -@@ -46,3 +46,15 @@ MSGID_BUGS_ADDRESS = fetchmail-devel@lis - # This is the list of locale categories, beyond LC_MESSAGES, for which the - # message catalogs shall be used. It is usually empty. - EXTRA_LOCALE_CATEGORIES = -+ -+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' -+# context. Possible values are "yes" and "no". Set this to yes if the -+# package uses functions taking also a message context, like pgettext(), or -+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. -+USE_MSGCTXT = no -+ -+# These options get passed to msgmerge. -+# Useful options are in particular: -+# --previous to keep previous msgids of translated messages, -+# --quiet to reduce the verbosity. -+MSGMERGE_OPTIONS = ---- fetchmail-6.3.26.orig/pop3.c -+++ fetchmail-6.3.26/pop3.c -@@ -281,6 +281,7 @@ static int pop3_getauth(int sock, struct - #endif /* OPIE_ENABLE */ - #ifdef SSL_ENABLE - flag connection_may_have_tls_errors = FALSE; -+ char *commonname; - #endif /* SSL_ENABLE */ - - done_capa = FALSE; -@@ -393,7 +394,7 @@ static int pop3_getauth(int sock, struct - (ctl->server.authenticate == A_KERBEROS_V5) || - (ctl->server.authenticate == A_OTP) || - (ctl->server.authenticate == A_CRAM_MD5) || -- maybe_tls(ctl)) -+ maybe_starttls(ctl)) - { - if ((ok = capa_probe(sock)) != PS_SUCCESS) - /* we are in STAGE_GETAUTH => failure is PS_AUTHFAIL! */ -@@ -406,12 +407,12 @@ static int pop3_getauth(int sock, struct - (ok == PS_SOCKET && !ctl->wehaveauthed)) - { - #ifdef SSL_ENABLE -- if (must_tls(ctl)) { -+ if (must_starttls(ctl)) { - /* fail with mandatory STLS without repoll */ - report(stderr, GT_("TLS is mandatory for this session, but server refused CAPA command.\n")); - report(stderr, GT_("The CAPA command is however necessary for TLS.\n")); - return ok; -- } else if (maybe_tls(ctl)) { -+ } else if (maybe_starttls(ctl)) { - /* defeat opportunistic STLS */ - xfree(ctl->sslproto); - ctl->sslproto = xstrdup(""); -@@ -431,24 +432,19 @@ static int pop3_getauth(int sock, struct - } - - #ifdef SSL_ENABLE -- if (maybe_tls(ctl)) { -- char *commonname; -+ commonname = ctl->server.pollname; -+ if (ctl->server.via) -+ commonname = ctl->server.via; -+ if (ctl->sslcommonname) -+ commonname = ctl->sslcommonname; - -- commonname = ctl->server.pollname; -- if (ctl->server.via) -- commonname = ctl->server.via; -- if (ctl->sslcommonname) -- commonname = ctl->sslcommonname; -- -- if (has_stls -- || must_tls(ctl)) /* if TLS is mandatory, ignore capabilities */ -+ if (maybe_starttls(ctl)) { -+ if (has_stls || must_starttls(ctl)) /* if TLS is mandatory, ignore capabilities */ - { -- /* Use "tls1" rather than ctl->sslproto because tls1 is the only -- * protocol that will work with STARTTLS. Don't need to worry -- * whether TLS is mandatory or opportunistic unless SSLOpen() fails -- * (see below). */ -+ /* Don't need to worry whether TLS is mandatory or -+ * opportunistic unless SSLOpen() fails (see below). */ - if (gen_transact(sock, "STLS") == PS_SUCCESS -- && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, "tls1", ctl->sslcertck, -+ && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, ctl->sslproto, ctl->sslcertck, - ctl->sslcertfile, ctl->sslcertpath, ctl->sslfingerprint, commonname, - ctl->server.pollname, &ctl->remotename)) != -1) - { -@@ -475,7 +471,7 @@ static int pop3_getauth(int sock, struct - { - report(stdout, GT_("%s: upgrade to TLS succeeded.\n"), commonname); - } -- } else if (must_tls(ctl)) { -+ } else if (must_starttls(ctl)) { - /* Config required TLS but we couldn't guarantee it, so we must - * stop. */ - set_timeout(0); -@@ -495,7 +491,11 @@ static int pop3_getauth(int sock, struct - } - } - } -- } /* maybe_tls() */ -+ } else { /* maybe_starttls() */ -+ if (has_stls && outlevel >= O_VERBOSE) { -+ report(stdout, GT_("%s: WARNING: server offered STLS, but sslproto '' given.\n"), commonname); -+ } -+ } /* maybe_starttls() */ - #endif /* SSL_ENABLE */ - - /* ---- fetchmail-6.3.26.orig/socket.c -+++ fetchmail-6.3.26/socket.c -@@ -876,7 +876,9 @@ int SSLOpen(int sock, char *mycert, char - { - struct stat randstat; - int i; -+ int avoid_ssl_versions = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3; - long sslopts = SSL_OP_ALL; -+ int ssle_connect = 0; - - SSL_load_error_strings(); - SSL_library_init(); -@@ -906,25 +908,57 @@ int SSLOpen(int sock, char *mycert, char - /* Make sure a connection referring to an older context is not left */ - _ssl_context[sock] = NULL; - if(myproto) { -- if(!strcasecmp("ssl2",myproto)) { --#if HAVE_DECL_SSLV2_CLIENT_METHOD + 0 > 0 -- _ctx[sock] = SSL_CTX_new(SSLv2_client_method()); -+ if(!strcasecmp("ssl3",myproto)) { -+#if (HAVE_DECL_SSLV3_CLIENT_METHOD > 0) && (0 == OPENSSL_NO_SSL3 + 0) -+ _ctx[sock] = SSL_CTX_new(SSLv3_client_method()); -+ avoid_ssl_versions &= ~SSL_OP_NO_SSLv3; - #else -- report(stderr, GT_("Your operating system does not support SSLv2.\n")); -+ report(stderr, GT_("Your OpenSSL version does not support SSLv3.\n")); - return -1; - #endif -- } else if(!strcasecmp("ssl3",myproto)) { -- _ctx[sock] = SSL_CTX_new(SSLv3_client_method()); -+ } else if(!strcasecmp("ssl3+",myproto)) { -+ avoid_ssl_versions &= ~SSL_OP_NO_SSLv3; -+ myproto = NULL; - } else if(!strcasecmp("tls1",myproto)) { - _ctx[sock] = SSL_CTX_new(TLSv1_client_method()); -- } else if (!strcasecmp("ssl23",myproto)) { -+ } else if(!strcasecmp("tls1+",myproto)) { -+ myproto = NULL; -+#if defined(TLS1_1_VERSION) && TLS_MAX_VERSION >= TLS1_1_VERSION -+ } else if(!strcasecmp("tls1.1",myproto)) { -+ _ctx[sock] = SSL_CTX_new(TLSv1_1_client_method()); -+ } else if(!strcasecmp("tls1.1+",myproto)) { -+ myproto = NULL; -+ avoid_ssl_versions |= SSL_OP_NO_TLSv1; -+#else -+ } else if(!strcasecmp("tls1.1",myproto) || !strcasecmp("tls1.1+", myproto)) { -+ report(stderr, GT_("Your OpenSSL version does not support TLS v1.1.\n")); -+ return -1; -+#endif -+#if defined(TLS1_2_VERSION) && TLS_MAX_VERSION >= TLS1_2_VERSION -+ } else if(!strcasecmp("tls1.2",myproto)) { -+ _ctx[sock] = SSL_CTX_new(TLSv1_2_client_method()); -+ } else if(!strcasecmp("tls1.2+",myproto)) { -+ myproto = NULL; -+ avoid_ssl_versions |= SSL_OP_NO_TLSv1; -+ avoid_ssl_versions |= SSL_OP_NO_TLSv1_1; -+#else -+ } else if(!strcasecmp("tls1.2",myproto) || !strcasecmp("tls1.2+", myproto)) { -+ report(stderr, GT_("Your OpenSSL version does not support TLS v1.2.\n")); -+ return -1; -+#endif -+ } else if (!strcasecmp("ssl23",myproto) || 0 == strcasecmp("auto",myproto)) { - myproto = NULL; - } else { -- report(stderr,GT_("Invalid SSL protocol '%s' specified, using default (SSLv23).\n"), myproto); -+ report(stderr,GT_("Invalid SSL protocol '%s' specified, using default autoselect (SSL23).\n"), myproto); - myproto = NULL; - } - } -- if(!myproto) { -+ // do not combine into an else { } as myproto may be nulled -+ // above! -+ if (!myproto) { -+ // SSLv23 is a misnomer and will in fact use the best -+ // available protocol, subject to SSL_OP_NO* -+ // constraints. - _ctx[sock] = SSL_CTX_new(SSLv23_client_method()); - } - if(_ctx[sock] == NULL) { -@@ -938,7 +972,7 @@ int SSLOpen(int sock, char *mycert, char - sslopts &= ~ SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS; - } - -- SSL_CTX_set_options(_ctx[sock], sslopts); -+ SSL_CTX_set_options(_ctx[sock], sslopts | avoid_ssl_versions); - - if (certck) { - SSL_CTX_set_verify(_ctx[sock], SSL_VERIFY_PEER, SSL_ck_verify_callback); -@@ -1008,8 +1042,18 @@ int SSLOpen(int sock, char *mycert, char - } - - if (SSL_set_fd(_ssl_context[sock], sock) == 0 -- || SSL_connect(_ssl_context[sock]) < 1) { -+ || (ssle_connect = SSL_connect(_ssl_context[sock])) < 1) { -+ int e = errno; -+ unsigned long ssle_err_from_queue = ERR_peek_error(); -+ unsigned long ssle_err_from_get_error = SSL_get_error(_ssl_context[sock], ssle_connect); - ERR_print_errors_fp(stderr); -+ if (SSL_ERROR_SYSCALL == ssle_err_from_get_error && 0 == ssle_err_from_queue) { -+ if (0 == ssle_connect) { -+ report(stderr, GT_("Server shut down connection prematurely during SSL_connect().\n")); -+ } else if (ssle_connect < 0) { -+ report(stderr, GT_("System error during SSL_connect(): %s\n"), strerror(e)); -+ } -+ } - SSL_free( _ssl_context[sock] ); - _ssl_context[sock] = NULL; - SSL_CTX_free(_ctx[sock]); -@@ -1017,6 +1061,24 @@ int SSLOpen(int sock, char *mycert, char - return(-1); - } - -+ if (outlevel >= O_VERBOSE) { -+ SSL_CIPHER const *sc; -+ int bitsmax, bitsused; -+ -+ const char *ver; -+ -+ ver = SSL_get_version(_ssl_context[sock]); -+ -+ sc = SSL_get_current_cipher(_ssl_context[sock]); -+ if (!sc) { -+ report (stderr, GT_("Cannot obtain current SSL/TLS cipher - no session established?\n")); -+ } else { -+ bitsused = SSL_CIPHER_get_bits(sc, &bitsmax); -+ report(stdout, GT_("SSL/TLS: using protocol %s, cipher %s, %d/%d secret/processed bits\n"), -+ ver, SSL_CIPHER_get_name(sc), bitsused, bitsmax); -+ } -+ } -+ - /* Paranoia: was the callback not called as we expected? */ - if (!_depth0ck) { - report(stderr, GT_("Certificate/fingerprint verification was somehow skipped!\n")); ---- /dev/null -+++ fetchmail-6.3.26/starttls.c -@@ -0,0 +1,37 @@ -+/** \file tls.c - collect common TLS functionality -+ * \author Matthias Andree -+ * \date 2006 -+ */ -+ -+#include "fetchmail.h" -+ -+#include <string.h> -+ -+#ifdef HAVE_STRINGS_H -+#include <strings.h> -+#endif -+ -+/** return true if user allowed opportunistic STARTTLS/STLS */ -+int maybe_starttls(struct query *ctl) { -+#ifdef SSL_ENABLE -+ /* opportunistic or forced TLS */ -+ return (!ctl->sslproto || strlen(ctl->sslproto)) -+ && !ctl->use_ssl; -+#else -+ (void)ctl; -+ return 0; -+#endif -+} -+ -+/** return true if user requires STARTTLS/STLS, note though that this -+ * code must always use a logical AND with maybe_tls(). */ -+int must_starttls(struct query *ctl) { -+#ifdef SSL_ENABLE -+ return maybe_starttls(ctl) -+ && (ctl->sslfingerprint || ctl->sslcertck -+ || (ctl->sslproto && !strcasecmp(ctl->sslproto, "tls1"))); -+#else -+ (void)ctl; -+ return 0; -+#endif -+} diff --git a/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb b/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.4.bb index 5af5d0df..efab0c80 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.4.bb @@ -3,17 +3,16 @@ HOMEPAGE = "http://www.fetchmail.info/" DESCRIPTION = "Fetchmail is a full-featured, robust, well-documented remote-mail retrieval and forwarding utility intended to be used over on-demand TCP/IP links (such as SLIP or PPP connections). It supports every remote-mail protocol now in use on the Internet: POP2, POP3, RPOP, APOP, KPOP, all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and IPSEC." SECTION = "mail" LICENSE = "GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=fbb509e0303f5ded1cbfc0cc8705f28c" +LIC_FILES_CHKSUM = "file://COPYING;md5=ca53985c1fd053ae0bffffaa89ed49f1" DEPENDS = "openssl" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \ - file://02_remove_SSLv3.patch \ " -SRC_URI[md5sum] = "61b66faad044afa26e142bb1791aa2b3" -SRC_URI[sha256sum] = "79b4c54cdbaf02c1a9a691d9948fcb1a77a1591a813e904283a8b614b757e850" +SRC_URI[md5sum] = "53d52179c8bf8e2f57489538b49bfda9" +SRC_URI[sha256sum] = "511b60daabf7543a01de06af07c8772290c6807cd53c42a8504960e978f3abea" -inherit autotools gettext python-dir pythonnative +inherit autotools gettext python3-dir python3native EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${prefix}" diff --git a/external/meta-openembedded/meta-networking/recipes-support/fping/fping_3.5.bb b/external/meta-openembedded/meta-networking/recipes-support/fping/fping_4.2.bb index 82e3bf07..594f5b9c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/fping/fping_3.5.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/fping/fping_4.2.bb @@ -9,11 +9,11 @@ in a round-robin fashion." HOMEPAGE = "http://www.fping.org/" SECTION = "net" LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=09d77789fe32be35acde9637a5ee39b1" +LIC_FILES_CHKSUM = "file://COPYING;md5=c6170fbadddfcd74f011515291d96901" SRC_URI = "http://www.fping.org/dist/fping-${PV}.tar.gz" -SRC_URI[md5sum] = "2e17cb655aa4eb59b5a4a38a89e746ed" -SRC_URI[sha256sum] = "09b8960e235341bae6000085d38106357eae656a79e0119bd27e816c9003656a" +SRC_URI[md5sum] = "218e71764177a8ce25564a7810f8e729" +SRC_URI[sha256sum] = "7d339674b6a95aae1d8ad487ff5056fd95b474c3650938268f6a905c3771b64a" S = "${WORKDIR}/fping-${PV}" diff --git a/external/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb b/external/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb index 0fd5f6fe..3eca3ab6 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb @@ -7,9 +7,8 @@ inherit autotools-brokensep SRC_URI = "http://www.cipherdyne.org/${BPN}/download/${BPN}-${PV}.tar.bz2 \ " - -SRC_URI[md5sum] = "e2c49e9674888a028bd443a55c3aaa22" -SRC_URI[sha256sum] = "5bf47fe1fd30e862d29464f762c0b8bf89b5e298665c37624d6707826da956d4" +SRC_URI[md5sum] = "47a9c7c214c40dceb5dc2aa8832e4f32" +SRC_URI[sha256sum] = "f6c09bec97ed8e474a98ae14f9f53e1bcdda33393f20667b6af3fb6bb894ca77" DEPENDS = "libpcap gpgme" diff --git a/external/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb b/external/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.2.bb index eb678784..d9d72686 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.2.bb @@ -22,8 +22,8 @@ SRC_URI = "http://www.vervest.org/htp/archive/c/htpdate-${PV}.tar.xz \ file://0001-Make-environment-variables-assignments-to-be-weak.patch \ file://0001-Replace-ntp_adjtime-with-adjtimex.patch \ " -SRC_URI[md5sum] = "9d5ca69be06edf5d535b52b5f790da4e" -SRC_URI[sha256sum] = "22b2cf3ec45b0eedecddd3ad2a3d754ac57942ae7dcbac410d254935f0bdbc03" +SRC_URI[md5sum] = "aad8c33933648532ac8716c809b15be1" +SRC_URI[sha256sum] = "5f1f959877852abb3153fa407e8532161a7abe916aa635796ef93f8e4119f955" do_configure () { : diff --git a/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch new file mode 100644 index 00000000..24691003 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch @@ -0,0 +1,15 @@ +Description: Correct typo: s/ommited/omitted/ +Author: Michael Shuler <michael@pbandjelly.org> +Index: ifmetric/man/ifmetric.8 +=================================================================== +--- ifmetric.orig/man/ifmetric.8 ++++ ifmetric/man/ifmetric.8 +@@ -9,7 +9,7 @@ ifmetric is a Linux tool for setting the + + ifmetric uses the Linux NETLINK interface to manipulate the routes. Because of that it is compatible with routes created with the new iproute2 utility. + .SH OPTIONS +-You should specify the interface name as first parameter. The second parameter should be the new metric. If ommited the metric 0 (highest) is used. ++You should specify the interface name as first parameter. The second parameter should be the new metric. If omitted the metric 0 (highest) is used. + .SH RETURN VALUES + \fI0\f1 Success + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch new file mode 100644 index 00000000..374135d4 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch @@ -0,0 +1,16 @@ +Description: Fix "NETLINK: Error: Invalid argument" for links that are down, in kernel 4.4+ +Author: Jim Paris <jim@jtan.com> +Bug-Debian: http://bugs.debian.org/864889 +Index: ifmetric/src/nlrequest.c +=================================================================== +--- a/src/ifmetric.c ++++ b/src/ifmetric.c +@@ -97,6 +97,8 @@ + l = NLMSG_PAYLOAD(n, sizeof(struct rtmsg)); + a = RTM_RTA(r); + ++ r->rtm_flags &= ~(RTNH_F_DEAD | RTNH_F_LINKDOWN); ++ + while(RTA_OK(a, l)) { + switch(a->rta_type) { + case RTA_PRIORITY: diff --git a/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch new file mode 100644 index 00000000..992f7d2f --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch @@ -0,0 +1,24 @@ +Description: Correct spelling-error-in-binary s/Recieved/Received/ +Author: Michael Shuler <michael@pbandjelly.org> +Index: ifmetric/src/ifmetric.c +=================================================================== +--- ifmetric.orig/src/ifmetric.c 2013-09-04 18:37:59.000000000 -0500 ++++ ifmetric/src/ifmetric.c 2013-09-04 19:08:38.539750778 -0500 +@@ -38,7 +38,7 @@ + case RTA_OIF: + + if (RTA_PAYLOAD(a) != sizeof(int)) { +- fprintf(stderr, "NETLINK: Recieved corrupt RTA_OIF payload.\n"); ++ fprintf(stderr, "NETLINK: Received corrupt RTA_OIF payload.\n"); + return -1; + } + +@@ -102,7 +102,7 @@ + case RTA_PRIORITY: + + if (RTA_PAYLOAD(a) != sizeof(int)) { +- fprintf(stderr, "NETLINK: Recieved corrupt RTA_PRIORITY payload.\n"); ++ fprintf(stderr, "NETLINK: Received corrupt RTA_PRIORITY payload.\n"); + return NULL; + } + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch new file mode 100644 index 00000000..15b31033 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch @@ -0,0 +1,16 @@ +Description: Fix "NETLINK: Packet too small or truncated!" error. +Author: Benedek László <benedekl@gmail.com> +Bug-Debian: http://bugs.debian.org/514197 +Index: ifmetric/src/nlrequest.c +=================================================================== +--- ifmetric.orig/src/nlrequest.c 2013-09-05 14:10:42.000000000 -0500 ++++ ifmetric/src/nlrequest.c 2013-09-05 14:19:06.573420862 -0500 +@@ -44,7 +44,7 @@ + + for (;;) { + int bytes; +- char replybuf[2048]; ++ char replybuf[4096]; + struct nlmsghdr *p = (struct nlmsghdr *) replybuf; + + if ((bytes = recv(s, &replybuf, sizeof(replybuf), 0)) < 0) { diff --git a/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb new file mode 100644 index 00000000..4ee7c42a --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Set routing metrics for a network interface" + +LICENSE = "GPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f" + +SRC_URI = "http://0pointer.de/lennart/projects/ifmetric/ifmetric-${PV}.tar.gz \ + file://ifmetric.8_typo.patch \ + file://ifmetric.c_netlink-invalid-arg.patch \ + file://ifmetric.c_typo.patch \ + file://nlrequest.c_packet-too-small_fix.patch" +SRC_URI[md5sum] = "74aa3f5ee8aca16a87e124ddcc64fa36" +SRC_URI[sha256sum] = "0fa8510a4e34e555f136f9df81d26618313f2d69a4880c0fb5967f19502f1aec" + +inherit autotools + +# disable lynx support for now +EXTRA_OECONF = "--disable-lynx" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch b/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch index 38d30647..e95b6f99 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch @@ -1,4 +1,4 @@ -From fd80c0599083013a1b583feba5d7473f52b35938 Mon Sep 17 00:00:00 2001 +From 7fd0e0b88df692dfc67335f235a1bb74854a0498 Mon Sep 17 00:00:00 2001 From: Mariia Movchan <mmovchan@cisco.com> Date: Tue, 6 Mar 2018 16:03:39 +0200 Subject: [PATCH] Makefile: pass extra linker flags @@ -9,16 +9,17 @@ ERROR: QA Issue: No GNU_HASH in the elf binary Upstream-Status: Pending Signed-off-by: Mariia Movchan <mmovchan@cisco.com> + --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index 8beff8f..047f02a 100644 +index 54569c1..798988f 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,7 @@ LIBS?= - VERSION=0.2.2 + VERSION=0.2.3 CC?=gcc CFLAGS?=-O2 -g -Wall -LDFLAGS=$(LIBS) @@ -26,6 +27,3 @@ index 8beff8f..047f02a 100644 ifeq ($(USE_GEOIP),yes) ifeq ($(USE_DYN_GEOIP),yes) --- -2.15.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb b/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc_0.2.3.bb index b4564240..ad0ec270 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ipcalc/ipcalc_0.2.3.bb @@ -7,7 +7,7 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" S = "${WORKDIR}/git" -SRCREV = "8348808a7869ca8f25a5b5deeaa418c2f6d52758" +SRCREV = "c3ee70c878b9c5833a77a1f339f1ca4dc6f225c5" SRC_URI = "\ git://github.com/nmav/ipcalc.git;protocol=https; \ file://0001-Makefile-pass-extra-linker-flags.patch \ diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch deleted file mode 100644 index 11a91039..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 282d492e4cab7b4d9c7321f4c0c55b615948e280 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Fri, 11 May 2018 14:09:17 -0700 -Subject: [PATCH] Disable gcc8 specific warnings - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/libipsec/ipsec_dump_policy.c | 5 +++++ - src/libipsec/pfkey_dump.c | 5 +++++ - src/racoon/isakmp.c | 11 ++++++++++- - 3 files changed, 20 insertions(+), 1 deletion(-) - -diff --git a/src/libipsec/ipsec_dump_policy.c b/src/libipsec/ipsec_dump_policy.c -index 4d0eb77..c3fc842 100644 ---- a/src/libipsec/ipsec_dump_policy.c -+++ b/src/libipsec/ipsec_dump_policy.c -@@ -275,6 +275,10 @@ ipsec_dump_policy1(policy, delimiter, withports) - return buf; - } - -+#pragma GCC diagnostic push -+#if defined(__GNUC__) && (__GNUC__ >= 8) -+#pragma GCC diagnostic ignored "-Wformat-truncation" -+#endif - static char * - ipsec_dump_ipsecrequest(buf, len, xisr, bound, withports) - char *buf; -@@ -419,3 +423,4 @@ set_address(buf, len, sa, withports) - - return buf; - } -+#pragma GCC diagnostic pop -diff --git a/src/libipsec/pfkey_dump.c b/src/libipsec/pfkey_dump.c -index 4627ebc..451e535 100644 ---- a/src/libipsec/pfkey_dump.c -+++ b/src/libipsec/pfkey_dump.c -@@ -691,6 +691,10 @@ str_ipport(sa) - /* - * set "/prefix[port number]" to buffer. - */ -+#pragma GCC diagnostic push -+#if defined(__GNUC__) && (__GNUC__ >= 8) -+#pragma GCC diagnostic ignored "-Wformat-truncation" -+#endif - static char * - str_prefport(family, pref, port, ulp) - u_int family, pref, port, ulp; -@@ -735,6 +739,7 @@ str_prefport(family, pref, port, ulp) - - return buf; - } -+#pragma GCC diagnostic pop - - static void - str_upperspec(ulp, p1, p2) -diff --git a/src/racoon/isakmp.c b/src/racoon/isakmp.c -index 7ff53a3..4addf24 100644 ---- a/src/racoon/isakmp.c -+++ b/src/racoon/isakmp.c -@@ -3124,7 +3124,12 @@ script_hook(iph1, script) - #endif - - /* local address */ -+#pragma GCC diagnostic push -+#if defined(__GNUC__) && (__GNUC__ >= 8) -+#pragma GCC diagnostic ignored "-Wstringop-truncation" -+#endif - GETNAMEINFO(iph1->local, addrstr, portstr); -+#pragma GCC diagnostic pop - - if (script_env_append(&envp, &envc, "LOCAL_ADDR", addrstr) != 0) { - plog(LLV_ERROR, LOCATION, NULL, "Cannot set LOCAL_ADDR\n"); -@@ -3138,8 +3143,12 @@ script_hook(iph1, script) - - /* Peer address */ - if (iph1->remote != NULL) { -+#pragma GCC diagnostic push -+#if defined(__GNUC__) && (__GNUC__ >= 8) -+#pragma GCC diagnostic ignored "-Wstringop-truncation" -+#endif - GETNAMEINFO(iph1->remote, addrstr, portstr); -- -+#pragma GCC diagnostic pop - if (script_env_append(&envp, &envc, - "REMOTE_ADDR", addrstr) != 0) { - plog(LLV_ERROR, LOCATION, NULL, diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch deleted file mode 100644 index 5c091474..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch +++ /dev/null @@ -1,115 +0,0 @@ -From 9135ca401186fb14e5e5110bbb04d1ccc480360a Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 15 Nov 2016 04:15:44 +0000 -Subject: [PATCH] Fix build with clang - -Fixes for following errors found by clang - -src/racoon/eaytest.c:316:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true - [-Werror,-Wtautological-pointer-compare] - if (dnstr_w1 != NULL) { - ^~~~~~~~ ~~~~ -src/racoon/eaytest.c:326:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true - [-Werror,-Wtautological-pointer-compare] - if (dnstr_w1 != NULL) { - ^~~~~~~~ ~~~~ - -src/racoon/isakmp.c:1134:11: error: promoted type 'int' of K&R function parameter is not compatible with the - parameter type 'u_int8_t' (aka 'unsigned char') declared in a previous prototype [-Werror,-Wknr-promoted-parameter] - u_int8_t etype; - ^ -src/racoon/isakmp.c:184:48: note: previous declaration is here - struct sockaddr *, struct sockaddr *, u_int8_t)); - ^ - 1 error generated. - -src/racoon/racoonctl.c:1457:15: error: incompatible pointer types passing 'struct evt_async *' to parameter of type - 'caddr_t' (aka 'char *') [-Werror,-Wincompatible-pointer-types] - print_cfg(ec, len); - ^~ - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/racoon/eaytest.c | 4 ++-- - src/racoon/isakmp.c | 10 +++++----- - src/racoon/racoonctl.c | 7 +++---- - 3 files changed, 10 insertions(+), 11 deletions(-) - -diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c -index 1474bdc..d609e4f 100644 ---- a/src/racoon/eaytest.c -+++ b/src/racoon/eaytest.c -@@ -313,7 +313,7 @@ certtest(ac, av) - - printf("exact match: succeed.\n"); - -- if (dnstr_w1 != NULL) { -+ if (dnstr_w1[0] != '\0') { - asn1dn = eay_str2asn1dn(dnstr_w1, strlen(dnstr_w1)); - if (asn1dn == NULL || asn1dn->l == asn1dn0.l) - errx(1, "asn1dn length wrong for wildcard 1\n"); -@@ -323,7 +323,7 @@ certtest(ac, av) - printf("wildcard 1 match: succeed.\n"); - } - -- if (dnstr_w1 != NULL) { -+ if (dnstr_w1[0] != '\0') { - asn1dn = eay_str2asn1dn(dnstr_w2, strlen(dnstr_w2)); - if (asn1dn == NULL || asn1dn->l == asn1dn0.l) - errx(1, "asn1dn length wrong for wildcard 2\n"); -diff --git a/src/racoon/isakmp.c b/src/racoon/isakmp.c -index 2672f7a..da7ebe8 100644 ---- a/src/racoon/isakmp.c -+++ b/src/racoon/isakmp.c -@@ -567,7 +567,7 @@ isakmp_main(msg, remote, local) - - /* it must be responder's 1st exchange. */ - if (isakmp_ph1begin_r(msg, remote, local, -- isakmp->etype) < 0) -+ (u_int8_t)isakmp->etype) < 0) - return -1; - break; - -@@ -1128,10 +1128,10 @@ isakmp_ph1begin_i(rmconf, remote, local) - - /* new negotiation of phase 1 for responder */ - static int --isakmp_ph1begin_r(msg, remote, local, etype) -- vchar_t *msg; -- struct sockaddr *remote, *local; -- u_int8_t etype; -+isakmp_ph1begin_r(vchar_t *msg, -+ struct sockaddr *remote, -+ struct sockaddr *local, -+ u_int8_t etype) - { - struct isakmp *isakmp = (struct isakmp *)msg->v; - struct ph1handle *iph1; -diff --git a/src/racoon/racoonctl.c b/src/racoon/racoonctl.c -index da28ecd..bbf068e 100644 ---- a/src/racoon/racoonctl.c -+++ b/src/racoon/racoonctl.c -@@ -1299,9 +1299,8 @@ print_evt(evtdump) - * Print ISAKMP mode config info (IP and banner) - */ - void --print_cfg(buf, len) -- caddr_t buf; -- int len; -+print_cfg(caddr_t buf, -+ int len) - { - struct evt_async *evtdump = (struct evt_async *)buf; - struct isakmp_data *attr; -@@ -1454,7 +1453,7 @@ handle_recv(combuf) - else if (evt_quit_event == ec->ec_type) { - switch (ec->ec_type) { - case EVT_PHASE1_MODE_CFG: -- print_cfg(ec, len); -+ print_cfg((caddr_t)ec, len); - break; - default: - print_evt(ec); --- -1.9.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch deleted file mode 100644 index 630ecdb5..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch +++ /dev/null @@ -1,249 +0,0 @@ -From 7d9585be093c9cb2428b373c0b0088bb778942d0 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 20 Mar 2017 21:37:47 -0700 -Subject: [PATCH] Fix header issues found with musl libc - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/libipsec/ipsec_strerror.h | 3 +++ - src/libipsec/libpfkey.h | 4 +++- - src/racoon/admin.c | 2 +- - src/racoon/backupsa.c | 6 +++--- - src/racoon/cftoken.l | 4 ++++ - src/racoon/logger.h | 3 +++ - src/racoon/misc.h | 3 +++ - src/racoon/missing/crypto/sha2/sha2.h | 3 +++ - src/racoon/netdb_dnssec.h | 3 +++ - src/racoon/pfkey.c | 1 - - src/racoon/plog.h | 2 ++ - src/racoon/str2val.h | 3 +++ - src/racoon/vmbuf.h | 3 +++ - src/setkey/extern.h | 3 ++- - src/setkey/setkey.c | 1 - - 15 files changed, 36 insertions(+), 8 deletions(-) - -diff --git a/src/libipsec/ipsec_strerror.h b/src/libipsec/ipsec_strerror.h -index 2b4264f..dac66a1 100644 ---- a/src/libipsec/ipsec_strerror.h -+++ b/src/libipsec/ipsec_strerror.h -@@ -34,6 +34,9 @@ - #ifndef _IPSEC_STRERROR_H - #define _IPSEC_STRERROR_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - extern int __ipsec_errcode; - extern void __ipsec_set_strerror __P((const char *)); - -diff --git a/src/libipsec/libpfkey.h b/src/libipsec/libpfkey.h -index 61d2f2a..f7991b7 100644 ---- a/src/libipsec/libpfkey.h -+++ b/src/libipsec/libpfkey.h -@@ -34,6 +34,9 @@ - #ifndef _LIBPFKEY_H - #define _LIBPFKEY_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - #ifndef KAME_LIBPFKEY_H - #define KAME_LIBPFKEY_H - -@@ -43,7 +46,6 @@ - - #define PRIORITY_OFFSET_POSITIVE_MAX 0x3fffffff - #define PRIORITY_OFFSET_NEGATIVE_MAX 0x40000000 -- - struct sadb_msg; - extern void pfkey_sadump __P((struct sadb_msg *)); - extern void pfkey_sadump_withports __P((struct sadb_msg *)); -diff --git a/src/racoon/admin.c b/src/racoon/admin.c -index 4b1875b..03ea3f8 100644 ---- a/src/racoon/admin.c -+++ b/src/racoon/admin.c -@@ -36,7 +36,6 @@ - #include <sys/types.h> - #include <sys/param.h> - #include <sys/socket.h> --#include <sys/signal.h> - #include <sys/stat.h> - #include <sys/un.h> - -@@ -46,6 +45,7 @@ - #include PATH_IPSEC_H - - -+#include <signal.h> - #include <stdlib.h> - #include <stdio.h> - #include <string.h> -diff --git a/src/racoon/backupsa.c b/src/racoon/backupsa.c -index 82d74ca..95307ca 100644 ---- a/src/racoon/backupsa.c -+++ b/src/racoon/backupsa.c -@@ -276,9 +276,9 @@ do { \ - GETNEXTNUM(sa_args.a_keylen, strtoul); - GETNEXTNUM(sa_args.flags, strtoul); - GETNEXTNUM(sa_args.l_alloc, strtoul); -- GETNEXTNUM(sa_args.l_bytes, strtouq); -- GETNEXTNUM(sa_args.l_addtime, strtouq); -- GETNEXTNUM(sa_args.l_usetime, strtouq); -+ GETNEXTNUM(sa_args.l_bytes, strtoull); -+ GETNEXTNUM(sa_args.l_addtime, strtoull); -+ GETNEXTNUM(sa_args.l_usetime, strtoull); - GETNEXTNUM(sa_args.seq, strtoul); - - #undef GETNEXTNUM -diff --git a/src/racoon/cftoken.l b/src/racoon/cftoken.l -index 1701922..787f4a9 100644 ---- a/src/racoon/cftoken.l -+++ b/src/racoon/cftoken.l -@@ -77,6 +77,10 @@ - - #include "cfparse.h" - -+#ifndef GLOB_TILDE -+#define GLOB_TILDE 0 -+#endif -+ - int yyerrorcount = 0; - - #if defined(YIPS_DEBUG) -diff --git a/src/racoon/logger.h b/src/racoon/logger.h -index 3fd3e94..67af5f0 100644 ---- a/src/racoon/logger.h -+++ b/src/racoon/logger.h -@@ -34,6 +34,9 @@ - #ifndef _LOGGER_H - #define _LOGGER_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - struct log { - int head; - int siz; -diff --git a/src/racoon/misc.h b/src/racoon/misc.h -index 3e758d9..30d9825 100644 ---- a/src/racoon/misc.h -+++ b/src/racoon/misc.h -@@ -34,6 +34,9 @@ - #ifndef _MISC_H - #define _MISC_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - #define BIT2STR(b) bit2str(b, sizeof(b)<<3) - - #ifdef HAVE_FUNC_MACRO -diff --git a/src/racoon/missing/crypto/sha2/sha2.h b/src/racoon/missing/crypto/sha2/sha2.h -index 42bcc2a..c043dfe 100644 ---- a/src/racoon/missing/crypto/sha2/sha2.h -+++ b/src/racoon/missing/crypto/sha2/sha2.h -@@ -40,6 +40,9 @@ - #ifndef __SHA2_H__ - #define __SHA2_H__ - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - #ifdef __cplusplus - extern "C" { - #endif -diff --git a/src/racoon/netdb_dnssec.h b/src/racoon/netdb_dnssec.h -index a11209d..98fd813 100644 ---- a/src/racoon/netdb_dnssec.h -+++ b/src/racoon/netdb_dnssec.h -@@ -34,6 +34,9 @@ - #ifndef _NETDB_DNSSEC_H - #define _NETDB_DNSSEC_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - #ifndef T_CERT - #define T_CERT 37 /* defined by RFC2538 section 2 */ - #endif -diff --git a/src/racoon/pfkey.c b/src/racoon/pfkey.c -index 8f26c19..a06c30e 100644 ---- a/src/racoon/pfkey.c -+++ b/src/racoon/pfkey.c -@@ -59,7 +59,6 @@ - #include <sys/param.h> - #include <sys/socket.h> - #include <sys/queue.h> --#include <sys/sysctl.h> - - #include <net/route.h> - #include <net/pfkeyv2.h> -diff --git a/src/racoon/plog.h b/src/racoon/plog.h -index ed43c8b..920c850 100644 ---- a/src/racoon/plog.h -+++ b/src/racoon/plog.h -@@ -34,6 +34,8 @@ - #ifndef _PLOG_H - #define _PLOG_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ - #ifdef HAVE_STDARG_H - #include <stdarg.h> - #else -diff --git a/src/racoon/str2val.h b/src/racoon/str2val.h -index 4a7cec1..d3d698e 100644 ---- a/src/racoon/str2val.h -+++ b/src/racoon/str2val.h -@@ -34,6 +34,9 @@ - #ifndef _STR2VAL_H - #define _STR2VAL_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - extern caddr_t val2str __P((const char *, size_t)); - extern char *str2val __P((const char *, int, size_t *)); - -diff --git a/src/racoon/vmbuf.h b/src/racoon/vmbuf.h -index 3f2f4ea..8287a00 100644 ---- a/src/racoon/vmbuf.h -+++ b/src/racoon/vmbuf.h -@@ -34,6 +34,9 @@ - #ifndef _VMBUF_H - #define _VMBUF_H - -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ -+ - /* - * bp v - * v v -diff --git a/src/setkey/extern.h b/src/setkey/extern.h -index 6f439fa..a1d9d14 100644 ---- a/src/setkey/extern.h -+++ b/src/setkey/extern.h -@@ -1,6 +1,7 @@ - /* $NetBSD: extern.h,v 1.5 2009/03/06 11:45:03 tteras Exp $ */ - -- -+#undef __P -+#define __P(protos) protos /* ANSI C prototypes */ - - void parse_init __P((void)); - int parse __P((FILE **)); -diff --git a/src/setkey/setkey.c b/src/setkey/setkey.c -index c400faa..51f8b75 100644 ---- a/src/setkey/setkey.c -+++ b/src/setkey/setkey.c -@@ -40,7 +40,6 @@ - #include <sys/socket.h> - #include <sys/time.h> - #include <sys/stat.h> --#include <sys/sysctl.h> - #include <err.h> - #include <netinet/in.h> - #include <net/pfkeyv2.h> --- -2.12.0 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch deleted file mode 100644 index 22827443..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch +++ /dev/null @@ -1,1086 +0,0 @@ -From b572350a922187d43dd4629c3b43e19979fae3ef Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz <cote2004-github@yahoo.com> -Date: Tue, 25 Sep 2018 15:30:04 +0800 -Subject: [PATCH] ipsec-tools: add openssl 1.1 support - -To: equeiroz@troianet.com.br - -This patch updates the calls to openssl 1.1 API, and adds a -compatibility layer so it compiles with (at least) openssl 1.0.2, I -haven't tested it with lower versions, but all that's needed is to edit -the openssl_compat.* files and add the missing functions there--they're -usually trivial. - -Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> - -Upstream-Status: Submitted [https://sourceforge.net/p/ipsec-tools/mailman/message/36327963/] -https://github.com/openwrt/packages/blob/master/net/ipsec-tools/patches/015-openssl-1.1.patch - -Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> ---- - src/racoon/Makefile.am | 10 +-- - src/racoon/algorithm.c | 6 +- - src/racoon/crypto_openssl.c | 197 +++++++++++++++++++++------------------- - src/racoon/crypto_openssl.h | 2 +- - src/racoon/eaytest.c | 7 +- - src/racoon/ipsec_doi.c | 2 +- - src/racoon/openssl_compat.c | 213 ++++++++++++++++++++++++++++++++++++++++++++ - src/racoon/openssl_compat.h | 45 ++++++++++ - src/racoon/plainrsa-gen.c | 41 +++++---- - src/racoon/prsa_par.y | 28 ++++-- - src/racoon/rsalist.c | 5 +- - 11 files changed, 430 insertions(+), 126 deletions(-) - create mode 100644 src/racoon/openssl_compat.c - create mode 100644 src/racoon/openssl_compat.h - -diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am -index 0662957..272b009 100644 ---- a/src/racoon/Makefile.am -+++ b/src/racoon/Makefile.am -@@ -4,7 +4,7 @@ sbin_PROGRAMS = racoon racoonctl plainrsa-gen - noinst_PROGRAMS = eaytest - include_racoon_HEADERS = racoonctl.h var.h vmbuf.h misc.h gcmalloc.h admin.h \ - schedule.h sockmisc.h isakmp_var.h isakmp.h isakmp_xauth.h \ -- isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h -+ isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h openssl_compat.h - lib_LTLIBRARIES = libracoon.la - - adminsockdir=${localstatedir}/racoon -@@ -32,7 +32,7 @@ racoon_SOURCES = \ - gssapi.c dnssec.c getcertsbyname.c privsep.c \ - pfkey.c admin.c evt.c ipsec_doi.c oakley.c grabmyaddr.c vendorid.c \ - policy.c localconf.c remoteconf.c crypto_openssl.c algorithm.c \ -- proposal.c sainfo.c strnames.c \ -+ openssl_compat.c proposal.c sainfo.c strnames.c \ - plog.c logger.c schedule.c str2val.c \ - safefile.c backupsa.c genlist.c rsalist.c \ - cftoken.l cfparse.y prsa_tok.l prsa_par.y -@@ -51,12 +51,12 @@ libracoon_la_SOURCES = kmpstat.c vmbuf.c sockmisc.c misc.c - libracoon_la_CFLAGS = -DNOUSE_PRIVSEP $(AM_CFLAGS) - - plainrsa_gen_SOURCES = plainrsa-gen.c plog.c \ -- crypto_openssl.c logger.c -+ crypto_openssl.c logger.c openssl_compat.c - EXTRA_plainrsa_gen_SOURCES = $(MISSING_ALGOS) - plainrsa_gen_LDADD = $(CRYPTOBJS) vmbuf.o misc.o - plainrsa_gen_DEPENDENCIES = $(CRYPTOBJS) vmbuf.o misc.o - --eaytest_SOURCES = eaytest.c plog.c logger.c -+eaytest_SOURCES = eaytest.c plog.c logger.c openssl_compat.c - EXTRA_eaytest_SOURCES = missing/crypto/sha2/sha2.c - eaytest_LDADD = crypto_openssl_test.o vmbuf.o str2val.o misc_noplog.o \ - $(CRYPTOBJS) -@@ -75,7 +75,7 @@ noinst_HEADERS = \ - debugrm.h isakmp.h misc.h sainfo.h \ - dhgroup.h isakmp_agg.h netdb_dnssec.h schedule.h \ - isakmp_cfg.h isakmp_xauth.h isakmp_unity.h isakmp_frag.h \ -- throttle.h privsep.h \ -+ throttle.h privsep.h openssl_compat.h \ - cfparse_proto.h cftoken_proto.h genlist.h rsalist.h \ - missing/crypto/sha2/sha2.h missing/crypto/rijndael/rijndael_local.h \ - missing/crypto/rijndael/rijndael-api-fst.h \ -diff --git a/src/racoon/algorithm.c b/src/racoon/algorithm.c -index 3fd50f6..66c874b 100644 ---- a/src/racoon/algorithm.c -+++ b/src/racoon/algorithm.c -@@ -128,7 +128,7 @@ static struct enc_algorithm oakley_encdef[] = { - { "aes", algtype_aes, OAKLEY_ATTR_ENC_ALG_AES, 16, - eay_aes_encrypt, eay_aes_decrypt, - eay_aes_weakkey, eay_aes_keylen, }, --#ifdef HAVE_OPENSSL_CAMELLIA_H -+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA) - { "camellia", algtype_camellia, OAKLEY_ATTR_ENC_ALG_CAMELLIA, 16, - eay_camellia_encrypt, eay_camellia_decrypt, - eay_camellia_weakkey, eay_camellia_keylen, }, -@@ -168,7 +168,7 @@ static struct enc_algorithm ipsec_encdef[] = { - { "twofish", algtype_twofish, IPSECDOI_ESP_TWOFISH, 16, - NULL, NULL, - NULL, eay_twofish_keylen, }, --#ifdef HAVE_OPENSSL_IDEA_H -+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA) - { "3idea", algtype_3idea, IPSECDOI_ESP_3IDEA, 8, - NULL, NULL, - NULL, NULL, }, -@@ -179,7 +179,7 @@ static struct enc_algorithm ipsec_encdef[] = { - { "rc4", algtype_rc4, IPSECDOI_ESP_RC4, 8, - NULL, NULL, - NULL, NULL, }, --#ifdef HAVE_OPENSSL_CAMELLIA_H -+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA) - { "camellia", algtype_camellia, IPSECDOI_ESP_CAMELLIA, 16, - NULL, NULL, - NULL, eay_camellia_keylen, }, -diff --git a/src/racoon/crypto_openssl.c b/src/racoon/crypto_openssl.c -index 55b076a..8fb358f 100644 ---- a/src/racoon/crypto_openssl.c -+++ b/src/racoon/crypto_openssl.c -@@ -90,6 +90,7 @@ - #endif - #endif - #include "plog.h" -+#include "openssl_compat.h" - - #define USE_NEW_DES_API - -@@ -316,9 +317,12 @@ eay_cmp_asn1dn(n1, n2) - i = idx+1; - goto end; - } -- if ((ea->value->length == 1 && ea->value->data[0] == '*') || -- (eb->value->length == 1 && eb->value->data[0] == '*')) { -- if (OBJ_cmp(ea->object,eb->object)) { -+ ASN1_STRING *sa = X509_NAME_ENTRY_get_data(ea); -+ ASN1_STRING *sb = X509_NAME_ENTRY_get_data(eb); -+ if ((ASN1_STRING_length(sa) == 1 && ASN1_STRING_get0_data(sa)[0] == '*') || -+ (ASN1_STRING_length(sb) == 1 && ASN1_STRING_get0_data(sb)[0] == '*')) { -+ if (OBJ_cmp(X509_NAME_ENTRY_get_object(ea), -+ X509_NAME_ENTRY_get_object(eb))) { - i = idx+1; - goto end; - } -@@ -430,7 +434,7 @@ cb_check_cert_local(ok, ctx) - - if (!ok) { - X509_NAME_oneline( -- X509_get_subject_name(ctx->current_cert), -+ X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)), - buf, - 256); - /* -@@ -438,7 +442,8 @@ cb_check_cert_local(ok, ctx) - * ok if they are self signed. But we should still warn - * the user. - */ -- switch (ctx->error) { -+ int ctx_error = X509_STORE_CTX_get_error(ctx); -+ switch (ctx_error) { - case X509_V_ERR_CERT_HAS_EXPIRED: - case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: - case X509_V_ERR_INVALID_CA: -@@ -453,9 +458,9 @@ cb_check_cert_local(ok, ctx) - } - plog(log_tag, LOCATION, NULL, - "%s(%d) at depth:%d SubjectName:%s\n", -- X509_verify_cert_error_string(ctx->error), -- ctx->error, -- ctx->error_depth, -+ X509_verify_cert_error_string(ctx_error), -+ ctx_error, -+ X509_STORE_CTX_get_error_depth(ctx), - buf); - } - ERR_clear_error(); -@@ -477,10 +482,11 @@ cb_check_cert_remote(ok, ctx) - - if (!ok) { - X509_NAME_oneline( -- X509_get_subject_name(ctx->current_cert), -+ X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)), - buf, - 256); -- switch (ctx->error) { -+ int ctx_error=X509_STORE_CTX_get_error(ctx); -+ switch (ctx_error) { - case X509_V_ERR_UNABLE_TO_GET_CRL: - ok = 1; - log_tag = LLV_WARNING; -@@ -490,9 +496,9 @@ cb_check_cert_remote(ok, ctx) - } - plog(log_tag, LOCATION, NULL, - "%s(%d) at depth:%d SubjectName:%s\n", -- X509_verify_cert_error_string(ctx->error), -- ctx->error, -- ctx->error_depth, -+ X509_verify_cert_error_string(ctx_error), -+ ctx_error, -+ X509_STORE_CTX_get_error_depth(ctx), - buf); - } - ERR_clear_error(); -@@ -516,14 +522,15 @@ eay_get_x509asn1subjectname(cert) - if (x509 == NULL) - goto error; - -+ X509_NAME *subject_name = X509_get_subject_name(x509); - /* get the length of the name */ -- len = i2d_X509_NAME(x509->cert_info->subject, NULL); -+ len = i2d_X509_NAME(subject_name, NULL); - name = vmalloc(len); - if (!name) - goto error; - /* get the name */ - bp = (unsigned char *) name->v; -- len = i2d_X509_NAME(x509->cert_info->subject, &bp); -+ len = i2d_X509_NAME(subject_name, &bp); - - X509_free(x509); - -@@ -661,15 +668,16 @@ eay_get_x509asn1issuername(cert) - if (x509 == NULL) - goto error; - -+ X509_NAME *issuer_name = X509_get_issuer_name(x509); - /* get the length of the name */ -- len = i2d_X509_NAME(x509->cert_info->issuer, NULL); -+ len = i2d_X509_NAME(issuer_name, NULL); - name = vmalloc(len); - if (name == NULL) - goto error; - - /* get the name */ - bp = (unsigned char *) name->v; -- len = i2d_X509_NAME(x509->cert_info->issuer, &bp); -+ len = i2d_X509_NAME(issuer_name, &bp); - - X509_free(x509); - -@@ -850,7 +858,7 @@ eay_check_x509sign(source, sig, cert) - return -1; - } - -- res = eay_rsa_verify(source, sig, evp->pkey.rsa); -+ res = eay_rsa_verify(source, sig, EVP_PKEY_get0_RSA(evp)); - - EVP_PKEY_free(evp); - X509_free(x509); -@@ -992,7 +1000,7 @@ eay_get_x509sign(src, privkey) - if (evp == NULL) - return NULL; - -- sig = eay_rsa_sign(src, evp->pkey.rsa); -+ sig = eay_rsa_sign(src, EVP_PKEY_get0_RSA(evp)); - - EVP_PKEY_free(evp); - -@@ -1079,7 +1087,11 @@ eay_strerror() - int line, flags; - unsigned long es; - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ es = 0; /* even when allowed by OPENSSL_API_COMPAT, it is defined as 0 */ -+#else - es = CRYPTO_thread_id(); -+#endif - - while ((l = ERR_get_error_line_data(&file, &line, &data, &flags)) != 0){ - n = snprintf(ebuf + len, sizeof(ebuf) - len, -@@ -1100,7 +1112,7 @@ vchar_t * - evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc) - { - vchar_t *res; -- EVP_CIPHER_CTX ctx; -+ EVP_CIPHER_CTX *ctx; - - if (!e) - return NULL; -@@ -1111,7 +1123,7 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc - if ((res = vmalloc(data->l)) == NULL) - return NULL; - -- EVP_CIPHER_CTX_init(&ctx); -+ ctx = EVP_CIPHER_CTX_new(); - - switch(EVP_CIPHER_nid(e)){ - case NID_bf_cbc: -@@ -1125,54 +1137,41 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc - /* XXX: can we do that also for algos with a fixed key size ? - */ - /* init context without key/iv -- */ -- if (!EVP_CipherInit(&ctx, e, NULL, NULL, enc)) -- { -- OpenSSL_BUG(); -- vfree(res); -- return NULL; -- } -+ */ -+ if (!EVP_CipherInit(ctx, e, NULL, NULL, enc)) -+ goto out; - -- /* update key size -- */ -- if (!EVP_CIPHER_CTX_set_key_length(&ctx, key->l)) -- { -- OpenSSL_BUG(); -- vfree(res); -- return NULL; -- } -- -- /* finalize context init with desired key size -- */ -- if (!EVP_CipherInit(&ctx, NULL, (u_char *) key->v, -+ /* update key size -+ */ -+ if (!EVP_CIPHER_CTX_set_key_length(ctx, key->l)) -+ goto out; -+ -+ /* finalize context init with desired key size -+ */ -+ if (!EVP_CipherInit(ctx, NULL, (u_char *) key->v, - (u_char *) iv->v, enc)) -- { -- OpenSSL_BUG(); -- vfree(res); -- return NULL; -- } -+ goto out; - break; - default: -- if (!EVP_CipherInit(&ctx, e, (u_char *) key->v, -- (u_char *) iv->v, enc)) { -- OpenSSL_BUG(); -- vfree(res); -- return NULL; -- } -+ if (!EVP_CipherInit(ctx, e, (u_char *) key->v, -+ (u_char *) iv->v, enc)) -+ goto out; - } - - /* disable openssl padding */ -- EVP_CIPHER_CTX_set_padding(&ctx, 0); -+ EVP_CIPHER_CTX_set_padding(ctx, 0); - -- if (!EVP_Cipher(&ctx, (u_char *) res->v, (u_char *) data->v, data->l)) { -- OpenSSL_BUG(); -- vfree(res); -- return NULL; -- } -+ if (!EVP_Cipher(ctx, (u_char *) res->v, (u_char *) data->v, data->l)) -+ goto out; - -- EVP_CIPHER_CTX_cleanup(&ctx); -+ EVP_CIPHER_CTX_free(ctx); - - return res; -+out: -+ EVP_CIPHER_CTX_free(ctx); -+ OpenSSL_BUG(); -+ vfree(res); -+ return NULL; - } - - int -@@ -1230,7 +1229,7 @@ eay_des_keylen(len) - return evp_keylen(len, EVP_des_cbc()); - } - --#ifdef HAVE_OPENSSL_IDEA_H -+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA) - /* - * IDEA-CBC - */ -@@ -1587,7 +1586,7 @@ eay_aes_keylen(len) - return len; - } - --#if defined(HAVE_OPENSSL_CAMELLIA_H) -+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA) - /* - * CAMELLIA-CBC - */ -@@ -1680,9 +1679,9 @@ eay_hmac_init(key, md) - vchar_t *key; - const EVP_MD *md; - { -- HMAC_CTX *c = racoon_malloc(sizeof(*c)); -+ HMAC_CTX *c = HMAC_CTX_new(); - -- HMAC_Init(c, key->v, key->l, md); -+ HMAC_Init_ex(c, key->v, key->l, md, NULL); - - return (caddr_t)c; - } -@@ -1761,8 +1760,7 @@ eay_hmacsha2_512_final(c) - - HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l); - res->l = l; -- HMAC_cleanup((HMAC_CTX *)c); -- (void)racoon_free(c); -+ HMAC_CTX_free((HMAC_CTX *)c); - - if (SHA512_DIGEST_LENGTH != res->l) { - plog(LLV_ERROR, LOCATION, NULL, -@@ -1811,8 +1809,7 @@ eay_hmacsha2_384_final(c) - - HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l); - res->l = l; -- HMAC_cleanup((HMAC_CTX *)c); -- (void)racoon_free(c); -+ HMAC_CTX_free((HMAC_CTX *)c); - - if (SHA384_DIGEST_LENGTH != res->l) { - plog(LLV_ERROR, LOCATION, NULL, -@@ -1861,8 +1858,7 @@ eay_hmacsha2_256_final(c) - - HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l); - res->l = l; -- HMAC_cleanup((HMAC_CTX *)c); -- (void)racoon_free(c); -+ HMAC_CTX_free((HMAC_CTX *)c); - - if (SHA256_DIGEST_LENGTH != res->l) { - plog(LLV_ERROR, LOCATION, NULL, -@@ -1912,8 +1908,7 @@ eay_hmacsha1_final(c) - - HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l); - res->l = l; -- HMAC_cleanup((HMAC_CTX *)c); -- (void)racoon_free(c); -+ HMAC_CTX_free((HMAC_CTX *)c); - - if (SHA_DIGEST_LENGTH != res->l) { - plog(LLV_ERROR, LOCATION, NULL, -@@ -1962,8 +1957,7 @@ eay_hmacmd5_final(c) - - HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l); - res->l = l; -- HMAC_cleanup((HMAC_CTX *)c); -- (void)racoon_free(c); -+ HMAC_CTX_free((HMAC_CTX *)c); - - if (MD5_DIGEST_LENGTH != res->l) { - plog(LLV_ERROR, LOCATION, NULL, -@@ -2266,6 +2260,7 @@ eay_dh_generate(prime, g, publen, pub, priv) - u_int32_t g; - { - BIGNUM *p = NULL; -+ BIGNUM *BNg = NULL; - DH *dh = NULL; - int error = -1; - -@@ -2276,25 +2271,28 @@ eay_dh_generate(prime, g, publen, pub, priv) - - if ((dh = DH_new()) == NULL) - goto end; -- dh->p = p; -- p = NULL; /* p is now part of dh structure */ -- dh->g = NULL; -- if ((dh->g = BN_new()) == NULL) -+ if ((BNg = BN_new()) == NULL) - goto end; -- if (!BN_set_word(dh->g, g)) -+ if (!BN_set_word(BNg, g)) - goto end; -+ if (! DH_set0_pqg(dh, p, NULL, BNg)) -+ goto end; -+ BNg = NULL; -+ p = NULL; /* p is now part of dh structure */ - - if (publen != 0) -- dh->length = publen; -+ DH_set_length(dh, publen); - - /* generate public and private number */ - if (!DH_generate_key(dh)) - goto end; - - /* copy results to buffers */ -- if (eay_bn2v(pub, dh->pub_key) < 0) -+ BIGNUM *pub_key, *priv_key; -+ DH_get0_key(dh, (const BIGNUM**) &pub_key, (const BIGNUM**) &priv_key); -+ if (eay_bn2v(pub, pub_key) < 0) - goto end; -- if (eay_bn2v(priv, dh->priv_key) < 0) { -+ if (eay_bn2v(priv, priv_key) < 0) { - vfree(*pub); - goto end; - } -@@ -2306,6 +2304,8 @@ end: - DH_free(dh); - if (p != 0) - BN_free(p); -+ if (BNg != 0) -+ BN_free(BNg); - return(error); - } - -@@ -2319,6 +2319,10 @@ eay_dh_compute(prime, g, pub, priv, pub2, key) - int l; - unsigned char *v = NULL; - int error = -1; -+ BIGNUM *p = BN_new(); -+ BIGNUM *BNg = BN_new(); -+ BIGNUM *pub_key = BN_new(); -+ BIGNUM *priv_key = BN_new(); - - /* make public number to compute */ - if (eay_v2bn(&dh_pub, pub2) < 0) -@@ -2327,19 +2331,21 @@ eay_dh_compute(prime, g, pub, priv, pub2, key) - /* make DH structure */ - if ((dh = DH_new()) == NULL) - goto end; -- if (eay_v2bn(&dh->p, prime) < 0) -+ if (p == NULL || BNg == NULL || pub_key == NULL || priv_key == NULL) - goto end; -- if (eay_v2bn(&dh->pub_key, pub) < 0) -+ -+ if (eay_v2bn(&p, prime) < 0) - goto end; -- if (eay_v2bn(&dh->priv_key, priv) < 0) -+ if (eay_v2bn(&pub_key, pub) < 0) - goto end; -- dh->length = pub2->l * 8; -- -- dh->g = NULL; -- if ((dh->g = BN_new()) == NULL) -+ if (eay_v2bn(&priv_key, priv) < 0) - goto end; -- if (!BN_set_word(dh->g, g)) -+ if (!BN_set_word(BNg, g)) - goto end; -+ DH_set0_key(dh, pub_key, priv_key); -+ DH_set_length(dh, pub2->l * 8); -+ DH_set0_pqg(dh, p, NULL, BNg); -+ pub_key = priv_key = p = BNg = NULL; - - if ((v = racoon_calloc(prime->l, sizeof(u_char))) == NULL) - goto end; -@@ -2350,6 +2356,14 @@ eay_dh_compute(prime, g, pub, priv, pub2, key) - error = 0; - - end: -+ if (p != NULL) -+ BN_free(p); -+ if (BNg != NULL) -+ BN_free(BNg); -+ if (pub_key != NULL) -+ BN_free(pub_key); -+ if (priv_key != NULL) -+ BN_free(priv_key); - if (dh_pub != NULL) - BN_free(dh_pub); - if (dh != NULL) -@@ -2400,12 +2414,14 @@ eay_bn2v(var, bn) - void - eay_init() - { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - OpenSSL_add_all_algorithms(); - ERR_load_crypto_strings(); - #ifdef HAVE_OPENSSL_ENGINE_H - ENGINE_load_builtin_engines(); - ENGINE_register_all_complete(); - #endif -+#endif - } - - vchar_t * -@@ -2504,8 +2520,7 @@ binbuf_pubkey2rsa(vchar_t *binbuf) - goto out; - } - -- rsa_pub->n = mod; -- rsa_pub->e = exp; -+ RSA_set0_key(rsa_pub, mod, exp, NULL); - - out: - return rsa_pub; -@@ -2582,5 +2597,5 @@ eay_random() - const char * - eay_version() - { -- return SSLeay_version(SSLEAY_VERSION); -+ return OpenSSL_version(OPENSSL_VERSION); - } -diff --git a/src/racoon/crypto_openssl.h b/src/racoon/crypto_openssl.h -index 66fac73..ee5b765 100644 ---- a/src/racoon/crypto_openssl.h -+++ b/src/racoon/crypto_openssl.h -@@ -124,7 +124,7 @@ extern vchar_t *eay_aes_decrypt __P((vchar_t *, vchar_t *, vchar_t *)); - extern int eay_aes_weakkey __P((vchar_t *)); - extern int eay_aes_keylen __P((int)); - --#if defined(HAVE_OPENSSL_CAMELLIA_H) -+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA) - /* Camellia */ - extern vchar_t *eay_camellia_encrypt __P((vchar_t *, vchar_t *, vchar_t *)); - extern vchar_t *eay_camellia_decrypt __P((vchar_t *, vchar_t *, vchar_t *)); -diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c -index d609e4f..d2d20da 100644 ---- a/src/racoon/eaytest.c -+++ b/src/racoon/eaytest.c -@@ -62,6 +62,7 @@ - #include "dhgroup.h" - #include "crypto_openssl.h" - #include "gnuc.h" -+#include "openssl_compat.h" - - #include "package_version.h" - -@@ -103,7 +104,7 @@ rsa_verify_with_pubkey(src, sig, pubkey_txt) - printf ("PEM_read_PUBKEY(): %s\n", eay_strerror()); - return -1; - } -- error = eay_check_rsasign(src, sig, evp->pkey.rsa); -+ error = eay_check_rsasign(src, sig, EVP_PKEY_get0_RSA(evp)); - - return error; - } -@@ -698,7 +699,7 @@ ciphertest(ac, av) - eay_cast_encrypt, eay_cast_decrypt) < 0) - return -1; - --#ifdef HAVE_OPENSSL_IDEA_H -+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA) - if (ciphertest_1 ("IDEA", - &data, 8, - &key, key.l, -@@ -715,7 +716,7 @@ ciphertest(ac, av) - eay_rc5_encrypt, eay_rc5_decrypt) < 0) - return -1; - #endif --#if defined(HAVE_OPENSSL_CAMELLIA_H) -+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA) - if (ciphertest_1 ("CAMELLIA", - &data, 16, - &key, key.l, -diff --git a/src/racoon/ipsec_doi.c b/src/racoon/ipsec_doi.c -index 08e4325..7b1604d 100644 ---- a/src/racoon/ipsec_doi.c -+++ b/src/racoon/ipsec_doi.c -@@ -715,7 +715,7 @@ out: - /* key length must not be specified on some algorithms */ - if (keylen) { - if (sa->enctype == OAKLEY_ATTR_ENC_ALG_DES --#ifdef HAVE_OPENSSL_IDEA_H -+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA) - || sa->enctype == OAKLEY_ATTR_ENC_ALG_IDEA - #endif - || sa->enctype == OAKLEY_ATTR_ENC_ALG_3DES) { -diff --git a/src/racoon/openssl_compat.c b/src/racoon/openssl_compat.c -new file mode 100644 -index 0000000..864b5fb ---- /dev/null -+++ b/src/racoon/openssl_compat.c -@@ -0,0 +1,213 @@ -+/* -+ * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. -+ * -+ * Licensed under the OpenSSL license (the "License"). You may not use -+ * this file except in compliance with the License. You can obtain a copy -+ * in the file LICENSE in the source distribution or at -+ * https://www.openssl.org/source/license.html -+ */ -+ -+#include "openssl_compat.h" -+ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ -+#include <string.h> -+ -+static void *OPENSSL_zalloc(size_t num) -+{ -+ void *ret = OPENSSL_malloc(num); -+ -+ if (ret != NULL) -+ memset(ret, 0, num); -+ return ret; -+} -+ -+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) -+{ -+ /* If the fields n and e in r are NULL, the corresponding input -+ * parameters MUST be non-NULL for n and e. d may be -+ * left NULL (in case only the public key is used). -+ */ -+ if ((r->n == NULL && n == NULL) -+ || (r->e == NULL && e == NULL)) -+ return 0; -+ -+ if (n != NULL) { -+ BN_free(r->n); -+ r->n = n; -+ } -+ if (e != NULL) { -+ BN_free(r->e); -+ r->e = e; -+ } -+ if (d != NULL) { -+ BN_free(r->d); -+ r->d = d; -+ } -+ -+ return 1; -+} -+ -+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q) -+{ -+ /* If the fields p and q in r are NULL, the corresponding input -+ * parameters MUST be non-NULL. -+ */ -+ if ((r->p == NULL && p == NULL) -+ || (r->q == NULL && q == NULL)) -+ return 0; -+ -+ if (p != NULL) { -+ BN_free(r->p); -+ r->p = p; -+ } -+ if (q != NULL) { -+ BN_free(r->q); -+ r->q = q; -+ } -+ -+ return 1; -+} -+ -+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp) -+{ -+ /* If the fields dmp1, dmq1 and iqmp in r are NULL, the corresponding input -+ * parameters MUST be non-NULL. -+ */ -+ if ((r->dmp1 == NULL && dmp1 == NULL) -+ || (r->dmq1 == NULL && dmq1 == NULL) -+ || (r->iqmp == NULL && iqmp == NULL)) -+ return 0; -+ -+ if (dmp1 != NULL) { -+ BN_free(r->dmp1); -+ r->dmp1 = dmp1; -+ } -+ if (dmq1 != NULL) { -+ BN_free(r->dmq1); -+ r->dmq1 = dmq1; -+ } -+ if (iqmp != NULL) { -+ BN_free(r->iqmp); -+ r->iqmp = iqmp; -+ } -+ -+ return 1; -+} -+ -+void RSA_get0_key(const RSA *r, -+ const BIGNUM **n, const BIGNUM **e, const BIGNUM **d) -+{ -+ if (n != NULL) -+ *n = r->n; -+ if (e != NULL) -+ *e = r->e; -+ if (d != NULL) -+ *d = r->d; -+} -+ -+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q) -+{ -+ if (p != NULL) -+ *p = r->p; -+ if (q != NULL) -+ *q = r->q; -+} -+ -+void RSA_get0_crt_params(const RSA *r, -+ const BIGNUM **dmp1, const BIGNUM **dmq1, -+ const BIGNUM **iqmp) -+{ -+ if (dmp1 != NULL) -+ *dmp1 = r->dmp1; -+ if (dmq1 != NULL) -+ *dmq1 = r->dmq1; -+ if (iqmp != NULL) -+ *iqmp = r->iqmp; -+} -+ -+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) -+{ -+ /* If the fields p and g in d are NULL, the corresponding input -+ * parameters MUST be non-NULL. q may remain NULL. -+ */ -+ if ((dh->p == NULL && p == NULL) -+ || (dh->g == NULL && g == NULL)) -+ return 0; -+ -+ if (p != NULL) { -+ BN_free(dh->p); -+ dh->p = p; -+ } -+ if (q != NULL) { -+ BN_free(dh->q); -+ dh->q = q; -+ } -+ if (g != NULL) { -+ BN_free(dh->g); -+ dh->g = g; -+ } -+ -+ if (q != NULL) { -+ dh->length = BN_num_bits(q); -+ } -+ -+ return 1; -+} -+ -+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key) -+{ -+ if (pub_key != NULL) -+ *pub_key = dh->pub_key; -+ if (priv_key != NULL) -+ *priv_key = dh->priv_key; -+} -+ -+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key) -+{ -+ /* If the field pub_key in dh is NULL, the corresponding input -+ * parameters MUST be non-NULL. The priv_key field may -+ * be left NULL. -+ */ -+ if (dh->pub_key == NULL && pub_key == NULL) -+ return 0; -+ -+ if (pub_key != NULL) { -+ BN_free(dh->pub_key); -+ dh->pub_key = pub_key; -+ } -+ if (priv_key != NULL) { -+ BN_free(dh->priv_key); -+ dh->priv_key = priv_key; -+ } -+ -+ return 1; -+} -+ -+int DH_set_length(DH *dh, long length) -+{ -+ dh->length = length; -+ return 1; -+} -+ -+HMAC_CTX *HMAC_CTX_new(void) -+{ -+ return OPENSSL_zalloc(sizeof(HMAC_CTX)); -+} -+ -+void HMAC_CTX_free(HMAC_CTX *ctx) -+{ -+ HMAC_CTX_cleanup(ctx); -+ OPENSSL_free(ctx); -+} -+ -+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey) -+{ -+ if (pkey->type != EVP_PKEY_RSA) { -+ return NULL; -+ } -+ return pkey->pkey.rsa; -+} -+ -+ -+#endif /* OPENSSL_VERSION_NUMBER */ -diff --git a/src/racoon/openssl_compat.h b/src/racoon/openssl_compat.h -new file mode 100644 -index 0000000..9e152c2 ---- /dev/null -+++ b/src/racoon/openssl_compat.h -@@ -0,0 +1,45 @@ -+#ifndef OPENSSL_COMPAT_H -+#define OPENSSL_COMPAT_H -+ -+#include <openssl/opensslv.h> -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ -+#include <openssl/rsa.h> -+#include <openssl/dh.h> -+#include <openssl/evp.h> -+#include <openssl/hmac.h> -+ -+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d); -+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q); -+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp); -+void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d); -+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q); -+void RSA_get0_crt_params(const RSA *r, const BIGNUM **dmp1, const BIGNUM **dmq1, const BIGNUM **iqmp); -+ -+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); -+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key); -+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); -+int DH_set_length(DH *dh, long length); -+ -+HMAC_CTX *HMAC_CTX_new(void); -+void HMAC_CTX_free(HMAC_CTX* ctx); -+ -+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey); -+ -+#define ASN1_STRING_length(s) s->length -+#define ASN1_STRING_get0_data(s) s->data -+ -+#define X509_get_subject_name(x) x->cert_info->subject -+#define X509_get_issuer_name(x) x->cert_info->issuer -+#define X509_NAME_ENTRY_get_data(n) n->value -+#define X509_NAME_ENTRY_get_object(n) n->object -+#define X509_STORE_CTX_get_current_cert(ctx) ctx->current_cert -+#define X509_STORE_CTX_get_error(ctx) ctx->error -+#define X509_STORE_CTX_get_error_depth(ctx) ctx->error_depth -+ -+#define OPENSSL_VERSION SSLEAY_VERSION -+#define OpenSSL_version SSLeay_version -+ -+#endif /* OPENSSL_VERSION_NUMBER */ -+ -+#endif /* OPENSSL_COMPAT_H */ -diff --git a/src/racoon/plainrsa-gen.c b/src/racoon/plainrsa-gen.c -index cad1861..b949b08 100644 ---- a/src/racoon/plainrsa-gen.c -+++ b/src/racoon/plainrsa-gen.c -@@ -60,6 +60,7 @@ - #include "vmbuf.h" - #include "plog.h" - #include "crypto_openssl.h" -+#include "openssl_compat.h" - - #include "package_version.h" - -@@ -90,12 +91,14 @@ mix_b64_pubkey(const RSA *key) - char *binbuf; - long binlen, ret; - vchar_t *res; -- -- binlen = 1 + BN_num_bytes(key->e) + BN_num_bytes(key->n); -+ const BIGNUM *e, *n; -+ -+ RSA_get0_key(key, &n, &e, NULL); -+ binlen = 1 + BN_num_bytes(e) + BN_num_bytes(n); - binbuf = malloc(binlen); - memset(binbuf, 0, binlen); -- binbuf[0] = BN_bn2bin(key->e, (unsigned char *) &binbuf[1]); -- ret = BN_bn2bin(key->n, (unsigned char *) (&binbuf[binbuf[0] + 1])); -+ binbuf[0] = BN_bn2bin(e, (unsigned char *) &binbuf[1]); -+ ret = BN_bn2bin(n, (unsigned char *) (&binbuf[binbuf[0] + 1])); - if (1 + binbuf[0] + ret != binlen) { - plog(LLV_ERROR, LOCATION, NULL, - "Pubkey generation failed. This is really strange...\n"); -@@ -131,16 +134,20 @@ print_rsa_key(FILE *fp, const RSA *key) - - fprintf(fp, "# : PUB 0s%s\n", pubkey64->v); - fprintf(fp, ": RSA\t{\n"); -- fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(key->n)); -+ const BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp; -+ RSA_get0_key(key, &n, &e, &d); -+ RSA_get0_factors(key, &p, &q); -+ RSA_get0_crt_params(key, &dmp1, &dmq1, &iqmp); -+ fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(n)); - fprintf(fp, "\t# pubkey=0s%s\n", pubkey64->v); -- fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(key->n))); -- fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(key->e))); -- fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(key->d))); -- fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(key->p))); -- fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(key->q))); -- fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(key->dmp1))); -- fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(key->dmq1))); -- fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(key->iqmp))); -+ fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(n))); -+ fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(e))); -+ fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(d))); -+ fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(p))); -+ fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(q))); -+ fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(dmp1))); -+ fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(dmq1))); -+ fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(iqmp))); - fprintf(fp, " }\n"); - - vfree(pubkey64); -@@ -203,11 +210,13 @@ int - gen_rsa_key(FILE *fp, size_t bits, unsigned long exp) - { - int ret; -- RSA *key; -+ RSA *key = RSA_new(); -+ BIGNUM *e = BN_new(); - -- key = RSA_generate_key(bits, exp, NULL, NULL); -- if (!key) { -+ BN_set_word(e, exp); -+ if (! RSA_generate_key_ex(key, bits, e, NULL)) { - fprintf(stderr, "RSA_generate_key(): %s\n", eay_strerror()); -+ RSA_free(key); - return -1; - } - -diff --git a/src/racoon/prsa_par.y b/src/racoon/prsa_par.y -index 1987e4d..27ce4c6 100644 ---- a/src/racoon/prsa_par.y -+++ b/src/racoon/prsa_par.y -@@ -68,6 +68,7 @@ - #include "isakmp_var.h" - #include "handler.h" - #include "crypto_openssl.h" -+#include "openssl_compat.h" - #include "sockmisc.h" - #include "rsalist.h" - -@@ -85,7 +86,18 @@ char *prsa_cur_fname = NULL; - struct genlist *prsa_cur_list = NULL; - enum rsa_key_type prsa_cur_type = RSA_TYPE_ANY; - --static RSA *rsa_cur; -+struct my_rsa_st { -+ BIGNUM *n; -+ BIGNUM *e; -+ BIGNUM *d; -+ BIGNUM *p; -+ BIGNUM *q; -+ BIGNUM *dmp1; -+ BIGNUM *dmq1; -+ BIGNUM *iqmp; -+}; -+ -+static struct my_rsa_st *rsa_cur; - - void - prsaerror(const char *s, ...) -@@ -201,8 +213,12 @@ rsa_statement: - rsa_cur->iqmp = NULL; - } - } -- $$ = rsa_cur; -- rsa_cur = RSA_new(); -+ RSA * rsa_tmp = RSA_new(); -+ RSA_set0_key(rsa_tmp, rsa_cur->n, rsa_cur->e, rsa_cur->d); -+ RSA_set0_factors(rsa_tmp, rsa_cur->p, rsa_cur->q); -+ RSA_set0_crt_params(rsa_tmp, rsa_cur->dmp1, rsa_cur->dmq1, rsa_cur->iqmp); -+ $$ = rsa_tmp; -+ memset(rsa_cur, 0, sizeof(struct my_rsa_st)); - } - | TAG_PUB BASE64 - { -@@ -351,10 +367,12 @@ prsa_parse_file(struct genlist *list, char *fname, enum rsa_key_type type) - prsa_cur_fname = fname; - prsa_cur_list = list; - prsa_cur_type = type; -- rsa_cur = RSA_new(); -+ rsa_cur = malloc(sizeof(struct my_rsa_st)); -+ memset(rsa_cur, 0, sizeof(struct my_rsa_st)); - ret = prsaparse(); - if (rsa_cur) { -- RSA_free(rsa_cur); -+ memset(rsa_cur, 0, sizeof(struct my_rsa_st)); -+ free(rsa_cur); - rsa_cur = NULL; - } - fclose (fp); -diff --git a/src/racoon/rsalist.c b/src/racoon/rsalist.c -index f152c82..96e8363 100644 ---- a/src/racoon/rsalist.c -+++ b/src/racoon/rsalist.c -@@ -52,6 +52,7 @@ - #include "genlist.h" - #include "remoteconf.h" - #include "crypto_openssl.h" -+#include "openssl_compat.h" - - #ifndef LIST_FIRST - #define LIST_FIRST(head) ((head)->lh_first) -@@ -98,7 +99,9 @@ rsa_key_dup(struct rsa_key *key) - return NULL; - - if (key->rsa) { -- new->rsa = key->rsa->d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa); -+ const BIGNUM *d; -+ RSA_get0_key(key->rsa, NULL, NULL, &d); -+ new->rsa = (d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa)); - if (new->rsa == NULL) - goto dup_error; - } --- -2.7.4 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch deleted file mode 100644 index d5602c03..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 738a9857be9c92ad2f70be88ccee238e3154a936 Mon Sep 17 00:00:00 2001 -From: Joe MacDonald <joe.macdonald@windriver.com> -Date: Wed, 2 Oct 2013 14:20:37 -0400 -Subject: [PATCH] racoon/pfkey: avoid potential null-pointer dereference - -Building with -Werror=maybe-uninitialized revealed that 'remote' from -pk_recvmigrate() could be used with uninitialized data in -migrate_sp_ike_addresses(). Ensure it is always at a minimum assigned -NULL. - -Upstream-Status: Pending - -Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com> ---- - src/racoon/pfkey.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/racoon/pfkey.c b/src/racoon/pfkey.c -index d00b166..e0dc1db 100644 ---- a/src/racoon/pfkey.c -+++ b/src/racoon/pfkey.c -@@ -3352,7 +3352,7 @@ pk_recvmigrate(mhp) - struct sockaddr *old_saddr, *new_saddr; - struct sockaddr *old_daddr, *new_daddr; - struct sockaddr *old_local, *old_remote; -- struct sockaddr *local, *remote; -+ struct sockaddr *local, *remote = NULL; - struct sadb_x_kmaddress *kmaddr; - struct sadb_x_policy *xpl; - struct sadb_x_ipsecrequest *xisr_list; --- -1.7.9.5 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch deleted file mode 100644 index 13e9d73f..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch +++ /dev/null @@ -1,87 +0,0 @@ -From e48b9097dce7bc2bfbb9e9c542124d3b5cebab39 Mon Sep 17 00:00:00 2001 -From: Paul Barker <paul@paulbarker.me.uk> -Date: Wed, 5 Mar 2014 13:39:14 +0000 -Subject: [PATCH] Don't link against libfl - -We can remove all references to yywrap by adding "%option noyywrap" statements -to each flex source file that doesn't override yywrap. After this, we no longer -need to link against libfl and so no longer get errors about undefined -references to yylex. - -Signed-off-by: Paul Barker <paul@paulbarker.me.uk> -Upstream-status: Submitted 2014-03-11 - see http://sourceforge.net/p/ipsec-tools/mailman/ipsec-tools-devel/thread/CANyK_8ewmxGA3vBVJW6s1APXPmxPR%2BDFWZ61EL8pCt288aKQ6w%40mail.gmail.com/#msg32088797 ---- - src/libipsec/Makefile.am | 1 - - src/racoon/Makefile.am | 2 +- - src/racoon/cftoken.l | 2 ++ - src/setkey/Makefile.am | 1 - - src/setkey/token.l | 2 ++ - 5 files changed, 5 insertions(+), 3 deletions(-) - -diff --git a/src/libipsec/Makefile.am b/src/libipsec/Makefile.am -index 6a4e3b3..df1e106 100644 ---- a/src/libipsec/Makefile.am -+++ b/src/libipsec/Makefile.am -@@ -26,7 +26,6 @@ libipsec_la_SOURCES = \ - # version is current:revision:age. - # See: http://www.gnu.org/manual/libtool-1.4.2/html_chapter/libtool_6.html#SEC32 - libipsec_la_LDFLAGS = -version-info 0:1:0 --libipsec_la_LIBADD = $(LEXLIB) - - noinst_HEADERS = ipsec_strerror.h - -diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am -index dbaded9..0662957 100644 ---- a/src/racoon/Makefile.am -+++ b/src/racoon/Makefile.am -@@ -38,7 +38,7 @@ racoon_SOURCES = \ - cftoken.l cfparse.y prsa_tok.l prsa_par.y - EXTRA_racoon_SOURCES = isakmp_xauth.c isakmp_cfg.c isakmp_unity.c throttle.c \ - isakmp_frag.c nattraversal.c security.c $(MISSING_ALGOS) --racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(LEXLIB) \ -+racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) \ - $(SECCTX_OBJS) vmbuf.o sockmisc.o misc.o ../libipsec/libipsec.la - racoon_DEPENDENCIES = \ - $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(SECCTX_OBJS) \ -diff --git a/src/racoon/cftoken.l b/src/racoon/cftoken.l -index 490242c..1701922 100644 ---- a/src/racoon/cftoken.l -+++ b/src/racoon/cftoken.l -@@ -106,6 +106,8 @@ static int incstackp = 0; - static int yy_first_time = 1; - %} - -+%option noyywrap -+ - /* common seciton */ - nl \n - ws [ \t]+ -diff --git a/src/setkey/Makefile.am b/src/setkey/Makefile.am -index 746c1f1..389e6cf 100644 ---- a/src/setkey/Makefile.am -+++ b/src/setkey/Makefile.am -@@ -13,7 +13,6 @@ setkey_SOURCES = \ - - setkey_LDFLAGS = ../libipsec/libipsec.la - setkey_DEPENDENCIES = ../libipsec/libipsec.la --setkey_LDADD = $(LEXLIB) - - noinst_HEADERS = vchar.h extern.h - man8_MANS = setkey.8 -diff --git a/src/setkey/token.l b/src/setkey/token.l -index ad3d843..eb23b76 100644 ---- a/src/setkey/token.l -+++ b/src/setkey/token.l -@@ -88,6 +88,8 @@ - #endif - %} - -+%option noyywrap -+ - /* common section */ - nl \n - ws [ \t]+ --- -1.9.0 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch deleted file mode 100644 index e9dd84aa..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch +++ /dev/null @@ -1,30 +0,0 @@ -From a5c59f6a1479947d33dba5191724cc5fc88a614b Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 22 Apr 2017 10:39:57 -0700 -Subject: [PATCH 2/2] cfparse: clear memory equal to size of array - -Fixes compiler error -cfparse.y: In function 'set_isakmp_proposal': -cfparse.y:2567:3: error: 'memset' used with length equal to number of elements without multiplication by element size [-Werror=memset-elt-size] - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/racoon/cfparse.y | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/racoon/cfparse.y b/src/racoon/cfparse.y -index 0d9bd67..5d9c67b 100644 ---- a/src/racoon/cfparse.y -+++ b/src/racoon/cfparse.y -@@ -2564,7 +2564,7 @@ set_isakmp_proposal(rmconf) - plog(LLV_DEBUG2, LOCATION, NULL, - "encklen=%d\n", s->encklen); - -- memset(types, 0, ARRAYLEN(types)); -+ memset(types, 0, sizeof(types)); - types[algclass_isakmp_enc] = s->algclass[algclass_isakmp_enc]; - types[algclass_isakmp_hash] = s->algclass[algclass_isakmp_hash]; - types[algclass_isakmp_dh] = s->algclass[algclass_isakmp_dh]; --- -2.12.2 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch deleted file mode 100644 index 8d270a62..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: ipsec-tools-0.8.1/configure.ac -=================================================================== ---- ipsec-tools-0.8.1.orig/configure.ac 2013-01-08 12:43:29.000000000 +0000 -+++ ipsec-tools-0.8.1/configure.ac 2014-07-18 07:51:30.045555880 +0000 -@@ -6,7 +6,7 @@ - AC_CONFIG_SRCDIR([configure.ac]) - AC_CONFIG_HEADERS(config.h) - --AM_INIT_AUTOMAKE(dist-bzip2) -+AM_INIT_AUTOMAKE([foreign dist-bzip2]) - - AC_ENABLE_SHARED(no) - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch deleted file mode 100644 index 5286376a..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch +++ /dev/null @@ -1,36 +0,0 @@ -[PATCH] fix CVE-2015-4047 - -Upstream-Status: Backport - -http://www.openwall.com/lists/oss-security/2015/05/20/1 - -racoon/gssapi.c in IPsec-Tools 0.8.2 allows remote attackers to cause -a denial of service (NULL pointer dereference and IKE daemon crash) via -a series of crafted UDP requests. - -https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-4047 - -Signed-off-by: Roy Li <rongqing.li@windriver.com> ---- - src/racoon/gssapi.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/racoon/gssapi.c b/src/racoon/gssapi.c -index e64b201..1ad3b42 100644 ---- a/src/racoon/gssapi.c -+++ b/src/racoon/gssapi.c -@@ -192,6 +192,11 @@ gssapi_init(struct ph1handle *iph1) - gss_name_t princ, canon_princ; - OM_uint32 maj_stat, min_stat; - -+ if (iph1->rmconf == NULL) { -+ plog(LLV_ERROR, LOCATION, NULL, "no remote config\n"); -+ return -1; -+ } -+ - gps = racoon_calloc(1, sizeof (struct gssapi_ph1_state)); - if (gps == NULL) { - plog(LLV_ERROR, LOCATION, NULL, "racoon_calloc failed\n"); --- -1.9.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch deleted file mode 100644 index bd079655..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch +++ /dev/null @@ -1,207 +0,0 @@ -Upstream-Status: Backport [https://anonscm.debian.org/cgit/pkg-ipsec-tools/pkg-ipsec-tools.git/plain/debian/patches/CVE-2016-10396.patch?id=62ac12648a4eb7c5ba5dba0f81998d1acf310d8b] - -Fix CVE-2016-10396. - -Signed-off-by: Kai Kang <kai.kang@windriver.com> ---- -Description: Fix remotely exploitable DoS. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10396 -Source: vendor; https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51682 -Bug-debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867986 - -Index: pkg-ipsec-tools/src/racoon/isakmp_frag.c -=================================================================== ---- pkg-ipsec-tools.orig/src/racoon/isakmp_frag.c -+++ pkg-ipsec-tools/src/racoon/isakmp_frag.c -@@ -1,4 +1,4 @@ --/* $NetBSD: isakmp_frag.c,v 1.5 2009/04/22 11:24:20 tteras Exp $ */ -+/* $NetBSD: isakmp_frag.c,v 1.5.36.1 2017/04/21 16:50:42 bouyer Exp $ */ - - /* Id: isakmp_frag.c,v 1.4 2004/11/13 17:31:36 manubsd Exp */ - -@@ -173,6 +173,43 @@ vendorid_frag_cap(gen) - return ntohl(hp[MD5_DIGEST_LENGTH / sizeof(*hp)]); - } - -+static int -+isakmp_frag_insert(struct ph1handle *iph1, struct isakmp_frag_item *item) -+{ -+ struct isakmp_frag_item *pitem = NULL; -+ struct isakmp_frag_item *citem = iph1->frag_chain; -+ -+ /* no frag yet, just insert at beginning of list */ -+ if (iph1->frag_chain == NULL) { -+ iph1->frag_chain = item; -+ return 0; -+ } -+ -+ do { -+ /* duplicate fragment number, abort (CVE-2016-10396) */ -+ if (citem->frag_num == item->frag_num) -+ return -1; -+ -+ /* need to insert before current item */ -+ if (citem->frag_num > item->frag_num) { -+ if (pitem != NULL) -+ pitem->frag_next = item; -+ else -+ /* insert at the beginning of the list */ -+ iph1->frag_chain = item; -+ item->frag_next = citem; -+ return 0; -+ } -+ -+ pitem = citem; -+ citem = citem->frag_next; -+ } while (citem != NULL); -+ -+ /* we reached the end of the list, insert */ -+ pitem->frag_next = item; -+ return 0; -+} -+ - int - isakmp_frag_extract(iph1, msg) - struct ph1handle *iph1; -@@ -224,39 +261,43 @@ isakmp_frag_extract(iph1, msg) - item->frag_next = NULL; - item->frag_packet = buf; - -- /* Look for the last frag while inserting the new item in the chain */ -- if (item->frag_last) -- last_frag = item->frag_num; -+ /* Check for the last frag before inserting the new item in the chain */ -+ if (item->frag_last) { -+ /* if we have the last fragment, indices must match */ -+ if (iph1->frag_last_index != 0 && -+ item->frag_last != iph1->frag_last_index) { -+ plog(LLV_ERROR, LOCATION, NULL, -+ "Repeated last fragment index mismatch\n"); -+ racoon_free(item); -+ vfree(buf); -+ return -1; -+ } - -- if (iph1->frag_chain == NULL) { -- iph1->frag_chain = item; -- } else { -- struct isakmp_frag_item *current; -+ last_frag = iph1->frag_last_index = item->frag_num; -+ } - -- current = iph1->frag_chain; -- while (current->frag_next) { -- if (current->frag_last) -- last_frag = item->frag_num; -- current = current->frag_next; -- } -- current->frag_next = item; -+ /* insert fragment into chain */ -+ if (isakmp_frag_insert(iph1, item) == -1) { -+ plog(LLV_ERROR, LOCATION, NULL, -+ "Repeated fragment index mismatch\n"); -+ racoon_free(item); -+ vfree(buf); -+ return -1; - } - -- /* If we saw the last frag, check if the chain is complete */ -+ /* If we saw the last frag, check if the chain is complete -+ * we have a sorted list now, so just walk through */ - if (last_frag != 0) { -+ item = iph1->frag_chain; - for (i = 1; i <= last_frag; i++) { -- item = iph1->frag_chain; -- do { -- if (item->frag_num == i) -- break; -- item = item->frag_next; -- } while (item != NULL); -- -+ if (item->frag_num != i) -+ break; -+ item = item->frag_next; - if (item == NULL) /* Not found */ - break; - } - -- if (item != NULL) /* It is complete */ -+ if (i > last_frag) /* It is complete */ - return 1; - } - -@@ -291,15 +332,9 @@ isakmp_frag_reassembly(iph1) - } - data = buf->v; - -+ item = iph1->frag_chain; - for (i = 1; i <= frag_count; i++) { -- item = iph1->frag_chain; -- do { -- if (item->frag_num == i) -- break; -- item = item->frag_next; -- } while (item != NULL); -- -- if (item == NULL) { -+ if (item->frag_num != i) { - plog(LLV_ERROR, LOCATION, NULL, - "Missing fragment #%d\n", i); - vfree(buf); -@@ -308,6 +343,7 @@ isakmp_frag_reassembly(iph1) - } - memcpy(data, item->frag_packet->v, item->frag_packet->l); - data += item->frag_packet->l; -+ item = item->frag_next; - } - - out: -Index: pkg-ipsec-tools/src/racoon/isakmp_inf.c -=================================================================== ---- pkg-ipsec-tools.orig/src/racoon/isakmp_inf.c -+++ pkg-ipsec-tools/src/racoon/isakmp_inf.c -@@ -720,6 +720,7 @@ isakmp_info_send_nx(isakmp, remote, loca - #endif - #ifdef ENABLE_FRAG - iph1->frag = 0; -+ iph1->frag_last_index = 0; - iph1->frag_chain = NULL; - #endif - -Index: pkg-ipsec-tools/src/racoon/isakmp.c -=================================================================== ---- pkg-ipsec-tools.orig/src/racoon/isakmp.c -+++ pkg-ipsec-tools/src/racoon/isakmp.c -@@ -1072,6 +1072,7 @@ isakmp_ph1begin_i(rmconf, remote, local) - iph1->frag = 1; - else - iph1->frag = 0; -+ iph1->frag_last_index = 0; - iph1->frag_chain = NULL; - #endif - iph1->approval = NULL; -@@ -1176,6 +1177,7 @@ isakmp_ph1begin_r(msg, remote, local, et - #endif - #ifdef ENABLE_FRAG - iph1->frag = 0; -+ iph1->frag_last_index = 0; - iph1->frag_chain = NULL; - #endif - iph1->approval = NULL; -Index: pkg-ipsec-tools/src/racoon/handler.h -=================================================================== ---- pkg-ipsec-tools.orig/src/racoon/handler.h -+++ pkg-ipsec-tools/src/racoon/handler.h -@@ -1,4 +1,4 @@ --/* $NetBSD: handler.h,v 1.25 2010/11/17 10:40:41 tteras Exp $ */ -+/* $NetBSD: handler.h,v 1.26 2017/01/24 19:23:56 christos Exp $ */ - - /* Id: handler.h,v 1.19 2006/02/25 08:25:12 manubsd Exp */ - -@@ -141,6 +141,7 @@ struct ph1handle { - #endif - #ifdef ENABLE_FRAG - int frag; /* IKE phase 1 fragmentation */ -+ int frag_last_index; - struct isakmp_frag_item *frag_chain; /* Received fragments */ - #endif - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch deleted file mode 100644 index 36efc491..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch +++ /dev/null @@ -1,23 +0,0 @@ -squahes below warning - warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" - -Seen with glibc 2.20 - -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Upstream-Status: Pending -Index: ipsec-tools-0.8.2/src/include-glibc/glibc-bugs.h -=================================================================== ---- ipsec-tools-0.8.2.orig/src/include-glibc/glibc-bugs.h 2006-09-09 09:22:08.000000000 -0700 -+++ ipsec-tools-0.8.2/src/include-glibc/glibc-bugs.h 2014-09-03 22:27:22.551563888 -0700 -@@ -4,7 +4,11 @@ - #define __GLIBC_BUGS_H__ 1 - - #define _XOPEN_SOURCE 500 -+/* Legacy feature macro.*/ - #define _BSD_SOURCE -+/* New feature macro that provides everything _BSD_SOURCE and -+ * _SVID_SOURCE provided and possibly more. */ -+#define _DEFAULT_SOURCE - - #include <features.h> - #include <sys/types.h> diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch deleted file mode 100644 index e82db087..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch +++ /dev/null @@ -1,220 +0,0 @@ -racoon: Resend UPDATE message when received EINTR message - -Upstream-Status: Pending - -While kernel is processing the UPDATE message which is sent from racoon, -it maybe interrupted by system signal and if this case happens, -kernel responds with an EINTR message to racoon and kernel fails to -establish the corresponding SA. -Fix this problem by resend the UPDATE message when EINTR(Interrupted -system call) error happens. - -Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com> ---- ---- a/src/libipsec/libpfkey.h -+++ b/src/libipsec/libpfkey.h -@@ -92,6 +92,12 @@ - u_int16_t ctxstrlen; /* length of security context string */ - }; - -+struct update_msg_info { -+ struct sadb_msg *update_msg; -+ int so; -+ int len; -+}; -+ - /* The options built into libipsec */ - extern int libipsec_opt; - #define LIBIPSEC_OPT_NATT 0x01 ---- a/src/libipsec/pfkey.c -+++ b/src/libipsec/pfkey.c -@@ -1219,7 +1219,8 @@ - } - #endif - -- -+struct update_msg_info update_msg_send = {NULL, 0, 0}; -+ - /* sending SADB_ADD or SADB_UPDATE message to the kernel */ - static int - pfkey_send_x1(struct pfkey_send_sa_args *sa_parms) -@@ -1483,10 +1484,24 @@ - - /* send message */ - len = pfkey_send(sa_parms->so, newmsg, len); -- free(newmsg); - -- if (len < 0) -- return -1; -+ if (newmsg->sadb_msg_type == SADB_UPDATE) { -+ if (update_msg_send.update_msg) -+ free(update_msg_send.update_msg); -+ update_msg_send.update_msg = newmsg; -+ update_msg_send.so = sa_parms->so; -+ update_msg_send.len = len; -+ -+ if (len < 0) { -+ free(update_msg_send.update_msg); -+ update_msg_send.update_msg = NULL; -+ return -1; -+ } -+ } else { -+ free(newmsg); -+ if (len < 0) -+ return -1; -+ } - - __ipsec_errcode = EIPSEC_NO_ERROR; - return len; ---- a/src/racoon/session.c -+++ b/src/racoon/session.c -@@ -100,6 +100,8 @@ - - #include "sainfo.h" - -+extern struct update_msg_info update_msg_send; -+ - struct fd_monitor { - int (*callback)(void *ctx, int fd); - void *ctx; -@@ -348,6 +350,11 @@ - close_sockets(); - backupsa_clean(); - -+ if (update_msg_send.update_msg) { -+ free(update_msg_send.update_msg); -+ update_msg_send.update_msg = NULL; -+ } -+ - plog(LLV_INFO, LOCATION, NULL, "racoon process %d shutdown\n", getpid()); - - exit(0); ---- a/src/racoon/pfkey.c -+++ b/src/racoon/pfkey.c -@@ -103,10 +103,12 @@ - #include "crypto_openssl.h" - #include "grabmyaddr.h" -+#include "../libipsec/libpfkey.h" - - #if defined(SADB_X_EALG_RIJNDAELCBC) && !defined(SADB_X_EALG_AESCBC) - #define SADB_X_EALG_AESCBC SADB_X_EALG_RIJNDAELCBC - #endif - -+extern struct update_msg_info update_msg_send; - /* prototype */ - static u_int ipsecdoi2pfkey_aalg __P((u_int)); - static u_int ipsecdoi2pfkey_ealg __P((u_int)); -@@ -253,6 +255,13 @@ - s_pfkey_type(msg->sadb_msg_type), - strerror(msg->sadb_msg_errno)); - -+ if (msg->sadb_msg_errno == EINTR && -+ update_msg_send.update_msg) { -+ plog(LLV_DEBUG, LOCATION, NULL, -+ "pfkey update resend\n"); -+ send(update_msg_send.so, (void *)update_msg_send.update_msg, (socklen_t)update_msg_send.len, 0); -+ } -+ - goto end; - } - -@@ -498,6 +507,11 @@ - { - flushsp(); - -+ if (update_msg_send.update_msg) { -+ free(update_msg_send.update_msg); -+ update_msg_send.update_msg = NULL; -+ } -+ - if (pfkey_send_spddump(lcconf->sock_pfkey) < 0) { - plog(LLV_ERROR, LOCATION, NULL, - "libipsec sending spddump failed: %s\n", -@@ -1295,6 +1309,8 @@ - return 0; - } - -+int update_received = 0; -+ - static int - pk_recvupdate(mhp) - caddr_t *mhp; -@@ -1307,6 +1323,13 @@ - int incomplete = 0; - struct saproto *pr; - -+ update_received = 1; -+ -+ if (update_msg_send.update_msg) { -+ free(update_msg_send.update_msg); -+ update_msg_send.update_msg = NULL; -+ } -+ - /* ignore this message because of local test mode. */ - if (f_local) - return 0; -@@ -4163,3 +4186,8 @@ - - return buf; - } -+ -+int receive_from_isakmp() -+{ -+ return pfkey_handler(NULL, lcconf->sock_pfkey); -+} ---- a/src/racoon/pfkey.h -+++ b/src/racoon/pfkey.h -@@ -71,5 +71,6 @@ - extern u_int32_t pk_getseq __P((void)); - extern const char *sadbsecas2str - __P((struct sockaddr *, struct sockaddr *, int, u_int32_t, int)); -+extern int receive_from_isakmp __P((void)); - - #endif /* _PFKEY_H */ ---- a/src/racoon/isakmp_quick.c -+++ b/src/racoon/isakmp_quick.c -@@ -774,6 +774,8 @@ - return error; - } - -+extern int update_received; -+ - /* - * send to responder - * HDR*, HASH(3) -@@ -892,6 +894,11 @@ - } - plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n"); - -+ while (!update_received) -+ receive_from_isakmp(); -+ -+ update_received = 0; -+ - /* Do ADD for responder */ - if (pk_sendadd(iph2) < 0) { - plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n"); -@@ -1035,6 +1042,11 @@ - } - plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n"); - -+ while (!update_received) -+ receive_from_isakmp(); -+ -+ update_received = 0; -+ - /* Do ADD for responder */ - if (pk_sendadd(iph2) < 0) { - plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n"); -@@ -1989,6 +2001,11 @@ - } - plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n"); - -+ while (!update_received) -+ receive_from_isakmp(); -+ -+ update_received = 0; -+ - /* Do ADD for responder */ - if (pk_sendadd(iph2) < 0) { - plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n"); diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch deleted file mode 100644 index e272bc20..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch +++ /dev/null @@ -1,26 +0,0 @@ -Subject: [PATCH] ipsec-tools: racoon: check several invalid ivm - -Upstream-Status: Pending - -Add checking for invalid ivm, or it will crash racoon. - -Signed-off-by: Ming Liu <ming.liu@windriver.com> ---- - isakmp_cfg.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff -urpN a/src/racoon/isakmp_cfg.c b/src/racoon/isakmp_cfg.c ---- a/src/racoon/isakmp_cfg.c -+++ b/src/racoon/isakmp_cfg.c -@@ -171,6 +171,11 @@ isakmp_cfg_r(iph1, msg) - iph1->mode_cfg->last_msgid != packet->msgid ) - iph1->mode_cfg->ivm = - isakmp_cfg_newiv(iph1, packet->msgid); -+ if(iph1->mode_cfg->ivm == NULL) { -+ plog(LLV_ERROR, LOCATION, NULL, -+ "failed to create new IV\n"); -+ return; -+ } - ivm = iph1->mode_cfg->ivm; - - dmsg = oakley_do_decrypt(iph1, msg, ivm->iv, ivm->ive); diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch deleted file mode 100644 index de1bdb40..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch +++ /dev/null @@ -1,61 +0,0 @@ -Subject: [PATCH] ipsec-tools: racoon: check several invalid pointers - -Upstream-Status: Pending - -Add checking for invalid pointers, or it will crash racoon. - -Signed-off-by: Ming Liu <ming.liu@windriver.com> ---- - ipsec_doi.c | 5 +++-- - isakmp_cfg.c | 7 +++++++ - isakmp_quick.c | 6 ++++-- - 3 files changed, 14 insertions(+), 4 deletions(-) - -diff -urpN a/src/racoon/ipsec_doi.c b/src/racoon/ipsec_doi.c ---- a/src/racoon/ipsec_doi.c -+++ b/src/racoon/ipsec_doi.c -@@ -3374,8 +3374,9 @@ ipsecdoi_chkcmpids( idt, ids, exact ) - - /* handle wildcard IDs */ - -- if (idt == NULL || ids == NULL) -- { -+ if (idt == NULL || ids == NULL || -+ idt->v == NULL || idt->l == 0 || -+ ids->v == NULL || ids->l == 0) { - if( !exact ) - { - plog(LLV_DEBUG, LOCATION, NULL, -diff -urpN a/src/racoon/isakmp_cfg.c b/src/racoon/isakmp_cfg.c ---- a/src/racoon/isakmp_cfg.c -+++ b/src/racoon/isakmp_cfg.c -@@ -1138,6 +1138,13 @@ isakmp_cfg_newiv(iph1, msgid) - return NULL; - } - -+ if (iph1->ivm == NULL || iph1->ivm->iv == NULL || -+ iph1->ivm->iv->v == NULL || iph1->ivm->iv->l == 0) { -+ plog(LLV_ERROR, LOCATION, NULL, -+ "isakmp_cfg_newiv called with invalid IV management\n"); -+ return NULL; -+ } -+ - if (ics->ivm != NULL) - oakley_delivm(ics->ivm); - -diff -urpN a/src/racoon/isakmp_quick.c b/src/racoon/isakmp_quick.c ---- a/src/racoon/isakmp_quick.c -+++ b/src/racoon/isakmp_quick.c -@@ -2243,8 +2243,10 @@ get_proposal_r(iph2) - int error = ISAKMP_INTERNAL_ERROR; - - /* check the existence of ID payload */ -- if ((iph2->id_p != NULL && iph2->id == NULL) -- || (iph2->id_p == NULL && iph2->id != NULL)) { -+ if ((iph2->id_p != NULL && -+ (iph2->id == NULL || iph2->id->v == NULL || iph2->id->l == 0)) || -+ (iph2->id != NULL && -+ (iph2->id_p == NULL || iph2->id_p->v == NULL || iph2->id_p->l == 0))) { - plog(LLV_ERROR, LOCATION, NULL, - "Both IDs wasn't found in payload.\n"); - return ISAKMP_NTYPE_INVALID_ID_INFORMATION; diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf deleted file mode 100644 index 6b507508..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf +++ /dev/null @@ -1,8 +0,0 @@ -# Defaults for racoon service -# sourced by racoon.service -# installed at /etc/default/racoon by the maintainer scripts -# -# This is a POSIX shell fragment -# -# Arguments to pass to racoon -RACOON_ARGS="" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample deleted file mode 100644 index 2948a4a3..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample +++ /dev/null @@ -1,40 +0,0 @@ -# -# NOTE: This file will not be used if you use racoon-tool(8) to manage your -# IPsec connections. racoon-tool will process racoon-tool.conf(5) and -# generate a configuration (/var/lib/racoon/racoon.conf) and use it, instead -# of this file. -# -# Simple racoon.conf -# -# -# Please look in /usr/share/doc/racoon/examples for -# examples that come with the source. -# -# Please read racoon.conf(5) for details, and alsoread setkey(8). -# -# -# Also read the Linux IPSEC Howto up at -# http://www.ipsec-howto.org/t1.html -# -log notify; -path pre_shared_key "/etc/racoon/psk.txt"; -path certificate "/etc/racoon/certs"; - -#remote 172.31.1.1 { -# exchange_mode main,aggressive; -# proposal { -# encryption_algorithm 3des; -# hash_algorithm sha1; -# authentication_method pre_shared_key; -# dh_group modp1024; -# } -# generate_policy off; -#} -# -#sainfo address 192.168.203.10[any] any address 192.168.22.0/24[any] any { -# pfs_group modp768; -# encryption_algorithm 3des; -# authentication_algorithm hmac_md5; -# compression_algorithm deflate; -#} - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service deleted file mode 100644 index a10e7702..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Racoon IKEv1 key management daemon for IPSEC -After=syslog.target network.target - -[Service] -Type=forking -EnvironmentFile=-@SYSCONFDIR@/default/racoon -ExecStart=@SBINDIR@/racoon $RACOON_ARGS - -[Install] -WantedBy=multi-user.target diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb b/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb deleted file mode 100644 index a6d473b5..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb +++ /dev/null @@ -1,98 +0,0 @@ -DESCRIPTION = "IPsec-Tools is a port of KAME's IPsec utilities to the \ -Linux-2.6 IPsec implementation." -HOMEPAGE = "http://ipsec-tools.sourceforge.net/" -SECTION = "net" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://src/libipsec/pfkey.c;beginline=6;endline=31;md5=bc9b7ff40beff19fe6bc6aef26bd2b24" - -DEPENDS = "virtual/kernel openssl readline flex-native bison-native" - -PACKAGE_ARCH = "${MACHINE_ARCH}" - -SRC_URI = "http://ftp.netbsd.org/pub/NetBSD/misc/ipsec-tools/0.8/ipsec-tools-${PV}.tar.bz2 \ - file://0002-Don-t-link-against-libfl.patch \ - file://configure.patch \ - file://0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch \ - file://racoon-check-invalid-pointers.patch \ - file://racoon-check-invalid-ivm.patch \ - file://glibc-2.20.patch \ - file://racoon-Resend-UPDATE-message-when-received-EINTR-message.patch \ - file://racoon.conf.sample \ - file://racoon.conf \ - file://racoon.service \ - file://fix-CVE-2015-4047.patch \ - file://0001-Fix-build-with-clang.patch \ - file://0001-Fix-header-issues-found-with-musl-libc.patch \ - file://0002-cfparse-clear-memory-equal-to-size-of-array.patch \ - file://fix-CVE-2016-10396.patch \ - file://0001-Disable-gcc8-specific-warnings.patch \ - file://0001-ipsec-tools-add-openssl-1.1-support.patch \ - " -SRC_URI[md5sum] = "d53ec14a0a3ece64e09e5e34b3350b41" -SRC_URI[sha256sum] = "8eb6b38716e2f3a8a72f1f549c9444c2bc28d52c9536792690564c74fe722f2d" - -inherit autotools systemd - -# Options: -# --enable-adminport enable admin port -# --enable-rc5 enable RC5 encryption (patented) -# --enable-idea enable IDEA encryption (patented) -# --enable-gssapi enable GSS-API authentication -# --enable-hybrid enable hybrid, both mode-cfg and xauth support -# --enable-frag enable IKE fragmentation payload support -# --enable-stats enable statistics logging function -# --enable-dpd enable dead peer detection -# --enable-samode-unspec enable to use unspecified a mode of SA -# --disable-ipv6 disable ipv6 support -# --enable-natt enable NAT-Traversal (yes/no/kernel) -# --enable-natt-versions=list list of supported NAT-T versions delimited by coma. -# --with-kernel-headers=/lib/modules/<uname>/build/include -# where your Linux Kernel headers are installed -# --with-readline support readline input (yes by default) -# --with-flex use directiory (default: no) -# --with-flexlib=<LIB> specify flex library. -# --with-openssl=DIR specify OpenSSL directory -# --with-libradius=DIR specify libradius path (like/usr/pkg) -# --with-libpam=DIR specify libpam path (like/usr/pkg) -# -# Note: if you give it the actual kernel headers it won't build, it actually -# needs to point at the linux-libc-headers version of the kernel headers. -# -EXTRA_OECONF = "--with-kernel-headers=${STAGING_INCDIR} \ - --with-readline \ - --with-openssl=${STAGING_LIBDIR}/.. \ - --without-libradius \ - --disable-security-context \ - --enable-shared \ - --enable-dpd \ - --enable-natt=yes \ - --sysconfdir=${sysconfdir}/racoon \ - ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--enable-ipv6=yes', '', d)}" - -# See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530527 -CFLAGS += "-fno-strict-aliasing" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[pam] = "--with-libpam,--without-libpam,libpam," -PACKAGECONFIG[selinux] = "--enable-security-context,--disable-security-context,libselinux," - -SYSTEMD_SERVICE_${PN} = "racoon.service" - -do_install_append() { - install -d ${D}${sysconfdir}/racoon - install -m 0644 ${WORKDIR}/racoon.conf.sample ${D}${sysconfdir}/racoon/racoon.conf - - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/racoon.service ${D}${systemd_unitdir}/system - - sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/racoon.service - sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/racoon.service - - install -d ${D}${sysconfdir}/default/ - install -m 0644 ${WORKDIR}/racoon.conf ${D}${sysconfdir}/default/racoon - fi -} - -FILES_${PN} += "${sysconfdir}/racoon/racoon.conf \ - ${sysconfdir}/default/racoon" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb b/external/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.31.bb index 4f3c16dc..8fb116f5 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.31.bb @@ -16,14 +16,14 @@ LIC_FILES_CHKSUM = "file://README;beginline=40;endline=56;md5=b4e40069f15598d0e3 DEPENDS += "libnl popt" -SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.gz \ +SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.xz \ file://0001-Modify-the-Makefile-for-cross-compile.patch \ file://0003-ipvsadm-remove-dependency-on-bash.patch \ file://makefile-add-ldflags.patch \ " -SRC_URI[md5sum] = "88b35030b4766b3e44ad15aacdef65c4" -SRC_URI[sha256sum] = "297f5cd459c3eef81ed0ca32e53bf320ed6b132fe7ed6ea5e44aa6b1fbd2a7de" +SRC_URI[md5sum] = "f6d1707c5baf684b58fd33682d67871f" +SRC_URI[sha256sum] = "1a0a5e25b5a1226435d2fb76341656f83a710183aebb0d204db39c0ec3bedfdb" UPSTREAM_CHECK_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/ipvsadm" @@ -34,7 +34,9 @@ do_compile() { } do_install() { - sed -i -e "s;SBIN\t\t= \$(BUILD_ROOT)/sbin;SBIN\t\t= \$(BUILD_ROOT)/$base_sbindir;" ${S}/Makefile + sed -i -e "s;SBIN\t\t= \$(BUILD_ROOT)/sbin;SBIN\t\t= \$(BUILD_ROOT)$base_sbindir;" \ + -e "s;INIT\t\t= \$(BUILD_ROOT)/etc/rc.d/init.d;INIT\t\t= \$(BUILD_ROOT)${sysconfdir}/init.d;" \ + ${S}/Makefile oe_runmake 'BUILD_ROOT=${D}' install } diff --git a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch deleted file mode 100644 index 5818d57f..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch +++ /dev/null @@ -1,87 +0,0 @@ -From bc4ff7e37ce120c257e52a81fe3475499dfd2573 Mon Sep 17 00:00:00 2001 -From: Changqing Li <changqing.li@windriver.com> -Date: Tue, 24 Jul 2018 10:10:24 +0800 -Subject: [PATCH] libldb: fix config error - -Signed-off-by: Changqing Li <changqing.li@windriver.com> ---- - wscript | 58 +++++++++++++++++++++++++++++----------------------------- - 1 file changed, 29 insertions(+), 29 deletions(-) - -diff --git a/wscript b/wscript -index b0af7b6..8ad9f96 100644 ---- a/wscript -+++ b/wscript -@@ -115,40 +115,40 @@ def configure(conf): - onlyif='talloc tdb tevent pyldb-util', - implied_deps='replace talloc tdb tevent'): - conf.define('USING_SYSTEM_LDB', 1) -+ if not Options.options.without_ldb_lmdb: -+ if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)', -+ "HAVE_64_BIT_SIZE_T_FOR_LMDB", -+ execute=True, -+ msg='Checking for a 64-bit host to ' -+ 'support lmdb'): -+ Logs.warn("--without-ldb-lmdb implied as this " -+ "host is not 64-bit") -+ -+ if not conf.env.standalone_ldb and \ -+ not Options.options.without_ad_dc and \ -+ conf.CONFIG_GET('ENABLE_SELFTEST'): -+ Logs.warn("NOTE: Some AD DC parts of selftest will fail") - -- if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)', -- "HAVE_64_BIT_SIZE_T_FOR_LMDB", -- execute=True, -- msg='Checking for a 64-bit host to ' -- 'support lmdb'): -- Logs.warn("--without-ldb-lmdb implied as this " -- "host is not 64-bit") -- -- if not conf.env.standalone_ldb and \ -- not Options.options.without_ad_dc and \ -- conf.CONFIG_GET('ENABLE_SELFTEST'): -- Logs.warn("NOTE: Some AD DC parts of selftest will fail") -- -- conf.env.REQUIRE_LMDB = False -- else: -- if conf.env.standalone_ldb: -- if Options.options.without_ldb_lmdb: -- conf.env.REQUIRE_LMDB = False -- else: -- conf.env.REQUIRE_LMDB = True -- elif Options.options.without_ad_dc: - conf.env.REQUIRE_LMDB = False - else: -- if Options.options.without_ldb_lmdb: -- if not Options.options.without_ad_dc and \ -- conf.CONFIG_GET('ENABLE_SELFTEST'): -- raise Utils.WafError('--without-ldb-lmdb conflicts ' -- 'with --enable-selftest while ' -- 'building the AD DC') -- -+ if conf.env.standalone_ldb: -+ if Options.options.without_ldb_lmdb: -+ conf.env.REQUIRE_LMDB = False -+ else: -+ conf.env.REQUIRE_LMDB = True -+ elif Options.options.without_ad_dc: - conf.env.REQUIRE_LMDB = False - else: -- conf.env.REQUIRE_LMDB = True -+ if Options.options.without_ldb_lmdb: -+ if not Options.options.without_ad_dc and \ -+ conf.CONFIG_GET('ENABLE_SELFTEST'): -+ raise Utils.WafError('--without-ldb-lmdb conflicts ' -+ 'with --enable-selftest while ' -+ 'building the AD DC') -+ -+ conf.env.REQUIRE_LMDB = False -+ else: -+ conf.env.REQUIRE_LMDB = True - - - if conf.CONFIG_SET('USING_SYSTEM_LDB'): --- -2.7.4 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch new file mode 100644 index 00000000..45c5acab --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch @@ -0,0 +1,62 @@ +From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Fri, 25 Jan 2019 15:00:59 +0800 +Subject: [PATCH] waf: add support of cross_compile + +After upgrade, waf build system also upgraded. + +on 1.5.19, for cross_compile, subprocess.Popen is set to be +samba_cross.cross_Popen, which will not execute testprog on +host, but only read result from cross-answers.txt which is +passed by option --cross-answer + +part of old code: + args = Utils.to_list(kw.get('exec_args', [])) + proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE) + +but on new version, exec_args is not used and cause do_configure +failed with Exec format error + +fixed by append cross anser related args to cmd + +Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + third_party/waf/waflib/Tools/c_config.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py +index 7608215..767cf33 100644 +--- a/third_party/waf/waflib/Tools/c_config.py ++++ b/third_party/waf/waflib/Tools/c_config.py +@@ -660,20 +660,21 @@ class test_exec(Task.Task): + """ + color = 'PINK' + def run(self): ++ args = self.generator.bld.kw.get('exec_args', []) + if getattr(self.generator, 'rpath', None): + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) +- else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args) ++ else: ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args) + else: + env = self.env.env or {} + env.update(dict(os.environ)) + for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): + env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env) + + @feature('test_exec') + @after_method('apply_link') +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch index ee4936a5..3f2921ed 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch @@ -1,30 +1,32 @@ -From f4cda3a71311e4496b725bc5f46af93413ec7a1c Mon Sep 17 00:00:00 2001 -From: Bian Naimeng <biannm@cn.fujitsu.com> -Date: Fri, 17 Jul 2015 11:58:49 +0800 -Subject: [PATCH] libldb: add new recipe +From cc0576405803bcae45ee353c4333c449cead9207 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Tue, 25 Jun 2019 14:25:08 +0800 +Subject: [PATCH] do not import target module while cross compile -Some modules such as dynamic library maybe cann't be imported while cross compile, -we just check whether does the module exist. +Some modules such as dynamic library maybe cann't be imported +while cross compile, we just check whether does the module exist. Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> +update to version 4.10.5, and switch to python3 +Signed-off-by: Changqing Li <changqing.li@windriver.com> --- - buildtools/wafsamba/samba_bundled.py | 32 ++++++++++++++++++++++++-------- - 1 file changed, 24 insertions(+), 8 deletions(-) + buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++-------- + 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py -index 253d604..398cc6a 100644 +index 60ce7da..5468a36 100644 --- a/buildtools/wafsamba/samba_bundled.py +++ b/buildtools/wafsamba/samba_bundled.py -@@ -2,6 +2,7 @@ +@@ -4,6 +4,7 @@ import sys + from waflib import Build, Options, Logs + from waflib.Configure import conf + from wafsamba import samba_utils ++import importlib.util, os - import sys - import Build, Options, Logs -+import imp, os - from Configure import conf - from samba_utils import TO_LIST - -@@ -249,17 +250,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'): + def PRIVATE_NAME(bld, name, private_extension, private_library): + '''possibly rename a library to include a bundled extension''' +@@ -249,17 +250,27 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'): # versions minversion = minimum_library_version(conf, libname, minversion) @@ -34,34 +36,32 @@ index 253d604..398cc6a 100644 - found = False - else: + # Find module in PYTHONPATH -+ stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]]) -+ if stuff: ++ spec = importlib.util._find_spec_from_path(modulename, [os.environ["PYTHONPATH"]]) ++ if spec: try: - version = m.__version__ - except AttributeError: -+ m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2]) ++ module = importlib.util.module_from_spec(spec) ++ spec.loader.load_module(module) + except ImportError: found = False + + if conf.env.CROSS_COMPILE: + # Some modules such as dynamic library maybe cann't be imported + # while cross compile, we just check whether the module exist -+ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1])) ++ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (spec.name)) + found = True else: - found = tuplize_version(version) >= tuplize_version(minversion) + try: -+ version = m.__version__ ++ version = module.__version__ + except AttributeError: + found = False + else: + found = tuplize_version(version) >= tuplize_version(minversion) -+ finally: -+ if stuff[0]: -+ stuff[0].close() -+ else: -+ found = False -+ if not found and not conf.LIB_MAY_BE_BUNDLED(libname): Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion)) sys.exit(1) +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.5.4.patch index 357afbea..bffd0653 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.5.4.patch @@ -1,6 +1,6 @@ -From ffffd29bc6303d60b3d77048fbbf6776f6fbbe01 Mon Sep 17 00:00:00 2001 +From 0841c3ed69c388251c1aeae63f2c3813555a54f6 Mon Sep 17 00:00:00 2001 From: Changqing Li <changqing.li@windriver.com> -Date: Thu, 19 Jul 2018 16:40:31 +0800 +Date: Mon, 1 Jul 2019 16:14:16 +0800 Subject: [PATCH] ldb: Add configure options for packages Add configure options for the following packages: @@ -15,27 +15,22 @@ Upstream-Status: Inappropriate [oe deterministic build specific] Signed-off-by: Jackie Huang <jackie.huang@windriver.com> -Update to version 1.4.1, and fix one configure error - -Cross answers file cross-answers-i586.txt is incomplete with -"Checking for a 64-bit host to support lmdb: UNKNOWN" - -we don't support lmdb, so only check when lmdb is support - +upgrade to version 1.5.4 Signed-off-by: Changqing Li <changqing.li@windriver.com> --- - lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++------------- - wscript | 6 ++++ - 2 files changed, 77 insertions(+), 23 deletions(-) + lib/replace/wscript | 92 +++++++++++++++++++++++++++++++++++++++++------------ + wscript | 8 +++++ + 2 files changed, 79 insertions(+), 21 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index fd00a42..434192e 100644 +index a7fd25d..ad26041 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -23,6 +23,41 @@ def set_options(opt): +@@ -24,6 +24,41 @@ def options(opt): + opt.BUILTIN_DEFAULT('NONE') opt.PRIVATE_EXTENSION_DEFAULT('') opt.RECURSE('buildtools/wafsamba') - ++ + opt.add_option('--with-acl', + help=("Enable use of acl"), + action="store_true", dest='enable_acl') @@ -70,11 +65,10 @@ index fd00a42..434192e 100644 + opt.add_option('--without-libcap', + help=("Disable use of libcap"), + action="store_false", dest='enable_libcap', default=False) -+ + @Utils.run_once def configure(conf): - conf.RECURSE('buildtools/wafsamba') -@@ -32,12 +67,25 @@ def configure(conf): +@@ -34,12 +69,25 @@ def configure(conf): conf.DEFINE('HAVE_LIBREPLACE', 1) conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) @@ -105,23 +99,22 @@ index fd00a42..434192e 100644 conf.CHECK_HEADERS('port.h') conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h') conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') -@@ -108,7 +156,9 @@ def configure(conf): +@@ -110,8 +158,9 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') +- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') +- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') + if Options.options.enable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') -+ ++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') ++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') -@@ -340,22 +390,20 @@ def configure(conf): +@@ -380,20 +429,21 @@ def configure(conf): - conf.CHECK_FUNCS('prctl dirname basename') + strlcpy_in_bsd = False -- strlcpy_in_bsd = False -- - # libbsd on some platforms provides strlcpy and strlcat - if not conf.CHECK_FUNCS('strlcpy strlcat'): - if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', @@ -136,11 +129,12 @@ index fd00a42..434192e 100644 - - if not conf.CHECK_FUNCS('closefrom'): - conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') -+ if Options.options.enable_libbsd: ++ if Options.options.enable_libbsd: + # libbsd on some platforms provides strlcpy and strlcat + if not conf.CHECK_FUNCS('strlcpy strlcat'): -+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', -+ checklibc=True) ++ if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', ++ checklibc=True): ++ strlcpy_in_bsd = True + if not conf.CHECK_FUNCS('getpeereid'): + conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') + if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): @@ -153,20 +147,11 @@ index fd00a42..434192e 100644 conf.CHECK_CODE(''' struct ucred cred; -@@ -699,7 +747,7 @@ def configure(conf): - # look for a method of finding the list of network interfaces - for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']: - bsd_for_strlcpy = '' -- if strlcpy_in_bsd: -+ if Options.options.enable_libbsd: - bsd_for_strlcpy = ' bsd' - if conf.CHECK_CODE(''' - #define %s 1 diff --git a/wscript b/wscript -index ad91bc6..2d20fee 100644 +index d3402a7..d4e0ce1 100644 --- a/wscript +++ b/wscript -@@ -36,6 +36,12 @@ def set_options(opt): +@@ -38,6 +38,14 @@ def options(opt): help='disable new LMDB backend for LDB', action='store_true', dest='without_ldb_lmdb', default=False) @@ -176,6 +161,8 @@ index ad91bc6..2d20fee 100644 + opt.add_option('--without-valgrind', + help=("disable use of valgrind"), + action="store_false", dest='enable_valgrind', default=False) ++ ++ def configure(conf): conf.RECURSE('lib/tdb') diff --git a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.4.1.bb b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.7.bb index 3c7e5455..da77a238 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.4.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.7.bb @@ -4,14 +4,14 @@ SECTION = "libs" LICENSE = "LGPL-3.0+ & LGPL-2.1+ & GPL-3.0+" DEPENDS += "libtdb libtalloc libtevent popt" -RDEPENDS_pyldb += "python samba" +RDEPENDS_pyldb += "python3" SRC_URI = "http://samba.org/ftp/ldb/ldb-${PV}.tar.gz \ file://do-not-import-target-module-while-cross-compile.patch \ - file://options-1.4.1.patch \ - file://0001-libldb-fix-config-error.patch \ file://libldb-fix-musl-libc-unkown-type-error.patch \ file://libldb-fix-musl-libc-conflict-type-error.patch \ + file://0001-waf-add-support-of-cross_compile.patch \ + file://options-1.5.4.patch \ " PACKAGECONFIG ??= "\ @@ -25,6 +25,7 @@ PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio" PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd" PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap" PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind" +PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb," SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'ldap', '', 'file://avoid-openldap-unless-wanted.patch', d)}" @@ -32,14 +33,17 @@ LIC_FILES_CHKSUM = "file://pyldb.h;endline=24;md5=dfbd238cecad76957f7f860fbe9ada file://man/ldb.3.xml;beginline=261;endline=262;md5=137f9fd61040c1505d1aa1019663fd08 \ file://tools/ldbdump.c;endline=19;md5=a7d4fc5d1f75676b49df491575a86a42" -SRC_URI[md5sum] = "159a1b1a56dcccf410d1bba911be6076" -SRC_URI[sha256sum] = "2df13aa25b376b314ce24182c37691959019523de3cc5356c40c1a333b0890a2" +SRC_URI[md5sum] = "4d72bbfe7c7fcdf592482a98c853d222" +SRC_URI[sha256sum] = "b9eeb77ecb94f3b53caeff7cbc1850b6294fa937be4364c53a92a62c6548c001" -inherit waf-samba distro_features_check -REQUIRED_DISTRO_FEATURES = "pam" +inherit waf-samba S = "${WORKDIR}/ldb-${PV}" +#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen +#to cross Popen +export WAF_NO_PREFORK="yes" + EXTRA_OECONF += "--disable-rpath \ --disable-rpath-install \ --bundled-libraries=cmocka \ @@ -47,7 +51,6 @@ EXTRA_OECONF += "--disable-rpath \ --with-modulesdir=${libdir}/ldb/modules \ --with-privatelibdir=${libdir}/ldb \ --with-libiconv=${STAGING_DIR_HOST}${prefix}\ - --without-ldb-lmdb \ " PACKAGES =+ "pyldb pyldb-dbg pyldb-dev" @@ -61,8 +64,8 @@ FILES_${PN}-dbg += "${bindir}/.debug/* \ ${libdir}/ldb/modules/ldb/.debug/*" FILES_pyldb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \ - ${libdir}/libpyldb-util.so.* \ + ${libdir}/libpyldb-util.*.so.* \ " FILES_pyldb-dbg = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug \ - ${libdir}/.debug/libpyldb-util.so.*" -FILES_pyldb-dev = "${libdir}/libpyldb-util.so" + ${libdir}/.debug/libpyldb-util.*.so.*" +FILES_pyldb-dev = "${libdir}/libpyldb-util.*.so" diff --git a/external/meta-openembedded/meta-networking/recipes-support/libmemcached/libmemcached.inc b/external/meta-openembedded/meta-networking/recipes-support/libmemcached/libmemcached.inc index e86f832f..319ab29c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libmemcached/libmemcached.inc +++ b/external/meta-openembedded/meta-networking/recipes-support/libmemcached/libmemcached.inc @@ -1,11 +1,13 @@ DESCRIPTION = "open source C/C++ client library and tools for the memcached server" DEPENDS = "libevent util-linux" SECTION = "libdevel" -LICENSE = "BSD" +LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://COPYING;md5=865490941c91ba790f0ea78dec93bd60" SRC_URI = "http://launchpad.net/libmemcached/1.0/${PV}/+download/libmemcached-${PV}.tar.gz" +UPSTREAM_CHECK_URI = "https://launchpad.net/libmemcached" + TARGET_LDFLAGS += "-luuid" TARGET_CFLAGS += "-D__USE_GNU -D_GNU_SOURCE" diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch new file mode 100644 index 00000000..e58339af --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch @@ -0,0 +1,62 @@ +From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Fri, 25 Jan 2019 15:00:59 +0800 +Subject: [PATCH] waf: add support of cross_compile + +After upgrade, waf also upgraded + +on 1.5.19, for cross_compile, subprocess.Popen is set to be +samba_cross.cross_Popen, which will not execute testprog on +host, but only read result from cross-answers.txt which is +passed by option --cross-answer + +part of old code: + args = Utils.to_list(kw.get('exec_args', [])) + proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE) + +but on new version, exec_args is not used and cause do_configure +failed with Exec format error + +fixed by append cross anser related args to cmd + +Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + third_party/waf/waflib/Tools/c_config.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py +index 7608215..767cf33 100644 +--- a/third_party/waf/waflib/Tools/c_config.py ++++ b/third_party/waf/waflib/Tools/c_config.py +@@ -660,20 +660,21 @@ class test_exec(Task.Task): + """ + color = 'PINK' + def run(self): ++ args = self.generator.bld.kw.get('exec_args', []) + if getattr(self.generator, 'rpath', None): + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) +- else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args) ++ else: ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args) + else: + env = self.env.env or {} + env.update(dict(os.environ)) + for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): + env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env) + + @feature('test_exec') + @after_method('apply_link') +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.2.0.patch index df45d36e..3847b013 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.2.0.patch @@ -1,6 +1,6 @@ -From 319a2a1bb46ae35fa9d66878cb08285035f0bd5f Mon Sep 17 00:00:00 2001 -From: Jackie Huang <jackie.huang@windriver.com> -Date: Thu, 19 Jul 2018 15:41:31 +0800 +From c6d76c8ade57b996a8123b1c1a3a28ba4666e9c6 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 20 Jun 2019 10:57:06 +0800 Subject: [PATCH] talloc: Add configure options for packages Add configure options for the following packages: @@ -19,22 +19,21 @@ Modified to apply to version 2.1.10. Signed-off-by: Joe Slater <joe.slater@windriver.com> -Modified tp apply to version 2.1.14 +Modified tp apply to version 2.2.0 Signed-off-by: Changqing Li <changqing.li@windriver.com> --- - lib/replace/wscript | 90 +++++++++++++++++++++++++++++++++++++++++------------ - wscript | 7 +++++ - 2 files changed, 77 insertions(+), 20 deletions(-) + lib/replace/wscript | 91 ++++++++++++++++++++++++++++++++++++++++------------- + wscript | 7 ++++- + 2 files changed, 76 insertions(+), 22 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index fd00a42..a77c058 100644 +index 1d01e1e..7bc7666 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -22,6 +22,41 @@ def set_options(opt): - opt.BUILTIN_DEFAULT('NONE') +@@ -25,6 +25,41 @@ def options(opt): opt.PRIVATE_EXTENSION_DEFAULT('') opt.RECURSE('buildtools/wafsamba') -+ + + opt.add_option('--with-acl', + help=("Enable use of acl"), + action="store_true", dest='enable_acl') @@ -69,10 +68,11 @@ index fd00a42..a77c058 100644 + opt.add_option('--without-libcap', + help=("Disable use of libcap"), + action="store_false", dest='enable_libcap', default=False) - ++ @Utils.run_once def configure(conf): -@@ -32,12 +67,25 @@ def configure(conf): + conf.RECURSE('buildtools/wafsamba') +@@ -34,12 +69,25 @@ def configure(conf): conf.DEFINE('HAVE_LIBREPLACE', 1) conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) @@ -101,20 +101,21 @@ index fd00a42..a77c058 100644 + conf.CHECK_HEADERS('sys/capability.h') + conf.CHECK_HEADERS('port.h') - conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h') + conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h') conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') -@@ -108,7 +156,9 @@ def configure(conf): +@@ -110,8 +158,9 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') +- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') +- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') + if Options.options.enable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') -+ ++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') ++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') -@@ -342,20 +392,20 @@ def configure(conf): +@@ -380,20 +429,20 @@ def configure(conf): strlcpy_in_bsd = False @@ -150,23 +151,23 @@ index fd00a42..a77c058 100644 conf.CHECK_CODE(''' struct ucred cred; diff --git a/wscript b/wscript -index 18f726e..fed8ab9 100644 +index e402069..9976f4c 100644 --- a/wscript +++ b/wscript -@@ -32,6 +32,13 @@ def set_options(opt): +@@ -31,7 +31,12 @@ def options(opt): opt.add_option('--enable-talloc-compat1', help=("Build talloc 1.x.x compat library [False]"), action="store_true", dest='TALLOC_COMPAT1', default=False) +- + opt.add_option('--with-valgrind', + help=("enable use of valgrind"), + action="store_true", dest='enable_valgrind') + opt.add_option('--without-valgrind', + help=("disable use of valgrind"), + action="store_false", dest='enable_valgrind', default=False) -+ - def configure(conf): + conf.RECURSE('lib/replace') -- 2.7.4 diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.3.0.bb index 9a463a6d..59deb15b 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.3.0.bb @@ -6,11 +6,12 @@ LIC_FILES_CHKSUM = "file://talloc.h;beginline=3;endline=27;md5=a301712782cad6dd6 file://pytalloc.h;beginline=1;endline=18;md5=2c498cc6f2263672483237b20f46b43d" -SRC_URI = "https://samba.org/ftp/talloc/talloc-${PV}.tar.gz \ - file://options-2.1.14.patch \ +SRC_URI = "https://www.samba.org/ftp/talloc/talloc-${PV}.tar.gz \ + file://options-2.2.0.patch \ + file://0001-waf-add-support-of-cross_compile.patch \ " -SRC_URI[md5sum] = "7478da02e309316231a497a9f17a980d" -SRC_URI[sha256sum] = "b185602756a628bac507fa8af8b9df92ace69d27c0add5dab93190ad7c3367ce" +SRC_URI[md5sum] = "8416b153547add81cd1a4d24e598c890" +SRC_URI[sha256sum] = "75d5bcb34482545a82ffb06da8f6c797f963a0da450d0830c669267b14992fc6" inherit waf-samba @@ -29,6 +30,10 @@ SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr S = "${WORKDIR}/talloc-${PV}" +#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen +#to cross Popen +export WAF_NO_PREFORK="yes" + EXTRA_OECONF += "--disable-rpath \ --disable-rpath-install \ --bundled-libraries=NONE \ @@ -46,4 +51,4 @@ FILES_pytalloc = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \ ${libdir}/libpytalloc-util.so.2.1.1 \ " FILES_pytalloc-dev = "${libdir}/libpytalloc-util.so" -RDEPENDS_pytalloc = "python" +RDEPENDS_pytalloc = "python3" diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch b/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch deleted file mode 100644 index bcc45c9f..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch +++ /dev/null @@ -1,15 +0,0 @@ -Don't check manpages for xsltproc. - -Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> - ---- tdb-1.3.0.orig/wscript 2015-04-22 09:52:32.366000222 +0900 -+++ tdb-1.3.0/wscript 2015-04-22 09:51:57.720000205 +0900 -@@ -90,7 +90,7 @@ def configure(conf): - not conf.env.disable_tdb_mutex_locking): - conf.define('USE_TDB_MUTEX_LOCKING', 1) - -- conf.CHECK_XSLTPROC_MANPAGES() -+ conf.find_program('xsltproc', var='XSLTPROC') - - if not conf.env.disable_python: - # also disable if we don't have the python libs installed diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch b/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch index 365b92da..c35cab7c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch @@ -1,6 +1,6 @@ -From 6de1affddde4003a956523c330ecf24e22e094ac Mon Sep 17 00:00:00 2001 +From 71a10c176c34da898c0169371b3c1b032d2f88b1 Mon Sep 17 00:00:00 2001 From: Changqing Li <changqing.li@windriver.com> -Date: Thu, 19 Jul 2018 16:20:32 +0800 +Date: Wed, 19 Jun 2019 17:53:34 +0800 Subject: [PATCH] tdb: Add configure options for packages Add configure options for the following packages: @@ -15,22 +15,19 @@ Upstream-Status: Inappropriate [oe deterministic build specific] Signed-off-by: Jackie Huang <jackie.huang@windriver.com> -Update for libtdb_1.3.14. +Update to 1.4.0 -Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com> - -Update for libtdb_1.3.16 Signed-off-by: Changqing Li <changqing.li@windriver.com> --- - lib/replace/wscript | 89 +++++++++++++++++++++++++++++++++++++++++------------ + lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++------------- wscript | 6 ++++ - 2 files changed, 75 insertions(+), 20 deletions(-) + 2 files changed, 78 insertions(+), 22 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index fd00a42..2df83cd 100644 +index 1d01e1e..2336dc3 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -23,6 +23,41 @@ def set_options(opt): +@@ -25,6 +25,41 @@ def options(opt): opt.PRIVATE_EXTENSION_DEFAULT('') opt.RECURSE('buildtools/wafsamba') @@ -72,7 +69,7 @@ index fd00a42..2df83cd 100644 @Utils.run_once def configure(conf): conf.RECURSE('buildtools/wafsamba') -@@ -32,12 +67,25 @@ def configure(conf): +@@ -34,12 +69,25 @@ def configure(conf): conf.DEFINE('HAVE_LIBREPLACE', 1) conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) @@ -81,7 +78,7 @@ index fd00a42..2df83cd 100644 + conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h') + conf.CHECK_HEADERS('attr/xattr.h compat.h ctype.h dustat.h') conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h') -- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h') +- conf.CHECK_HEADERS('locale.h ndir.h pwd.h') - conf.CHECK_HEADERS('shadow.h sys/acl.h') - conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h') + conf.CHECK_HEADERS('locale.h ndir.h pwd.h') @@ -101,20 +98,23 @@ index fd00a42..2df83cd 100644 + conf.CHECK_HEADERS('sys/capability.h') + conf.CHECK_HEADERS('port.h') - conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h') + conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h') conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') -@@ -108,7 +156,9 @@ def configure(conf): +@@ -110,9 +158,10 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') +- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') +- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') +- conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') + if Options.options.enable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') ++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') ++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') + - conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') -@@ -342,20 +392,19 @@ def configure(conf): + conf.CHECK_HEADERS('syscall.h sys/syscall.h inttypes.h') +@@ -380,20 +429,21 @@ def configure(conf): strlcpy_in_bsd = False @@ -135,24 +135,26 @@ index fd00a42..2df83cd 100644 + if Options.options.enable_libbsd: + # libbsd on some platforms provides strlcpy and strlcat + if not conf.CHECK_FUNCS('strlcpy strlcat'): -+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', -+ checklibc=True) ++ if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', ++ checklibc=True): ++ strlcpy_in_bsd = True + if not conf.CHECK_FUNCS('getpeereid'): + conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') + if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): + conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') ++ if not conf.CHECK_FUNCS('setproctitle_init'): ++ conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') + + if not conf.CHECK_FUNCS('closefrom'): + conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') -+ conf.CHECK_CODE(''' struct ucred cred; diff --git a/wscript b/wscript -index 6505648..6608481 100644 +index 5598d02..8d47244 100644 --- a/wscript +++ b/wscript -@@ -63,6 +63,12 @@ def set_options(opt): +@@ -69,6 +69,12 @@ def options(opt): action="store_true", dest='disable_tdb_mutex_locking', default=False) diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb b/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.3.bb index 0579ed6e..c131014f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.3.bb @@ -7,17 +7,17 @@ LIC_FILES_CHKSUM = "file://tools/tdbdump.c;endline=18;md5=b59cd45aa8624578126a8c file://include/tdb.h;endline=27;md5=f5bb544641d3081821bcc1dd58310be6" SRC_URI = "https://samba.org/ftp/tdb/tdb-${PV}.tar.gz \ - file://do-not-check-xsltproc-manpages.patch \ file://tdb-Add-configure-options-for-packages.patch \ " -SRC_URI[md5sum] = "7d06d8709188e07df853d9e91db88927" -SRC_URI[sha256sum] = "6a3fc2616567f23993984ada3cea97d953a27669ffd1bfbbe961f26e0cf96cc5" +SRC_URI[md5sum] = "e638e8890f743624a754304b3f994f4d" +SRC_URI[sha256sum] = "c8058393dfa15f47e11ebd2f1d132693f0b3b3b8bf22d0201bfb305026f88a1b" PACKAGECONFIG ??= "\ ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \ " + PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl" PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr" PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio" @@ -29,17 +29,28 @@ S = "${WORKDIR}/tdb-${PV}" inherit waf-samba +#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen +#to cross Popen +export WAF_NO_PREFORK="yes" + EXTRA_OECONF += "--disable-rpath \ --bundled-libraries=NONE \ --builtin-libraries=replace \ --with-libiconv=${STAGING_DIR_HOST}${prefix}\ " -PACKAGES += "tdb-tools python-tdb" +do_install_append() { + # add this link for cross check python module existence. eg: on x86-64 host, check python module + # under recipe-sysroot which is mips64. + cd ${D}${PYTHON_SITEPACKAGES_DIR}; ln -s tdb.*.so tdb.so +} + +PACKAGES += "tdb-tools python3-tdb" -RPROVIDES_${PN}-dbg += "python-tdb-dbg" +RPROVIDES_${PN}-dbg += "python3-tdb-dbg" FILES_${PN} = "${libdir}/*.so.*" FILES_tdb-tools = "${bindir}/*" -FILES_python-tdb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" -RDEPENDS_python-tdb = "python" +FILES_python3-tdb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" +RDEPENDS_python3-tdb = "python3" +INSANE_SKIP_${MLPREFIX}python3-tdb = "dev-so" diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch new file mode 100644 index 00000000..a717f1bb --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch @@ -0,0 +1,62 @@ +From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Fri, 25 Jan 2019 15:00:59 +0800 +Subject: [PATCH] waf: add support of cross_compile + +After upgrade, waf also upgraded. + +on 1.5.19, for cross_compile, subprocess.Popen is set to be +samba_cross.cross_Popen, which will not execute testprog on +host, but only read result from cross-answers.txt which is +passed by option --cross-answer + +part of old code: + args = Utils.to_list(kw.get('exec_args', [])) + proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE) + +but on new version, exec_args is not used and cause do_configure +failed with Exec format error + +fixed by append cross anser related args to cmd + +Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211] + +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + third_party/waf/waflib/Tools/c_config.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py +index 7608215..767cf33 100644 +--- a/third_party/waf/waflib/Tools/c_config.py ++++ b/third_party/waf/waflib/Tools/c_config.py +@@ -660,20 +660,21 @@ class test_exec(Task.Task): + """ + color = 'PINK' + def run(self): ++ args = self.generator.bld.kw.get('exec_args', []) + if getattr(self.generator, 'rpath', None): + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) +- else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args) ++ else: ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args) + else: + env = self.env.env or {} + env.update(dict(os.environ)) + for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): + env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env) + + @feature('test_exec') + @after_method('apply_link') +-- +2.7.4 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.10.0.patch index 363c5867..882af064 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.10.0.patch @@ -1,7 +1,7 @@ -From c3e2e4f89cf37b27609fd02ad67eb02d0015cc1e Mon Sep 17 00:00:00 2001 -From: Jackie Huang <jackie.huang@windriver.com> -Date: Wed, 21 Sep 2016 09:57:49 +0800 -Subject: [PATCH 1/1] tevent: Add configure options for packages +From b2b19aa9968258b22cf31db0b9dba6bcf96046cf Mon Sep 17 00:00:00 2001 +From: Changqing Li <changqing.li@windriver.com> +Date: Thu, 20 Jun 2019 13:55:44 +0800 +Subject: [PATCH] Add configure options for packages Add configure options for the following packages: - acl @@ -18,16 +18,19 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Modified to apply to version 0.9.33. Signed-off-by: Joe Slater <joe.slater@windriver.com> + +Update patch to version 0.10.0 +Signed-off-by: Changqing Li <changqing.li@windriver.com> --- lib/replace/wscript | 89 ++++++++++++++++++++++++++++++++++++++++------------- - wscript | 7 ++++- - 2 files changed, 73 insertions(+), 23 deletions(-) + wscript | 6 ++++ + 2 files changed, 74 insertions(+), 21 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index 2c638b7..079761d 100644 +index 1d01e1e..5cf444a 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -23,6 +23,41 @@ def set_options(opt): +@@ -25,6 +25,41 @@ def options(opt): opt.PRIVATE_EXTENSION_DEFAULT('') opt.RECURSE('buildtools/wafsamba') @@ -69,7 +72,7 @@ index 2c638b7..079761d 100644 @Utils.run_once def configure(conf): conf.RECURSE('buildtools/wafsamba') -@@ -32,12 +67,25 @@ def configure(conf): +@@ -34,12 +69,25 @@ def configure(conf): conf.DEFINE('HAVE_LIBREPLACE', 1) conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) @@ -98,24 +101,24 @@ index 2c638b7..079761d 100644 + conf.CHECK_HEADERS('sys/capability.h') + conf.CHECK_HEADERS('port.h') - conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h') + conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h') conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') -@@ -101,7 +149,8 @@ def configure(conf): +@@ -110,8 +158,9 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') -- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') +- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') +- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') + if Options.options.enable_valgrind: -+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h') ++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') ++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') -@@ -294,22 +343,18 @@ def configure(conf): +@@ -380,20 +429,18 @@ def configure(conf): - conf.CHECK_FUNCS('prctl dirname basename') + strlcpy_in_bsd = False -- strlcpy_in_bsd = False -- - # libbsd on some platforms provides strlcpy and strlcat - if not conf.CHECK_FUNCS('strlcpy strlcat'): - if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', @@ -127,6 +130,9 @@ index 2c638b7..079761d 100644 - conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') - if not conf.CHECK_FUNCS('setproctitle_init'): - conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') +- +- if not conf.CHECK_FUNCS('closefrom'): +- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') + if Options.options.enable_libbsd: + # libbsd on some platforms provides strlcpy and strlcat + if not conf.CHECK_FUNCS('strlcpy strlcat'): @@ -136,32 +142,20 @@ index 2c638b7..079761d 100644 + conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') + if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): + conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') - -- if not conf.CHECK_FUNCS('closefrom'): -- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') ++ + if not conf.CHECK_FUNCS('closefrom'): + conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') conf.CHECK_CODE(''' struct ucred cred; -@@ -660,7 +705,7 @@ removeea setea - # look for a method of finding the list of network interfaces - for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']: - bsd_for_strlcpy = '' -- if strlcpy_in_bsd: -+ if Options.options.enable_libbsd: - bsd_for_strlcpy = ' bsd' - if conf.CHECK_CODE(''' - #define %s 1 diff --git a/wscript b/wscript -index 94d190f..742f779 100644 +index ded182a..824a6dd 100644 --- a/wscript +++ b/wscript -@@ -22,7 +22,12 @@ def set_options(opt): - opt.PRIVATE_EXTENSION_DEFAULT('tevent', noextension='tevent') +@@ -25,6 +25,12 @@ def options(opt): opt.RECURSE('lib/replace') opt.RECURSE('lib/talloc') -- + + opt.add_option('--with-valgrind', + help=("enable use of valgrind"), + action="store_true", dest='enable_valgrind') @@ -172,5 +166,5 @@ index 94d190f..742f779 100644 def configure(conf): conf.RECURSE('lib/replace') -- -2.16.2 +2.7.4 diff --git a/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.10.1.bb index 4df251c7..f1b170da 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.10.1.bb @@ -4,16 +4,17 @@ SECTION = "libs" LICENSE = "LGPLv3+" DEPENDS += "libtalloc libtirpc" -RDEPENDS_python-tevent = "python" +RDEPENDS_python3-tevent = "python3" SRC_URI = "https://samba.org/ftp/tevent/tevent-${PV}.tar.gz \ - file://options-0.9.36.patch \ + file://options-0.10.0.patch \ file://0001-libtevent-fix-musl-libc-compile-error.patch \ + file://0001-waf-add-support-of-cross_compile.patch \ " LIC_FILES_CHKSUM = "file://tevent.h;endline=26;md5=4e458d658cb25e21efc16f720e78b85a" -SRC_URI[md5sum] = "6859cd4081fdb2a76b1cb4bf1c803a59" -SRC_URI[sha256sum] = "168345ed65eac03785cf77b95238e7dc66cbb473a42811693a6b0916e5dae7e0" +SRC_URI[md5sum] = "1060eb69d6994a847eecb73c4d391ced" +SRC_URI[sha256sum] = "79a4da68b38b86ac71d8ac824ee3605ab22a6a91cfa83033a7db73f3dd6910b6" inherit waf-samba @@ -32,15 +33,26 @@ SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr S = "${WORKDIR}/tevent-${PV}" +#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen +#to cross Popen +export WAF_NO_PREFORK="yes" + EXTRA_OECONF += "--disable-rpath \ --bundled-libraries=NONE \ --builtin-libraries=replace \ --with-libiconv=${STAGING_DIR_HOST}${prefix}\ --without-gettext \ " +do_install_append() { + # add this link for cross check python module existence. eg: on x86-64 host, check python module + # under recipe-sysroot which is mips64. + cd ${D}${PYTHON_SITEPACKAGES_DIR}; ln -s _tevent.*.so _tevent.so +} + +PACKAGES += "python3-tevent" -PACKAGES += "python-tevent" +RPROVIDES_${PN}-dbg += "python3-tevent-dbg" -RPROVIDES_${PN}-dbg += "python-tevent-dbg" +FILES_python3-tevent = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" -FILES_python-tevent = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" +INSANE_SKIP_${MLPREFIX}python3-tevent = "dev-so" diff --git a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch new file mode 100644 index 00000000..a7c7093e --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch @@ -0,0 +1,48 @@ +From 29b37e45577c0921846c1709a190f08a3b032666 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 8 Mar 2019 09:08:38 -0800 +Subject: [PATCH] IFNAMSIZ is defined in net/if.h + +Fixes +/mnt/a/yoe/build/tmp/work/qemuriscv64-yoe-linux-musl/linux-atm/2.5.2-r0/recipe-sysroot/usr/include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function) +| char arp_dev[IFNAMSIZ]; +| ^~~~~~~~ +In file included from ../../../linux-atm-2.5.2/src/arpd/itf.c:17: +/mnt/a/yoe/build/tmp/work/qemuriscv64-yoe-linux-musl/linux-atm/2.5.2-r0/recipe-sysroot/usr/include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function) +| char arp_dev[IFNAMSIZ]; +| ^~~~~~~~ + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/arpd/arp.c | 1 + + src/arpd/itf.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/src/arpd/arp.c b/src/arpd/arp.c +index 92d3787..ff1574c 100644 +--- a/src/arpd/arp.c ++++ b/src/arpd/arp.c +@@ -17,6 +17,7 @@ + #include <netinet/in.h> /* for ntohs, etc. */ + #define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */ + #include <linux/types.h> ++#include <net/if.h> + #include <linux/if_arp.h> + #include <linux/if_ether.h> + #include <atm.h> +diff --git a/src/arpd/itf.c b/src/arpd/itf.c +index 92f0951..d285e3b 100644 +--- a/src/arpd/itf.c ++++ b/src/arpd/itf.c +@@ -14,6 +14,7 @@ + #include <sys/socket.h> + #define _LINUX_NETDEVICE_H /* glibc2 */ + #include <linux/types.h> ++#include <net/if.h> + #include <linux/if_arp.h> + + #include "atmd.h" +-- +2.21.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch new file mode 100644 index 00000000..a54869db --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch @@ -0,0 +1,59 @@ +From 4456e13880803a300e4b6f263ad22a37481b5df5 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 29 Aug 2019 09:33:43 -0700 +Subject: [PATCH] saaldump,atmdump: Include linux/sockios.h for SIOCGSTAMP + +In linux kernel commit 0768e17073dc527ccd18ed5f96ce85f9985e9115 +the asm-generic/sockios.h header no longer defines SIOCGSTAMP. +Instead it provides only SIOCGSTAMP_OLD. + +The linux/sockios.h header now defines SIOCGSTAMP using either +SIOCGSTAMP_OLD or SIOCGSTAMP_NEW as appropriate. This linux only +header file is not pulled so we get a build failure. + +Fixes +../../../linux-atm-2.5.2/src/maint/atmdump.c:142:18: error: use of undeclared identifier 'SIOCGSTAMP' + if (ioctl(s,SIOCGSTAMP,&stamp) < 0) { + ^ +1 error generated. +make[3]: *** [Makefile:623: atmdump.o] Error 1 +make[3]: *** Waiting for unfinished jobs.... +../../../linux-atm-2.5.2/src/maint/saaldump.c:169:14: error: use of undeclared identifier 'SIOCGSTAMP' + if (ioctl(s,SIOCGSTAMP,&stamp) < 0) { + ^ +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/maint/atmdump.c | 2 +- + src/maint/saaldump.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/maint/atmdump.c b/src/maint/atmdump.c +index 8b17826..9e4853b 100644 +--- a/src/maint/atmdump.c ++++ b/src/maint/atmdump.c +@@ -5,7 +5,7 @@ + #if HAVE_CONFIG_H + #include <config.h> + #endif +- ++#include <linux/sockios.h> + #include <stdlib.h> + #include <stdio.h> + #include <unistd.h> +diff --git a/src/maint/saaldump.c b/src/maint/saaldump.c +index 83bdde9..69429a8 100644 +--- a/src/maint/saaldump.c ++++ b/src/maint/saaldump.c +@@ -5,7 +5,7 @@ + #if HAVE_CONFIG_H + #include <config.h> + #endif +- ++#include <linux/sockios.h> + #include <stdlib.h> + #include <stdarg.h> + #include <stdio.h> +-- +2.23.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch deleted file mode 100644 index ce061231..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 27fa80dc8045e71c30dd2abea835206d5c8f6c71 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 17 Jun 2017 16:18:56 -0700 -Subject: [PATCH 2/3] sigd: Replace on_exit() API with atexit() - -on_exit is not universally available - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/sigd/atmsigd.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/sigd/atmsigd.c b/src/sigd/atmsigd.c -index 52e41c7..b766606 100644 ---- a/src/sigd/atmsigd.c -+++ b/src/sigd/atmsigd.c -@@ -517,7 +517,7 @@ int main(int argc,char **argv) - exit(0); - } - } -- (void) on_exit(trace_on_exit,NULL); -+ atexit(trace_on_exit); - poll_loop(); - close_all(); - for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal); --- -2.13.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch new file mode 100644 index 00000000..25211d7c --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch @@ -0,0 +1,37 @@ +Description: musl lacks on_exit +Author: Adrian Bunk <bunk@stusta.de> + +Only prints a trace on nonzero exit(), +so can safely be disabled in musl builds. + +Signed-off-by: Adrian Bunk <bunk@stusta.de> +Upstream-Status: Inappropriate [musl specific] + +--- linux-atm-2.5.1.orig/src/sigd/atmsigd.c ++++ linux-atm-2.5.1/src/sigd/atmsigd.c +@@ -283,6 +283,7 @@ static void setup_signals(void) + /* ------------------------------- main ... ------------------------------- */ + + ++#if 0 + static void trace_on_exit(int status,void *dummy) + { + char path[PATH_MAX+1]; +@@ -300,6 +301,7 @@ static void trace_on_exit(int status,voi + dump_trace(file,"Message trace (after error exit)"); + if (file != stderr) (void) fclose(file); + } ++#endif + + + static void manual_override(void) +@@ -517,7 +519,9 @@ int main(int argc,char **argv) + exit(0); + } + } ++#if 0 + (void) on_exit(trace_on_exit,NULL); ++#endif + poll_loop(); + close_all(); + for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal); diff --git a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb index 9fce4fba..e594906c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb @@ -3,19 +3,20 @@ HOMEPAGE = "http://linux-atm.sourceforge.net/" SECTION = "libs" LICENSE = "GPL-2.0 & LGPL-2.0" -DEPENDS = "virtual/kernel flex flex-native" - -PACKAGE_ARCH = "${MACHINE_ARCH}" +DEPENDS = "flex flex-native" SRC_URI = "http://nchc.dl.sourceforge.net/project/${BPN}/${BPN}/${PV}/${BPN}-${PV}.tar.gz \ file://link-with-ldflags.patch \ file://install-from-buildir.patch \ file://0001-fix-compile-error-with-linux-kernel-v4.8.patch \ file://0001-ttcp-Add-printf-format-string.patch \ - file://0002-sigd-Replace-on_exit-API-with-atexit.patch \ file://0003-mpoad-Drop-old-hack-to-compile-with-very-old-glibc.patch \ + file://0001-IFNAMSIZ-is-defined-in-net-if.h.patch \ + file://0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch \ " +SRC_URI_append_libc-musl = " file://musl-no-on_exit.patch" + SRC_URI[md5sum] = "d49499368c3cf15f73a05d9bce8824a8" SRC_URI[sha256sum] = "9645481a2b16476b59220aa2d6bc5bc41043f291326c9b37581018fbd16dd53a" diff --git a/external/meta-openembedded/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb b/external/meta-openembedded/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb index 70cea6c7..3cabc4ff 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb @@ -65,5 +65,6 @@ FILES_${PN}-dev += " \ FILES_${PN}-utils = "${bindir}/*" +RRECOMMENDS_${PN} += "kernel-module-sctp" RRECOMMENDS_${PN}-utils += "kernel-module-sctp" RRECOMMENDS_${PN}-ptest += "kernel-module-sctp" diff --git a/external/meta-openembedded/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb b/external/meta-openembedded/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb index b70c43f1..5917cfb3 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb @@ -21,7 +21,7 @@ SRCREV = "1c2d8674cc6f4b1166a066e8822e295c105ae7a2" S = "${WORKDIR}/git" -inherit autotools python-dir pkgconfig +inherit autotools python3-dir pkgconfig CACHED_CONFIGUREVARS += "am_cv_python_pythondir=${PYTHON_SITEPACKAGES_DIR}/lowpan-tools" @@ -35,3 +35,5 @@ FILES_${PN}-dbg += "${libexecdir}/lowpan-tools/.debug/" PACKAGES =+ "${PN}-python" FILES_${PN}-python = "${libdir}/python*" + +PNBLACKLIST[lowpan-tools] = "WARNING these tools are deprecated! Use wpan-tools instead" diff --git a/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch b/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch new file mode 100644 index 00000000..d36087d5 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch @@ -0,0 +1,31 @@ +From 12d1cc9da14b0cd0265bca3c4289a335ddf2e357 Mon Sep 17 00:00:00 2001 +From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> +Date: Mon, 8 Apr 2019 21:00:20 +0200 +Subject: [PATCH] Fix musl build + +Fixes compilation error on musl: +| ../macchanger-1.7.0/src/netinfo.c:116:26: error: expected ';' before 'epa' +| req.ifr_data = (caddr_t)epa; + +Missing data type is defined in <sys/types.h>. + +Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> +--- + src/netinfo.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/netinfo.c b/src/netinfo.c +index 3525123..1aa3293 100644 +--- a/src/netinfo.c ++++ b/src/netinfo.c +@@ -28,6 +28,7 @@ + #include <string.h> + #include <unistd.h> + #include <sys/ioctl.h> ++#include <sys/types.h> + + #include <linux/ethtool.h> + #include <linux/sockios.h> +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb b/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb deleted file mode 100644 index a90177f1..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb +++ /dev/null @@ -1,24 +0,0 @@ -SUMMARY = "Tool to view/change network interface MAC addresses" -DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces." -HOMEPAGE = "http://www.alobbs.com/macchanger" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" -SECTION = "net" - -SRC_URI = "${GNU_MIRROR}/macchanger/${BPN}-${PV}.tar.gz" - -SRC_URI[md5sum] = "79b7cdaeca3d8ebafa764c4b0dd03ab7" -SRC_URI[sha256sum] = "d44bfa27cb29c5a718627cb3ef3aa42eb5130426545eb2031120826cd73fa8fe" - -FILES_${PN} = " \ - ${bindir}/${BPN} \ - ${datadir}/${BPN}/wireless.list \ - ${datadir}/${BPN}/OUI.list \ -" - -FILES_${PN}-doc = " \ - ${datadir}/info \ - ${datadir}/man \ -" - -inherit autotools diff --git a/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb b/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb new file mode 100644 index 00000000..6506fd8e --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb @@ -0,0 +1,25 @@ +SUMMARY = "Tool to view/change network interface MAC addresses" +DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces." +HOMEPAGE = "https://github.com/alobbs/macchanger" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" +SECTION = "net" + +SRC_URI = "https://github.com/alobbs/macchanger/releases/download/${PV}/${BPN}-${PV}.tar.gz \ + file://0001-Fix-musl-build.patch \ +" +SRC_URI[md5sum] = "ca56f16142914337391dac91603eb332" +SRC_URI[sha256sum] = "dae2717c270fd5f62d790dbf80c19793c651b1b26b62c101b82d5fdf25a845bf" + +FILES_${PN} = " \ + ${bindir}/${BPN} \ + ${datadir}/${BPN}/wireless.list \ + ${datadir}/${BPN}/OUI.list \ +" + +FILES_${PN}-doc = " \ + ${datadir}/info \ + ${datadir}/man \ +" + +inherit autotools diff --git a/external/meta-openembedded/meta-networking/recipes-support/memcached/memcached_1.5.10.bb b/external/meta-openembedded/meta-networking/recipes-support/memcached/memcached_1.5.20.bb index d2cafc9f..feb4f3f1 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/memcached/memcached_1.5.10.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/memcached/memcached_1.5.20.bb @@ -22,11 +22,11 @@ RDEPENDS_${PN} += "perl perl-module-posix perl-module-autoloader \ SRC_URI = "http://www.memcached.org/files/${BP}.tar.gz \ file://memcached-add-hugetlbfs-check.patch \ " -SRC_URI[md5sum] = "8462616b554183a75845b03c56837cca" -SRC_URI[sha256sum] = "494c060dbd96d546c74ab85a3cc3984d009b4423767ac33e05dd2340c01f1c4b" +SRC_URI[md5sum] = "4b64296ea0eeccdee9168c035e0488ab" +SRC_URI[sha256sum] = "cfd7b023a9cefe7ae8a67184f51d841dbbf97994ed0e8a55e31ee092320ea1e4" # set the same COMPATIBLE_HOST as libhugetlbfs -COMPATIBLE_HOST = '(i.86|x86_64|powerpc|powerpc64|arm).*-linux' +COMPATIBLE_HOST = "(i.86|x86_64|powerpc|powerpc64|aarch64|arm).*-linux*" python __anonymous () { endianness = d.getVar('SITEINFO_ENDIANNESS') diff --git a/external/meta-openembedded/meta-networking/recipes-support/mtr/mtr_0.87.bb b/external/meta-openembedded/meta-networking/recipes-support/mtr/mtr_0.93.bb index 9d3275e2..dd150700 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/mtr/mtr_0.87.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/mtr/mtr_0.93.bb @@ -6,11 +6,9 @@ DEPENDS = "ncurses" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://ui/mtr.c;beginline=5;endline=16;md5=af1fafbbfa1bfd48af839f4bb3221106" + file://ui/mtr.c;beginline=5;endline=16;md5=00a894a39d53726a27386534d1c4e468" -PV .= "+git${SRCPV}" - -SRCREV = "e6d0a7e93129e8023654ebf58dfa8135d1b1af56" +SRCREV = "304349bad86229aedbc62c07d5e98a8292967991" SRC_URI = "git://github.com/traviscross/mtr" S = "${WORKDIR}/git" diff --git a/external/meta-openembedded/meta-networking/recipes-support/nbd/nbd_3.17.bb b/external/meta-openembedded/meta-networking/recipes-support/nbd/nbd_3.20.bb index 35602368..12a82c25 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/nbd/nbd_3.17.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/nbd/nbd_3.20.bb @@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" DEPENDS = "glib-2.0" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz" -SRC_URI[md5sum] = "98b74c655ed94a66686c5ba19480d98e" -SRC_URI[sha256sum] = "d95c6bb1a3ab33b953af99b73fb4833e123bd25433513b32d57dbeb1a0a0d189" +SRC_URI[md5sum] = "910fe6c152f8c30ad8608388e6a4ce89" +SRC_URI[sha256sum] = "e0e1b3538ab7ae5accf56180afd1a9887d415b98d21223b8ad42592b4af7d6cd" inherit autotools pkgconfig diff --git a/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit/0001-server-Fix-build-when-printf-is-a-macro.patch b/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit/0001-server-Fix-build-when-printf-is-a-macro.patch new file mode 100644 index 00000000..c7ec41eb --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit/0001-server-Fix-build-when-printf-is-a-macro.patch @@ -0,0 +1,39 @@ +From 28f07715ab4d670ce81e12776bbece043305bd83 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 11 Apr 2020 15:08:39 -0700 +Subject: [PATCH] server: Fix build when printf is a macro + +clang complains on x86 when building + +main.c:116:2: error: embedding a #include directive within macro arguments is not supported + ^ + +convert nesting include into a string assignment, to same effect but +making it compatible with clang as well + +Upstream-Status: Submitted [https://github.com/libguestfs/nbdkit/pull/3] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + server/main.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/server/main.c b/server/main.c +index 748122f..c0ac874 100644 +--- a/server/main.c ++++ b/server/main.c +@@ -112,9 +112,10 @@ static void + usage (void) + { + /* --{short,long}-options remain undocumented */ +- printf ( ++ char const *opt_list = + #include "synopsis.c" +- ); ++ ; ++ printf ("%s\n", opt_list); + printf ("\n" + "Please read the nbdkit(1) manual page for full usage.\n"); + } +-- +2.26.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb b/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb new file mode 100644 index 00000000..a63e49ec --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb @@ -0,0 +1,36 @@ +SUMMARY = "nbdkit is a toolkit for creating NBD servers." +DESCRIPTION = "NBD — Network Block Device — is a protocol \ +for accessing Block Devices (hard disks and disk-like things) \ +over a Network. \ +\ +nbdkit is a toolkit for creating NBD servers." + +HOMEPAGE = "https://github.com/libguestfs/nbdkit" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4332a97808994cf2133a65b6c6f33eaf" + +SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https \ + file://0001-server-Fix-build-when-printf-is-a-macro.patch \ +" + +PV = "1.19.6+git${SRCPV}" +SRCREV = "257561bc9f2f01eb9f21686bcec4b863d17a26c4" + +S = "${WORKDIR}/git" + +DEPENDS = "curl xz e2fsprogs zlib" + +# autotools-brokensep is needed as nbdkit does not support build in external directory +inherit pkgconfig python3native perlnative bash-completion autotools-brokensep + +# Those are required to build standalone +EXTRA_OECONF = " --without-libvirt --without-libguestfs --disable-perl" + +# Disable some extended support (not desired for small embedded systems) +#EXTRA_OECONF += " --disable-python" +#EXTRA_OECONF += " --disable-ocaml" +#EXTRA_OECONF += " --disable-rust" +#EXTRA_OECONF += " --disable-ruby" +#EXTRA_OECONF += " --disable-tcl" +#EXTRA_OECONF += " --disable-lua" +#EXTRA_OECONF += " --disable-vddk" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch b/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch new file mode 100644 index 00000000..6226e2c0 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch @@ -0,0 +1,44 @@ +From 7f6a104a682d59f28f7df889129f4467cc45e912 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 6 Nov 2019 19:55:42 -0800 +Subject: [PATCH] Depend on haveuint128.h for umult64.c + +This fixes parallel build issue e.g. +mult/umult64.c:9:10: fatal error: 'haveuint128.h' file not found + ^~~~~~~~~~~~~~~ + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + GNUmakefile | 1 + + Makefile | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/GNUmakefile b/GNUmakefile +index 3f3193d..751ca60 100644 +--- a/GNUmakefile ++++ b/GNUmakefile +@@ -126,6 +126,7 @@ $(CDB_OBJS): cdb.h uint32.h + $(CRITBIT_OBJS): critbit.h + + mult64.o: haveuint128.h ++umult64.o: haveuint128.h + + + iob_addbuf.o iob_addfile.o iob_new.o iob_reset.o iob_send.o: iob_internal.h iob.h +diff --git a/Makefile b/Makefile +index 0d08da4..02df6c6 100644 +--- a/Makefile ++++ b/Makefile +@@ -430,7 +430,7 @@ range_str4inbuf.o: mult/range_str4inbuf.c rangecheck.h + range_strinbuf.o: mult/range_strinbuf.c rangecheck.h + umult16.o: mult/umult16.c uint16.h + umult32.o: mult/umult32.c uint32.h +-umult64.o: mult/umult64.c uint64.h ++umult64.o: mult/umult64.c uint64.h haveuint128.h + open_append.o: open/open_append.c open.h + open_excl.o: open/open_excl.c open.h + open_read.o: open/open_read.c open.h +-- +2.24.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat_0.31.bb b/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat_0.32.bb index 4b072f7e..d2f4df78 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat_0.31.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ncp/libowfat_0.32.bb @@ -6,9 +6,11 @@ HOMEPAGE = "http://www.fefe.de/libowfat" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b" -SRC_URI = "https://www.fefe.de/${BPN}/${BP}.tar.xz" -SRC_URI[md5sum] = "120798fab86cfd72dc6b12284d248dd0" -SRC_URI[sha256sum] = "d1e4ac1cfccbb7dc51d77d96398e6302d229ba7538158826c84cb4254c7e8a12" +SRC_URI = "https://www.fefe.de/${BPN}/${BP}.tar.xz \ + file://0001-Depend-on-haveuint128.h-for-umult64.c.patch \ + " +SRC_URI[md5sum] = "ee015ccf45cb2bc61c942642038c2bdc" +SRC_URI[sha256sum] = "f4b9b3d9922dc25bc93adedf9e9ff8ddbebaf623f14c8e7a5f2301bfef7998c1" EXTRA_OEMAKE = "\ DIET= \ @@ -19,9 +21,11 @@ EXTRA_OEMAKE = "\ do_install() { make install \ DESTDIR=${D} \ - INCLUDEDIR=${includedir}/${BPN} \ + INCLUDEDIR=${includedir} \ LIBDIR=${libdir} \ MAN3DIR=${mandir}/man3 } +ALLOW_EMPTY_${PN} = "1" + BBCLASSEXTEND = "native nativesdk" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ndisc6/ndisc6_git.bb b/external/meta-openembedded/meta-networking/recipes-support/ndisc6/ndisc6_git.bb index ec487975..5f866052 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ndisc6/ndisc6_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ndisc6/ndisc6_git.bb @@ -15,6 +15,8 @@ SRC_URI = "git://git.remlab.net/git/ndisc6.git;protocol=http \ S = "${WORKDIR}/git" +DEPENDS = "coreutils-native" + inherit autotools gettext EXTRA_OECONF += "PERL=${USRBINPATH}/perl" diff --git a/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat-openbsd_1.190.bb b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat-openbsd_1.195.bb index defc05cd..20ad43a4 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat-openbsd_1.190.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat-openbsd_1.195.bb @@ -7,15 +7,15 @@ LIC_FILES_CHKSUM = "file://debian/copyright;md5=f39e60ae4ea9fdb559c833be2e59de99 DEPENDS += "glib-2.0 libbsd" do_patch[depends] = "quilt-native:do_populate_sysroot" -SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/netcat-openbsd/1.190-2/netcat-openbsd_${PV}.orig.tar.gz;name=netcat \ - https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/netcat-openbsd/1.190-2/netcat-openbsd_${PV}-2.debian.tar.xz;name=netcat-patch;subdir=${BP} \ +SRC_URI = "http://snapshot.debian.org/archive/debian/20181022T085404Z/pool/main/n/netcat-openbsd/netcat-openbsd_${PV}.orig.tar.gz;name=netcat \ + http://snapshot.debian.org/archive/debian/20181022T085404Z/pool/main/n/netcat-openbsd/netcat-openbsd_${PV}-1.debian.tar.xz;name=netcat-patch;subdir=${BP} \ file://0001-bundle-own-base64-encode-decode-functions.patch \ " -SRC_URI[netcat.md5sum] = "dd32fd1d7903b541ad8709794539b959" -SRC_URI[netcat.sha256sum] = "68ccc448392c05ec51baed0167a72b8c650454f990b895d6e6877d416a38e536" -SRC_URI[netcat-patch.md5sum] = "78058b7af0170654b877b02c37716cdf" -SRC_URI[netcat-patch.sha256sum] = "88088af3f520c7825e59bc133d65e70fc4a30139d451c6faabbd9f240bc78374" +SRC_URI[netcat.md5sum] = "219d5e49c45658e229a3bda63063a986" +SRC_URI[netcat.sha256sum] = "0e283b2a214313c69447cd962c528ac19afb3ddfe606b25de6d179f187cde4c3" +SRC_URI[netcat-patch.md5sum] = "7eba241989dbef6caa78ec4bc8e35151" +SRC_URI[netcat-patch.sha256sum] = "c6736fcbab5254cbbc52278993a951da1126e42800a297c27db297e332e2017e" inherit pkgconfig diff --git a/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat/gettext.patch b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat/gettext.patch new file mode 100644 index 00000000..f2e5f992 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat/gettext.patch @@ -0,0 +1,16 @@ +Fix build with gettext 0.20.x + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- a/configure.ac ++++ b/configure.ac +@@ -49,7 +49,7 @@ AC_SUBST(all_libraries) + dnl I18n support + ALL_LINGUAS="it sk" + AM_GNU_GETTEXT([external], need-ngettext) +-AM_INTL_SUBDIR ++#AM_INTL_SUBDIR + + dnl find resolver functions and the socket library on some broken OS + AC_LBL_LIBRARY_NET diff --git a/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb index d961af54..14d743f8 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb @@ -8,6 +8,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/netcat/netcat-${PV}.tar.bz2 \ file://obsolete_autoconf_macros.patch \ file://netcat-locale_h.patch \ file://make-netcat_flag_count_work.patch \ + file://gettext.patch \ " SRC_URI[md5sum] = "0a29eff1736ddb5effd0b1ec1f6fe0ef" diff --git a/external/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb b/external/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb index a4a9c91c..a180571f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb @@ -14,11 +14,13 @@ SRC_URI = "git://pagure.io/netcf.git;protocol=https \ UPSTREAM_CHECK_GITTAGREGEX = "release-(?P<pver>(\d+(\.\d+)+))" -DEPENDS += "augeas libnl libxslt libxml2 gnulib" +DEPENDS += "augeas libnl libxslt libxml2" + +do_configure[depends] += "${MLPREFIX}gnulib:do_populate_sysroot" S = "${WORKDIR}/git" -inherit gettext autotools pkgconfig systemd +inherit gettext autotools perlnative pkgconfig systemd EXTRA_OECONF_append_class-target = " --with-driver=redhat" diff --git a/external/meta-openembedded/meta-networking/recipes-support/netperf/netperf_git.bb b/external/meta-openembedded/meta-networking/recipes-support/netperf/netperf_git.bb index 8921ea74..d48f3aea 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/netperf/netperf_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/netperf/netperf_git.bb @@ -19,7 +19,7 @@ SRCREV = "f482bab49fcedee46fc5b755da127f608325cd13" S = "${WORKDIR}/git" -inherit update-rc.d autotools +inherit update-rc.d autotools texinfo # cpu_set.patch plus _GNU_SOURCE makes src/netlib.c compile with CPU_ macros CFLAGS_append = " -DDO_UNIX -DDO_IPV6 -D_GNU_SOURCE" @@ -31,6 +31,8 @@ CFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'largefile', \ PACKAGECONFIG ??= "" PACKAGECONFIG[sctp] = "--enable-sctp,--disable-sctp,lksctp-tools," +PACKAGECONFIG[intervals] = "--enable-intervals,--disable-intervals,," +PACKAGECONFIG[histogram] = "--enable-histogram,--disable-histogram,," # autotools.bbclass attends to include m4 files with path depth <= 2 by # "find ${S} -maxdepth 2 -name \*.m4", so move m4 files from m4/m4. diff --git a/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2/0001-fetch-ocsp-response-use-python3.patch b/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2/0001-fetch-ocsp-response-use-python3.patch new file mode 100644 index 00000000..e4db0963 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2/0001-fetch-ocsp-response-use-python3.patch @@ -0,0 +1,27 @@ +From 73ec79432fc557a8be4f1500982b1c0f5fdf12a9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com> +Date: Thu, 7 Nov 2019 09:58:52 +0000 +Subject: [PATCH] fetch-ocsp-response: use python3 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [oe specific] +Signed-off-by: André Draszik <git@andred.net> +--- + script/fetch-ocsp-response | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/script/fetch-ocsp-response b/script/fetch-ocsp-response +index 0ff7461..185116b 100755 +--- a/script/fetch-ocsp-response ++++ b/script/fetch-ocsp-response +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + # nghttp2 - HTTP/2 C Library +-- +2.23.0.rc1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb b/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb deleted file mode 100644 index 3ccd486b..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb +++ /dev/null @@ -1,13 +0,0 @@ -SUMMARY = "HTTP/2 C Library and tools" -HOMEPAGE = "https://nghttp2.org/" -SECTION = "libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec" - -SRC_URI = "https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.bz2" -SRC_URI[md5sum] = "926f07ad3b50f38f7d8935ced04716cf" -SRC_URI[sha256sum] = "0df4229f4123b5aa96e834ebcfdffe954e93d986f0252fd10123d50c6f010983" - -DEPENDS = "libxml2 openssl zlib jansson cunit c-ares" - -inherit cmake pythonnative python-dir diff --git a/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.40.0.bb b/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.40.0.bb new file mode 100644 index 00000000..9ed8c564 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.40.0.bb @@ -0,0 +1,41 @@ +SUMMARY = "HTTP/2 C Library and tools" +HOMEPAGE = "https://nghttp2.org/" +SECTION = "libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec" +DEPENDS = "c-ares cunit jansson libev libevent libxml2 openssl zlib" + +UPSTREAM_CHECK_URI = "https://github.com/nghttp2/nghttp2/releases" + +SRC_URI = "\ + https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.xz \ + file://0001-fetch-ocsp-response-use-python3.patch \ +" +SRC_URI[md5sum] = "8d1a6b96760254e4dd142d7176e8fb7c" +SRC_URI[sha256sum] = "09fc43d428ff237138733c737b29fb1a7e49d49de06d2edbed3bc4cdcee69073" + +inherit cmake manpages python3native +PACKAGECONFIG[manpages] = "" + +# examples are never installed, and don't need to be built in the +# first place +EXTRA_OECMAKE = "-DENABLE_EXAMPLES=OFF -DENABLE_APP=ON" + +do_install_append() { + rm ${D}${bindir}/deflatehd ${D}${bindir}/inflatehd +} + +PACKAGES =+ "lib${PN} ${PN}-client ${PN}-proxy ${PN}-server" + +RDEPENDS_${PN} = "${PN}-client (>= ${PV}) ${PN}-proxy (>= ${PV}) ${PN}-server (>= ${PV})" +RDEPENDS_${PN}_class-native = "" +RDEPENDS_${PN}-proxy = "openssl python3-core python3-io python3-shell" + +ALLOW_EMPTY_${PN} = "1" +FILES_${PN} = "" +FILES_lib${PN} = "${libdir}/*${SOLIBS}" +FILES_${PN}-client = "${bindir}/h2load ${bindir}/nghttp" +FILES_${PN}-proxy = "${bindir}/nghttpx ${datadir}/${BPN}/fetch-ocsp-response" +FILES_${PN}-server = "${bindir}/nghttpd" + +BBCLASSEXTEND = "native" diff --git a/external/meta-openembedded/meta-networking/recipes-support/nis/nis.inc b/external/meta-openembedded/meta-networking/recipes-support/nis/nis.inc index 200eaf74..a968af17 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/nis/nis.inc +++ b/external/meta-openembedded/meta-networking/recipes-support/nis/nis.inc @@ -25,7 +25,7 @@ do_install() { # so force the package to be skipped here (this will cause a # 'nothing provides' error) python () { - os = d.getVar("TARGET_OS", True) + os = d.getVar("TARGET_OS") if os == "linux-uclibc": raise bb.parse.SkipRecipe("NIS functionality requires rpcsvc/yp.h, uClibC does not provide this") } diff --git a/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch b/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch new file mode 100644 index 00000000..9484d0b0 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch @@ -0,0 +1,45 @@ +From 25d5daf30aa2dc451ba528712f668036d8506054 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 27 Jul 2019 07:50:26 -0700 +Subject: [PATCH] Add configure time check for gettid API + +glibc 2.30 has added this syscalls wrapper + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + configure.ac | 1 + + src/log_msg.c | 2 ++ + 2 files changed, 3 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 9e32a4a..6d1067b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -33,6 +33,7 @@ if test -n "$TIRPC_LIBS"; then + AC_DEFINE(HAVE_TIRPC, 1, [Define to 1 if TIRPC is available]) + fi + ++AC_CHECK_FUNCS(gettid) + dnl The difficult part: could we reconfigure NSS or must we use DNS ? + AC_CHECK_FUNCS(__nss_configure_lookup) + if eval "test \"`echo '$ac_cv_func___nss_configure_lookup'`\" != yes"; then +diff --git a/src/log_msg.c b/src/log_msg.c +index 49f0905..37da311 100644 +--- a/src/log_msg.c ++++ b/src/log_msg.c +@@ -26,6 +26,7 @@ + #include "log_msg.h" + + #include <sys/syscall.h> ++#if !HAVE_GETTID + #ifdef __NR_gettid + static pid_t + gettid (void) +@@ -39,6 +40,7 @@ gettid (void) + return getpid (); + } + #endif ++#endif + + int debug_flag = 0; + int logfile_flag = 0; diff --git a/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb b/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb index 9822f455..03b98c9c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb @@ -16,7 +16,7 @@ the server which answered as first. \ \ This is the final IPv4-only version of ypbind-mt. \ " -HOMEPAGE = "http://www.linux-nis.org/nis/ypbind-mt/index.html" +HOMEPAGE = "https://github.com/thkukuk/ypbind-mt/" DEPENDS = " \ yp-tools \ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ @@ -28,13 +28,14 @@ RDEPENDS_${PN} += "yp-tools" # and is used in place of it. PROVIDES += "ypbind" -SRC_URI = "http://www.linux-nis.org/download/ypbind-mt/${BP}.tar.bz2 \ +SRC_URI = "https://github.com/thkukuk/ypbind-mt/releases/download/v${PV}/${BPN}-${PV}.tar.xz \ file://ypbind.init \ file://ypbind.service \ file://0001-dns_hosts-Fix-build-with-musl.patch \ + file://0001-Add-configure-time-check-for-gettid-API.patch \ " -SRC_URI[md5sum] = "1aeccd0d11c064d5d59c56941bca682b" -SRC_URI[sha256sum] = "a2e1fa8fc992a12b289c229e00e38c20d59070c3bcf08babf40c692515c340e0" +SRC_URI[md5sum] = "7cf89641fdc128d0919207e4b7caaf1d" +SRC_URI[sha256sum] = "0696c0263c4fd48a4ff2ce6c109f05f37aab0f71646d81cb22c7c28591bf80eb" inherit systemd update-rc.d @@ -44,7 +45,7 @@ INITSCRIPT_PARAMS = "start 44 3 5 . stop 70 0 1 2 6 ." CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true" -CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/nss3" +CFLAGS_append = " -I${STAGING_INCDIR}/nss3 -I${STAGING_INCDIR}/nspr" do_install_append () { install -d ${D}${sysconfdir}/init.d diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/embed-libs.patch b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/embed-libs.patch new file mode 100644 index 00000000..2d1ab737 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/embed-libs.patch @@ -0,0 +1,20 @@ +Use --embed option so that it can return libpython as well + +% ../recipe-sysroot-native/usr/bin/python3-native/python3-config --libs --embed +-lpython3.8 -lcrypt -lpthread -ldl -lutil -lm -lm +[kraj@apollo /mnt/b/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/ntop/5.0.1-r0/ntop-5.0.1] +% ../recipe-sysroot-native/usr/bin/python3-native/python3-config --libs +-lcrypt -lpthread -ldl -lutil -lm -lm + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- a/configure.in ++++ b/configure.in +@@ -1463,7 +1463,7 @@ dnl> + fi + + if test "x$PYTHON_CONFIG" != "x"; then +- PYTHON_LIBS="`$PYTHON_CONFIG --libs`" ++ PYTHON_LIBS="`$PYTHON_CONFIG --libs --embed`" + if test "x$PYTHON_LIBS" = "x"; then + AC_MSG_RESULT(Python[-devel] support is present but misconfigured) + else diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch new file mode 100644 index 00000000..e627e59a --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch @@ -0,0 +1,19 @@ +Fix following error: + +netflowPlugin.c: In function 'netflowUtilsLoop': +netflowPlugin.c:2144:1: error: no return statement in function returning non-void [-Werror=return-type] + 2144 | } + | ^ + +Return NULL like netflowMainLoop does. + +--- ntop-5.0.1.orig/plugins/netflowPlugin.c 2012-03-09 17:44:17.000000000 +0000 ++++ ntop-5.0.1/plugins/netflowPlugin.c 2019-08-09 10:25:40.878799852 +0000 +@@ -2141,6 +2141,7 @@ + waitCondvar(&myGlobals.device[deviceId].netflowGlobals->ifStatsQueueCondvar); + } + } ++ return(NULL); + } + #endif + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb index 2a7a7f2c..d835e399 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb @@ -18,15 +18,17 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/ntop/ntop-${PV}.tar.gz \ file://use-static-inline.patch \ file://0001-nDPI-Include-sys-types.h.patch \ file://0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch \ + file://fix-missing-return-from-non-void-function.patch \ + file://embed-libs.patch \ " SRC_URI[md5sum] = "01710b6925a8a5ffe1a41b8b512ebd69" SRC_URI[sha256sum] = "7e8e84cb14d2173beaca4d4cb991a14d84a4bef84ec37b2276bc363f45c52ef8" UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/ntop/files/ntop/Stable" -inherit autotools-brokensep useradd pythonnative pkgconfig systemd +inherit autotools-brokensep useradd python3native pkgconfig systemd -DEPENDS = "geoip rrdtool python zlib libpcap gdbm" +DEPENDS = "geoip rrdtool python3 zlib libpcap gdbm" PACKAGECONFIG ??= "openssl snmp plugins" PACKAGECONFIG[openssl] = "--with-ssl, --without-ssl, openssl, openssl" @@ -34,7 +36,7 @@ PACKAGECONFIG[snmp] = "--enable-snmp=yes NETSNMP=${STAGING_BINDIR_CROSS}/net-snm --disable-snmp,net-snmp," PACKAGECONFIG[plugins] = "--enable-plugins=yes, --disable-plugins, ," -EXTRA_OECONF += "ac_cv_file_aclocal_m4=yes ac_cv_file_depcomp=no" +EXTRA_OECONF += "ac_cv_file_aclocal_m4=yes ac_cv_file_depcomp=no PYTHON_CONFIG=python3-config" do_configure() { cp ${STAGING_DATADIR_NATIVE}/aclocal/libtool.m4 libtool.m4.in diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/ntp.conf b/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/ntp.conf index 676e1864..b5900309 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/ntp.conf +++ b/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/ntp.conf @@ -14,4 +14,8 @@ driftfile /var/lib/ntp/drift server 127.127.1.0 fudge 127.127.1.0 stratum 14 # Defining a default security setting -restrict default +restrict -4 default notrap nomodify nopeer noquery +restrict -6 default notrap nomodify nopeer noquery + +restrict 127.0.0.1 # allow local host +restrict ::1 # allow local host diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch b/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch deleted file mode 100644 index 58e71c3b..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- ntp-4.2.8p12.original/scripts/build/mkver.in 2018-11-12 14:06:49.333020430 +1300 -+++ ntp-4.2.8p12/scripts/build/mkver.in 2018-11-12 14:15:04.947480167 +1300 -@@ -15,7 +15,12 @@ - *) ConfStr="${ConfStr}-@VER_SUFFIX@" ;; - esac - --ConfStr="$ConfStr `LC_TIME=C TZ=UTC date`" -+if [ -n "$SOURCE_DATE_EPOCH" ]; then -+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date -d@$SOURCE_DATE_EPOCH 2>/dev/null`" || -+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date -r $SOURCE_DATE_EPOCH`" -+else -+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date`" -+fi - - if [ ! -f .version ]; then - echo 0 > .version diff --git a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p13.bb b/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p15.bb index dc18a602..7e168825 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p13.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p15.bb @@ -6,14 +6,13 @@ or satellite receiver or modem." HOMEPAGE = "http://support.ntp.org" SECTION = "net" LICENSE = "NTP" -LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4cee33257467509e498f4cd9a6a4bd53" +LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4190b39435611e92a4da74e682623f19" DEPENDS = "libevent" SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.gz \ file://ntp-4.2.4_p6-nano.patch \ file://reproducibility-fixed-path-to-posix-shell.patch \ - file://reproducibility-respect-source-date-epoch.patch \ file://ntpd \ file://ntp.conf \ file://ntpdate \ @@ -25,8 +24,7 @@ SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.g file://ntpd.list \ " -SRC_URI[md5sum] = "ea040ab9b4ca656b5229b89d6b822f13" -SRC_URI[sha256sum] = "288772cecfcd9a53694ffab108d1825a31ba77f3a8466b0401baeca3bc232a38" +SRC_URI[sha256sum] = "f65840deab68614d5d7ceb2d0bb9304ff70dcdedd09abb79754a87536b849c19" inherit autotools update-rc.d useradd systemd pkgconfig @@ -105,7 +103,7 @@ do_install_append() { rmdir --ignore-fail-on-non-empty ${D}${libexecdir} } -PACKAGES += "ntpdate sntp ntpq ${PN}-tickadj ${PN}-utils" +PACKAGES += "ntpdate sntp ntpdc ntpq ${PN}-tickadj ${PN}-utils" # NOTE: you don't need ntpdate, use "ntpd -q -g -x" # ntp originally includes tickadj. It's split off for inclusion in small firmware images on platforms @@ -117,8 +115,8 @@ RDEPENDS_${PN} += "libgcc" RPROVIDES_${PN}-utils = "${PN}-bin" RREPLACES_${PN}-utils = "${PN}-bin" RCONFLICTS_${PN}-utils = "${PN}-bin" -# ntpq was split out of ntp-utils -RDEPENDS_${PN}-utils = "ntpq" +# ntpdc and ntpq were split out of ntp-utils +RDEPENDS_${PN}-utils = "ntpdc ntpq" SYSTEMD_PACKAGES = "${PN} ntpdate sntp" SYSTEMD_SERVICE_${PN} = "ntpd.service" @@ -136,9 +134,9 @@ RCONFLICTS_ntpdate += "ntpdate-systemd" RSUGGESTS_${PN} = "iana-etc" -FILES_${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \ +FILES_${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd \ ${NTP_USER_HOME} \ - ${systemd_unitdir}/ntp-units.d/60-ntpd.list ${libexecdir}\ + ${systemd_unitdir}/ntp-units.d/60-ntpd.list \ " FILES_${PN}-tickadj = "${sbindir}/tickadj" FILES_${PN}-utils = "${sbindir} ${datadir}/ntp/lib" @@ -153,6 +151,7 @@ FILES_sntp = "${sbindir}/sntp \ ${sysconfdir}/default/sntp \ ${systemd_unitdir}/system/sntp.service \ " +FILES_ntpdc = "${sbindir}/ntpdc" FILES_ntpq = "${sbindir}/ntpq" CONFFILES_${PN} = "${sysconfdir}/ntp.conf" diff --git a/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket new file mode 100644 index 00000000..a8ae74fb --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Network Performance Testing Server Activation Socket + +[Socket] +ListenStream=5000 +Accept=true + +[Install] +WantedBy=sockets.target diff --git a/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service new file mode 100644 index 00000000..b778e855 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service @@ -0,0 +1,8 @@ +[Unit] +Description=Network Performance Testing Server +After=local-fs.target + +[Service] +User=nobody +ExecStart=/usr/bin/nuttcp -S +StandardInput=socket diff --git a/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_7.2.1.bb b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb index 9430add4..193caf3c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_7.2.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb @@ -1,6 +1,3 @@ -# Copyright (C) 2013 Khem Raj <raj.khem@gmail.com> -# Released under the MIT license (see COPYING.MIT for the terms) - SUMMARY = "network performance measurement tool" DESCRIPTION = "nuttcp is a network performance measurement tool intended for use by network \ and system managers. Its most basic usage is to determine the raw TCP (or UDP) \ @@ -11,11 +8,15 @@ number of bytes." HOMEPAGE = "http://www.nuttcp.net/Welcome%20Page.html" LICENSE = "GPL-2.0" SECTION = "net" -LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=ae7045c3c3616092e07d87f04ba0d960" +LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=496a7c0bb83c07ff528d226bf85e05c5" + +UPSTREAM_CHECK_URI = "https://www.nuttcp.net/nuttcp/beta/" -SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c" -SRC_URI[md5sum] = "1ebf4a08bad2a295a8155f02995e8754" -SRC_URI[sha256sum] = "c6e33810ccce67260f8d5d627f60e429d44f532365c58ed5673d035e2a59c4db" +SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c \ + file://nuttcp@.service \ + file://nuttcp.socket" +SRC_URI[md5sum] = "d3c92c4d2f261221193c3726c1b9a42f" +SRC_URI[sha256sum] = "8c5595bcd27c2fd66831be74c390df078cfb1870aa427f2511ac2586d236c8a1" S = "${WORKDIR}" @@ -25,5 +26,13 @@ do_compile () { do_install () { install -d ${D}${bindir} + install -d ${D}${systemd_system_unitdir} install -m 0755 nuttcp ${D}${bindir} + install -m 0644 ${WORKDIR}/nuttcp@.service ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/nuttcp.socket ${D}${systemd_system_unitdir} } + +FILES_${PN} += " \ + ${bindir} \ + ${systemd_system_unitdir} \ +" diff --git a/external/meta-openembedded/meta-networking/recipes-support/nvmetcli/nvmetcli_0.7.bb b/external/meta-openembedded/meta-networking/recipes-support/nvmetcli/nvmetcli_0.7.bb new file mode 100644 index 00000000..31f55e35 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/nvmetcli/nvmetcli_0.7.bb @@ -0,0 +1,39 @@ +SUMMARY = "NVM-Express target user space configuration utility." +DESCRIPTION = "This package contains the command line interface to the NVMe \ +over Fabrics nvmet in the Linux kernel. It allows configuring the nvmet \ +interactively as well as saving / restoring the configuration to / from a json \ +file." +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://COPYING;md5=1dece7821bf3fd70fe1309eaa37d52a2" + +inherit systemd setuptools3 + +# nvmet service will start and stop the NVMe Target configuration on boot and +# shutdown from a saved NVMe Target configuration in the /etc/nvmet/config.json +# file. This file is not installed by default since the configuration will vary +# on real systems. Example configuration files are provided by including the +# nvmetcli-examples package. +SYSTEMD_SERVICE_${PN} = "nvmet.service" + +SYSTEMD_AUTO_ENABLE ?= "disable" + +RDEPENDS_${PN} += "python3 python3-six python3-pyparsing python3-configshell-fb" + +SRCREV = "0a6b088db2dc2e5de11e6f23f1e890e4b54fee64" +SRC_URI = "git://git.infradead.org/users/hch/nvmetcli.git;branch=master" + +S = "${WORKDIR}/git" + +do_install_append() { + # Install example configuration scripts. + install -d ${D}${datadir}/nvmet + cp -fr ${S}/examples ${D}${datadir}/nvmet/ + + # Install systemd service file. + install -d ${D}${systemd_unitdir}/system + cp -fr ${S}/nvmet.service ${D}${systemd_unitdir}/system +} + +# Examples package contains example json files used to configure nvmet. +PACKAGES += "${PN}-examples" +FILES_${PN}-examples = "${datadir}/nvmet/examples/*" diff --git a/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch b/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch deleted file mode 100644 index fbdc4e91..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch +++ /dev/null @@ -1,38 +0,0 @@ -From e0d86318227a23f00cf0f6639a6685bb9f5771a1 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 12 Dec 2017 09:42:19 -0800 -Subject: [PATCH] util.h: endian.h is available on musl on linux - -just checking for glibc alone is not enough since -it excludes musl, therefore check for platform -being linux as well - -Fixes build issues - -include/libisns/util.h:114:12: fatal error: sys/endian.h: No such file or directory - # include <sys/endian.h> - ^~~~~~~~~~~~~~ - -Upstream-Status: Submitted - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - include/libisns/util.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/libisns/util.h b/include/libisns/util.h -index 9a2bd13..6cc1a1b 100644 ---- a/include/libisns/util.h -+++ b/include/libisns/util.h -@@ -100,7 +100,7 @@ enum { - * There's no htonll yet - */ - #ifndef htonll --# ifdef __GLIBC__ -+# if defined(__GLIBC__) || defined(__linux__) - # include <endian.h> - # include <byteswap.h> - # if __BYTE_ORDER == __BIG_ENDIAN --- -2.15.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.98.bb b/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.99.bb index 5e64f893..a03b92f5 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.98.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.99.bb @@ -13,11 +13,9 @@ SECTION = "net" DEPENDS = "openssl" -SRC_URI = "git://github.com/open-iscsi/open-isns \ - file://0001-util.h-endian.h-is-available-on-musl-on-linux.patch \ - " +SRC_URI = "git://github.com/open-iscsi/open-isns" -SRCREV = "e84374ce7d1f5fc58a4c0fc751e075b2cc752c34" +SRCREV = "cfdbcff867ee580a71bc9c18c3a38a6057df0150" S = "${WORKDIR}/git" diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch deleted file mode 100644 index d4e02be4..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch +++ /dev/null @@ -1,25 +0,0 @@ -Do not install pyc and pyo for python module - -Upstream-Status: Inappropriate [embedded specific] - -Signed-off-by: Yi Zhao <yi.zhao@windriver.com> ---- - swig/python/Makefile.am | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/swig/python/Makefile.am b/swig/python/Makefile.am -index da95a81..97a62bf 100644 ---- a/swig/python/Makefile.am -+++ b/swig/python/Makefile.am -@@ -33,8 +33,6 @@ CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc - install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo - $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR) - $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)" - if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \ - $(INSTALL) -d $(DESTDIR)$(bindir); \ - $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\ --- -1.9.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch index 449142fc..24348842 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch @@ -1,18 +1,23 @@ -Author: Aws Ismail <aws.ismail@windriver.com> -Date: Thu Jun 7 16:00:13 2012 -0400 +From 7854c60c92243adb14ea89e16fc226d2e47dd4f9 Mon Sep 17 00:00:00 2001 +From: Aws Ismail <aws.ismail@windriver.com> +Date: Thu, 7 Jun 2012 16:00:13 -0400 +Subject: [PATCH] Fix symlink install error in cmdlang - This patch fixes the error during the install stage when - creating a symbolic link for opeipmish in openipmi/cmdlang - - Upstream-Status: Pending - - Signed-off-by: Aws Ismail <aws.ismail@windriver.com> +This patch fixes the error during the install stage when +creating a symbolic link for opeipmish in openipmi/cmdlang -Index: OpenIPMI-2.0.24/cmdlang/Makefile.am -=================================================================== ---- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am -+++ OpenIPMI-2.0.24/cmdlang/Makefile.am -@@ -35,6 +35,7 @@ openipmish_LDADD = libOpenIPMIcmdlang.l +Upstream-Status: Pending + +Signed-off-by: Aws Ismail <aws.ismail@windriver.com> +--- + cmdlang/Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am +index 0ca3827..d9a941f 100644 +--- a/cmdlang/Makefile.am ++++ b/cmdlang/Makefile.am +@@ -35,6 +35,7 @@ openipmish_LDADD = libOpenIPMIcmdlang.la \ # compatability. install-data-local: rm -f $(DESTDIR)$(bindir)/ipmish diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch index 082511a6..61b39995 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch @@ -1,12 +1,25 @@ +From 4f41e090e33a00117a27f0c77b6338fb8b495f37 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 2 Jun 2017 21:58:32 -0700 +Subject: [PATCH] openipmi: Fix build with musl + include sys/types.h for u_int32_t ui.c:340:5: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'? u_int32_t addr; ^~~~~~~~~ -Index: OpenIPMI-2.0.24/ui/ui.c -=================================================================== ---- OpenIPMI-2.0.24.orig/ui/ui.c -+++ OpenIPMI-2.0.24/ui/ui.c + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + ui/ui.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/ui/ui.c b/ui/ui.c +index 529ff22..066d118 100644 +--- a/ui/ui.c ++++ b/ui/ui.c @@ -42,6 +42,7 @@ #include <fcntl.h> #include <time.h> diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch index 51a398ba..c4559c97 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch @@ -1,3 +1,6 @@ +From 6542ebe7a0d37dee8e9afb856feb8f6c3d334632 Mon Sep 17 00:00:00 2001 +From: Jackie Huang <jackie.huang@windriver.com> +Date: Mon, 29 Dec 2014 18:16:04 +0800 Subject: [PATCH] ipmi-init: fix the arguments The functions success/failure/warning defined in /etc/init.d/functions @@ -12,7 +15,7 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com> 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ipmi.init b/ipmi.init -index 2ebcd94..d8161c5 100644 +index ea10b11..aac9f83 100644 --- a/ipmi.init +++ b/ipmi.init @@ -45,17 +45,17 @@ elif [ -r /etc/init.d/functions ]; then @@ -36,6 +39,4 @@ index 2ebcd94..d8161c5 100644 echo ;; *) --- -1.9.1 diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch index 1fa68f9b..858adc50 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch @@ -1,16 +1,19 @@ -Author: Aws Ismail <aws.ismail@windriver.com> -Date: Thu Jun 7 12:28:34 2012 -0400 +From a6ffa3939a3ab2ad6a8d277cd8292b7dad6469c6 Mon Sep 17 00:00:00 2001 +From: Aws Ismail <aws.ismail@windriver.com> +Date: Thu, 7 Jun 2012 12:28:34 -0400 +Subject: [PATCH] Do not build openipmigui man page - This patch was carried over from WRL4.3 (openipmi v2.0.16) - - It was updated for openipmi v2.0.19 - - Disable making openipmigui man page since we don't need it - - Upstream-Status: Pending - - Signed-off-by: Aws Ismail <aws.ismail@windriver.com> - Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +This patch was carried over from WRL4.3 (openipmi v2.0.16) +It was updated for openipmi v2.0.19 +Disable making openipmigui man page since we don't need it + +Upstream-Status: Pending + +Signed-off-by: Aws Ismail <aws.ismail@windriver.com> +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + man/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/man/Makefile.am b/man/Makefile.am index 632f55b..5ce79f5 100644 diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch index 83485a9e..ce37d5eb 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch @@ -1,4 +1,4 @@ -From aa0dc0783a6ff5fb56c914b640836223e3c192bb Mon Sep 17 00:00:00 2001 +From 6395659ca6d64b20bf78bb640c2cc523d6c1d9c2 Mon Sep 17 00:00:00 2001 From: Jackie Huang <jackie.huang@windriver.com> Date: Mon, 29 Dec 2014 18:16:04 +0800 Subject: [PATCH] remove host path from la_LDFLAGS @@ -7,17 +7,15 @@ Upstream-Status: Inappropriate [ cross compile specific ] Signed-off-by: Jackie Huang <jackie.huang@windriver.com> --- - cmdlang/Makefile.am | 2 +- - glib/Makefile.am | 4 ++-- - tcl/Makefile.am | 2 +- - unix/Makefile.am | 4 ++-- - 4 files changed, 6 insertions(+), 6 deletions(-) + cmdlang/Makefile.am | 3 +-- + unix/Makefile.am | 6 ++---- + 2 files changed, 3 insertions(+), 6 deletions(-) -Index: OpenIPMI-2.0.24/cmdlang/Makefile.am -=================================================================== ---- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am -+++ OpenIPMI-2.0.24/cmdlang/Makefile.am -@@ -15,8 +15,7 @@ libOpenIPMIcmdlang_la_SOURCES = cmdlang. +diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am +index d9a941f..21b9531 100644 +--- a/cmdlang/Makefile.am ++++ b/cmdlang/Makefile.am +@@ -15,8 +15,7 @@ libOpenIPMIcmdlang_la_SOURCES = cmdlang.c cmd_domain.c cmd_entity.c cmd_mc.c \ libOpenIPMIcmdlang_la_LIBADD = -lm \ $(top_builddir)/utils/libOpenIPMIutils.la \ $(top_builddir)/lib/libOpenIPMI.la @@ -27,11 +25,11 @@ Index: OpenIPMI-2.0.24/cmdlang/Makefile.am bin_PROGRAMS = openipmish -Index: OpenIPMI-2.0.24/unix/Makefile.am -=================================================================== ---- OpenIPMI-2.0.24.orig/unix/Makefile.am -+++ OpenIPMI-2.0.24/unix/Makefile.am -@@ -10,14 +10,12 @@ lib_LTLIBRARIES = libOpenIPMIposix.la li +diff --git a/unix/Makefile.am b/unix/Makefile.am +index 5128839..bd0f897 100644 +--- a/unix/Makefile.am ++++ b/unix/Makefile.am +@@ -10,14 +10,12 @@ lib_LTLIBRARIES = libOpenIPMIposix.la libOpenIPMIpthread.la libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c libOpenIPMIpthread_la_LIBADD = -lpthread $(GDBM_LIB) \ $(top_builddir)/utils/libOpenIPMIutils.la $(RT_LIB) diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch b/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch deleted file mode 100644 index 38940759..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch +++ /dev/null @@ -1,26 +0,0 @@ -openipmi load swig/python/.libs/_OpenIPMI.so to create .pyc and .pyo files. -It fails when multilib is enable: - -| ImportError: .../lib32-openipmi/2.0.25-r0/OpenIPMI-2.0.25/swig/python/.libs/_OpenIPMI.so: wrong ELF class: ELFCLASS32 - -Don't compile and install .pyc and .pyo files to fix the failure. - -Upstream-Status: Inappropriate [OE specific] - -Signed-off-by: Kai Kang <kai.kang@windriver.com> -diff --git a/swig/python/openipmigui/Makefile.am b/swig/python/openipmigui/Makefile.am -index 570e7b9..88258bf 100644 ---- a/swig/python/openipmigui/Makefile.am -+++ b/swig/python/openipmigui/Makefile.am -@@ -34,9 +34,9 @@ localcopy: - fi \ - done - --all-local: localcopy $(PYC_FILES) $(PYO_FILES) -+all-local: localcopy - --install-exec-local: $(EXTRA_DIST) $(PYC_FILES) $(PYO_FILES) -+install-exec-local: $(EXTRA_DIST) - $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR)/openipmigui - $(INSTALL_DATA) $^ $(DESTDIR)$(PYTHON_INSTALL_DIR)/openipmigui - diff --git a/external/meta-openembedded/meta-networking/recipes-support/openipmi/openipmi_2.0.25.bb b/external/meta-openembedded/meta-networking/recipes-support/openipmi/openipmi_2.0.29.bb index d28ebd48..85634a70 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openipmi/openipmi_2.0.25.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/openipmi/openipmi_2.0.29.bb @@ -11,8 +11,9 @@ DEPENDS = " \ net-snmp \ openssl \ popt \ - python \ + python3 \ swig-native \ + readline \ " LICENSE = "GPLv2 & LGPLv2.1 & BSD" @@ -27,22 +28,21 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/openipmi/OpenIPMI-${PV}.tar.gz \ file://openipmi-no-openipmigui-man.patch \ file://openipmi-remove-host-path-from-la_LDFLAGS.patch \ file://ipmi-init-fix-the-arguments.patch \ - file://do-not-install-pyc-and-pyo.patch \ file://include_sys_types.patch \ - file://openipmigui-not-compile-pyc-pyo.patch \ file://openipmi-helper \ file://ipmi.service \ " S = "${WORKDIR}/OpenIPMI-${PV}" -SRC_URI[md5sum] = "1461ac4d78fc516646fd0a6e605a8b05" -SRC_URI[sha256sum] = "f0f1a0ec732409930b7a31a6daa6cf39b585f52059b62a5f092b7ece21aa75a5" -inherit autotools-brokensep pkgconfig pythonnative perlnative update-rc.d systemd +SRC_URI[md5sum] = "46b452e95d69c92e4172b3673ed88d52" +SRC_URI[sha256sum] = "2244124579afb14e569f34393e9ac61e658a28b6ffa8e5c0d2c1c12a8ce695cd" + +inherit autotools-brokensep pkgconfig python3native perlnative update-rc.d systemd cpan-base EXTRA_OECONF = "--disable-static \ --with-perl='${STAGING_BINDIR_NATIVE}/perl-native/perl' \ - --with-python='${STAGING_BINDIR_NATIVE}/python-native/python' \ + --with-python='${STAGING_BINDIR_NATIVE}/python3-native/python3' \ --with-pythoninstall='${PYTHON_SITEPACKAGES_DIR}' \ --with-glibver=2.0" @@ -50,6 +50,7 @@ PACKAGECONFIG ??= "gdbm" PACKAGECONFIG[gdbm] = "ac_cv_header_gdbm_h=yes,ac_cv_header_gdbm_h=no,gdbm," PACKAGES += "${PN}-perl ${PN}-python" +PRIVATE_LIBS_${PN}-perl = "libOpenIPMI.so.0" FILES_${PN}-perl = " \ ${libdir}/perl/vendor_perl/*/OpenIPMI.pm \ @@ -78,6 +79,7 @@ do_configure () { echo "SAL: STAGING_INCDIR_NATIVE = $STAGING_INCDIR_NATIVE" echo "SAL: libdir = $libdir" sed -i -e "/^PERL_CFLAGS/s:-I/usr/local/include:-I${STAGING_INCDIR_NATIVE}:g" $i + sed -i -e "/^PERL_CFLAGS/s:-I .* :-I ${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}/CORE :g" $i sed -i -e "/^PERL_INSTALL_DIR/s:^PERL_INSTALL_DIR = .*:PERL_INSTALL_DIR = ${libdir}/perl/vendor_perl/$perl_ver:g" $i done } diff --git a/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn b/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn index a3cd6a2f..e5af4b23 100755 --- a/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn +++ b/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn @@ -4,6 +4,7 @@ # <rob@mars.org>, edited by iwj and cs # Modified for openvpn by Alberto Gonzalez Iniesta <agi@agi.as> # Modified for restarting / starting / stopping single tunnels by Richard Mueller <mueller@teamix.net> +# Modified for respecting pid file on service start by Fabian Klemp <fabian.klemp@axino-group.com> test $DEBIAN_SCRIPT_DEBUG && set -v -x @@ -14,10 +15,17 @@ test -d $CONFIG_DIR || exit 0 start_vpn () { modprobe tun >/dev/null 2>&1 || true - $DAEMON --daemon --writepid /var/run/openvpn.$NAME.pid \ - --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || echo -n " FAILED->" + start-stop-daemon --start --quiet --pidfile /var/run/openvpn.$NAME.pid \ + --exec $DAEMON -- \ + --daemon --writepid /var/run/openvpn.$NAME.pid \ + --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || rc="$?" + case $rc in + 1) echo -n " ALREADY STARTED->";; + 3) echo -n " FAILED->";; + esac echo -n " $NAME" } + stop_vpn () { kill `cat $PIDFILE` || true rm $PIDFILE diff --git a/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb b/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.9.bb index 84fd467c..529e3912 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.9.bb @@ -1,5 +1,5 @@ SUMMARY = "A full-featured SSL VPN solution via tun device." -HOMEPAGE = "http://openvpn.sourceforge.net" +HOMEPAGE = "https://openvpn.net/" SECTION = "net" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=7aee596ed2deefe3e8a861e24292abba" @@ -12,8 +12,10 @@ SRC_URI = "http://swupdate.openvpn.org/community/releases/${BP}.tar.gz \ file://openvpn@.service \ file://openvpn-volatile.conf" -SRC_URI[md5sum] = "971d57e29b78b4b902eb2f4aae2f05a7" -SRC_URI[sha256sum] = "738dbd37fcf8eb9382c53628db22258c41ba9550165519d9200e8bebaef4cbe2" +UPSTREAM_CHECK_URI = "https://openvpn.net/community-downloads" + +SRC_URI[md5sum] = "52863fa9b98e5a3d7f8bec1d5785a2ba" +SRC_URI[sha256sum] = "46b268ef88e67ca6de2e9f19943eb9e5ac8544e55f5c1f3af677298d03e64b6e" SYSTEMD_SERVICE_${PN} += "openvpn@loopback-server.service openvpn@loopback-client.service" SYSTEMD_AUTO_ENABLE = "disable" diff --git a/external/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb b/external/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb index 4ed3ed1e..29499d6d 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb @@ -2,8 +2,8 @@ SUMMARY = "PHY interface tool for Linux" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://LICENSE;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0" -PV = "1.0.1+git${SRCPV}" -SRCREV = "3149bfdb4f513e2f0da0a7d0bc5d0873578696f2" +PV = "2+git${SRCPV}" +SRCREV = "8882328c08ba2efb13c049812098f1d0cb8adf0c" SRC_URI = "git://github.com/wkz/phytool.git" S = "${WORKDIR}/git" diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch index 4b595613..feed0213 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch @@ -14,14 +14,67 @@ Fixes errors | cmake_install.cmake:48 (include) Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Update for version 26.1. Remove more man files which can no be built. + +Signed-off-by: Kai Kang <kai.kang@windriver.com> --- - libibumad/man/CMakeLists.txt | 1 - - libibverbs/man/CMakeLists.txt | 15 --------------- - providers/mlx5/man/CMakeLists.txt | 1 - - 3 files changed, 17 deletions(-) + infiniband-diags/man/CMakeLists.txt | 34 ------------------- + libibumad/man/CMakeLists.txt | 2 -- + libibverbs/man/CMakeLists.txt | 52 ----------------------------- + librdmacm/man/CMakeLists.txt | 2 -- + providers/efa/man/CMakeLists.txt | 2 -- + providers/mlx4/man/CMakeLists.txt | 1 - + providers/mlx5/man/CMakeLists.txt | 65 ------------------------------------- + 7 files changed, 158 deletions(-) +diff --git a/infiniband-diags/man/CMakeLists.txt b/infiniband-diags/man/CMakeLists.txt +index 1f1f91c9..094a389f 100644 +--- a/infiniband-diags/man/CMakeLists.txt ++++ b/infiniband-diags/man/CMakeLists.txt +@@ -46,40 +46,6 @@ rdma_rst_common( + ) + + rdma_man_pages( +- check_lft_balance.8.in.rst +- dump_fts.8.in.rst +- ibaddr.8.in.rst +- ibcacheedit.8.in.rst +- ibccconfig.8.in.rst +- ibccquery.8.in.rst +- ibfindnodesusing.8.in.rst +- ibhosts.8.in.rst +- ibidsverify.8.in.rst +- iblinkinfo.8.in.rst +- ibnetdiscover.8.in.rst +- ibnodes.8.in.rst +- ibping.8.in.rst +- ibportstate.8.in.rst +- ibqueryerrors.8.in.rst +- ibroute.8.in.rst +- ibrouters.8.in.rst +- ibstat.8.in.rst +- ibstatus.8.in.rst +- ibswitches.8.in.rst +- ibsysstat.8.in.rst +- ibtracert.8.in.rst +- infiniband-diags.8.in.rst +- perfquery.8.in.rst +- saquery.8.in.rst +- sminfo.8.in.rst +- smpdump.8.in.rst +- smpquery.8.in.rst +- vendstat.8.in.rst +- ) +- +-rdma_alias_man_pages( +- dump_fts.8 dump_lfts.8 +- dump_fts.8 dump_mfts.8 + ) + + if (ENABLE_IBDIAGS_COMPAT) diff --git a/libibumad/man/CMakeLists.txt b/libibumad/man/CMakeLists.txt -index 185584a0..ac45a4e9 100644 +index 185584a0..857a4b8b 100644 --- a/libibumad/man/CMakeLists.txt +++ b/libibumad/man/CMakeLists.txt @@ -15,7 +15,6 @@ rdma_man_pages( @@ -32,19 +85,34 @@ index 185584a0..ac45a4e9 100644 umad_open_port.3 umad_poll.3 umad_recv.3 +@@ -38,5 +37,4 @@ rdma_alias_man_pages( + umad_class_str.3 umad_method_str.3 + umad_get_ca.3 umad_release_ca.3 + umad_get_port.3 umad_release_port.3 +- umad_init.3 umad_done.3 + ) diff --git a/libibverbs/man/CMakeLists.txt b/libibverbs/man/CMakeLists.txt -index 86dd49de..b54675be 100644 +index e1d5edf8..92c68611 100644 --- a/libibverbs/man/CMakeLists.txt +++ b/libibverbs/man/CMakeLists.txt -@@ -5,7 +5,6 @@ rdma_man_pages( +@@ -1,24 +1,18 @@ + rdma_man_pages( +- ibv_advise_mr.3.md + ibv_alloc_dm.3 + ibv_alloc_mw.3 +- ibv_alloc_null_mr.3.md + ibv_alloc_parent_domain.3 ibv_alloc_pd.3 ibv_alloc_td.3 ibv_asyncwatch.1 +- ibv_attach_counters_point_flow.3.md - ibv_attach_mcast.3.md ibv_bind_mw.3 ibv_create_ah.3 ibv_create_ah_from_wc.3 -@@ -14,7 +13,6 @@ rdma_man_pages( + ibv_create_comp_channel.3 +- ibv_create_counters.3.md + ibv_create_cq.3 ibv_create_cq_ex.3 ibv_modify_cq.3 ibv_create_flow.3 @@ -52,7 +120,7 @@ index 86dd49de..b54675be 100644 ibv_create_qp.3 ibv_create_qp_ex.3 ibv_create_rwq_ind_table.3 -@@ -23,15 +21,9 @@ rdma_man_pages( +@@ -27,16 +21,8 @@ rdma_man_pages( ibv_create_wq.3 ibv_devices.1 ibv_devinfo.1 @@ -61,14 +129,15 @@ index 86dd49de..b54675be 100644 ibv_get_async_event.3 ibv_get_cq_event.3 - ibv_get_device_guid.3.md - ibv_get_device_list.3 +- ibv_get_device_list.3.md - ibv_get_device_name.3.md +- ibv_get_pkey_index.3.md - ibv_get_srq_num.3.md - ibv_inc_rkey.3.md ibv_modify_qp.3 ibv_modify_qp_rate_limit.3 ibv_modify_srq.3 -@@ -46,19 +38,12 @@ rdma_man_pages( +@@ -51,24 +37,15 @@ rdma_man_pages( ibv_post_srq_recv.3 ibv_query_device.3 ibv_query_device_ex.3 @@ -81,6 +150,7 @@ index 86dd49de..b54675be 100644 - ibv_rate_to_mbps.3.md - ibv_rate_to_mult.3.md ibv_rc_pingpong.1 +- ibv_read_counters.3.md ibv_reg_mr.3 - ibv_req_notify_cq.3.md - ibv_rereg_mr.3.md @@ -88,16 +158,184 @@ index 86dd49de..b54675be 100644 ibv_srq_pingpong.1 ibv_uc_pingpong.1 ibv_ud_pingpong.1 +- ibv_wr_post.3.md + ibv_xsrq_pingpong.1 + ) + rdma_alias_man_pages( +@@ -79,47 +56,18 @@ rdma_alias_man_pages( + ibv_alloc_mw.3 ibv_dealloc_mw.3 + ibv_alloc_pd.3 ibv_dealloc_pd.3 + ibv_alloc_td.3 ibv_dealloc_td.3 +- ibv_attach_mcast.3 ibv_detach_mcast.3 + ibv_create_ah.3 ibv_destroy_ah.3 + ibv_create_ah_from_wc.3 ibv_init_ah_from_wc.3 + ibv_create_comp_channel.3 ibv_destroy_comp_channel.3 +- ibv_create_counters.3 ibv_destroy_counters.3 + ibv_create_cq.3 ibv_destroy_cq.3 + ibv_create_flow.3 ibv_destroy_flow.3 +- ibv_create_flow_action.3 ibv_destroy_flow_action.3 +- ibv_create_flow_action.3 ibv_modify_flow_action.3 + ibv_create_qp.3 ibv_destroy_qp.3 + ibv_create_rwq_ind_table.3 ibv_destroy_rwq_ind_table.3 + ibv_create_srq.3 ibv_destroy_srq.3 + ibv_create_wq.3 ibv_destroy_wq.3 +- ibv_event_type_str.3 ibv_node_type_str.3 +- ibv_event_type_str.3 ibv_port_state_str.3 + ibv_get_async_event.3 ibv_ack_async_event.3 + ibv_get_cq_event.3 ibv_ack_cq_events.3 +- ibv_get_device_list.3 ibv_free_device_list.3 + ibv_open_device.3 ibv_close_device.3 + ibv_open_xrcd.3 ibv_close_xrcd.3 +- ibv_rate_to_mbps.3 mbps_to_ibv_rate.3 +- ibv_rate_to_mult.3 mult_to_ibv_rate.3 + ibv_reg_mr.3 ibv_dereg_mr.3 +- ibv_wr_post.3 ibv_wr_abort.3 +- ibv_wr_post.3 ibv_wr_complete.3 +- ibv_wr_post.3 ibv_wr_start.3 +- ibv_wr_post.3 ibv_wr_atomic_cmp_swp.3 +- ibv_wr_post.3 ibv_wr_atomic_fetch_add.3 +- ibv_wr_post.3 ibv_wr_bind_mw.3 +- ibv_wr_post.3 ibv_wr_local_inv.3 +- ibv_wr_post.3 ibv_wr_rdma_read.3 +- ibv_wr_post.3 ibv_wr_rdma_write.3 +- ibv_wr_post.3 ibv_wr_rdma_write_imm.3 +- ibv_wr_post.3 ibv_wr_send.3 +- ibv_wr_post.3 ibv_wr_send_imm.3 +- ibv_wr_post.3 ibv_wr_send_inv.3 +- ibv_wr_post.3 ibv_wr_send_tso.3 +- ibv_wr_post.3 ibv_wr_set_inline_data.3 +- ibv_wr_post.3 ibv_wr_set_inline_data_list.3 +- ibv_wr_post.3 ibv_wr_set_sge.3 +- ibv_wr_post.3 ibv_wr_set_sge_list.3 +- ibv_wr_post.3 ibv_wr_set_ud_addr.3 +- ibv_wr_post.3 ibv_wr_set_xrc_srqn.3 + ) +diff --git a/librdmacm/man/CMakeLists.txt b/librdmacm/man/CMakeLists.txt +index 2d1efbff..d016c926 100644 +--- a/librdmacm/man/CMakeLists.txt ++++ b/librdmacm/man/CMakeLists.txt +@@ -20,7 +20,6 @@ rdma_man_pages( + rdma_destroy_qp.3 + rdma_destroy_srq.3 + rdma_disconnect.3 +- rdma_establish.3.md + rdma_event_str.3 + rdma_free_devices.3 + rdma_get_cm_event.3 +@@ -33,7 +32,6 @@ rdma_man_pages( + rdma_get_send_comp.3 + rdma_get_src_port.3 + rdma_getaddrinfo.3 +- rdma_init_qp_attr.3.md + rdma_join_multicast.3 + rdma_join_multicast_ex.3 + rdma_leave_multicast.3 +diff --git a/providers/efa/man/CMakeLists.txt b/providers/efa/man/CMakeLists.txt +index d6a4f57b..376f293d 100644 +--- a/providers/efa/man/CMakeLists.txt ++++ b/providers/efa/man/CMakeLists.txt +@@ -1,4 +1,2 @@ + rdma_man_pages( +- efadv_create_driver_qp.3.md +- efadv.7.md + ) +diff --git a/providers/mlx4/man/CMakeLists.txt b/providers/mlx4/man/CMakeLists.txt +index 3df77caf..99a75101 100644 +--- a/providers/mlx4/man/CMakeLists.txt ++++ b/providers/mlx4/man/CMakeLists.txt +@@ -1,6 +1,5 @@ + rdma_man_pages( + mlx4dv_init_obj.3 + mlx4dv_query_device.3 +- mlx4dv_set_context_attr.3.md + mlx4dv.7 + ) diff --git a/providers/mlx5/man/CMakeLists.txt b/providers/mlx5/man/CMakeLists.txt -index cdc7115e..876b6fcf 100644 +index 0bd9eba1..876b6fcf 100644 --- a/providers/mlx5/man/CMakeLists.txt +++ b/providers/mlx5/man/CMakeLists.txt -@@ -1,5 +1,4 @@ +@@ -1,81 +1,7 @@ rdma_man_pages( +- mlx5dv_alloc_dm.3.md +- mlx5dv_alloc_var.3.md +- mlx5dv_create_cq.3.md +- mlx5dv_create_flow.3.md +- mlx5dv_create_flow_action_modify_header.3.md +- mlx5dv_create_flow_action_packet_reformat.3.md +- mlx5dv_create_flow_matcher.3.md +- mlx5dv_create_mkey.3.md +- mlx5dv_create_qp.3.md +- mlx5dv_devx_alloc_uar.3.md +- mlx5dv_devx_create_cmd_comp.3.md +- mlx5dv_devx_create_event_channel.3.md +- mlx5dv_devx_get_event.3.md +- mlx5dv_devx_obj_create.3.md +- mlx5dv_devx_qp_modify.3.md +- mlx5dv_devx_query_eqn.3.md +- mlx5dv_devx_subscribe_devx_event.3.md +- mlx5dv_devx_umem_reg.3.md +- mlx5dv_dr_flow.3.md +- mlx5dv_dump.3.md - mlx5dv_flow_action_esp.3.md mlx5dv_get_clock_info.3 mlx5dv_init_obj.3 +- mlx5dv_is_supported.3.md +- mlx5dv_open_device.3.md mlx5dv_query_device.3 + mlx5dv_ts_to_ns.3 +- mlx5dv_wr_post.3.md + mlx5dv.7 + ) +-rdma_alias_man_pages( +- mlx5dv_alloc_var.3 mlx5dv_free_var.3 +- mlx5dv_create_mkey.3 mlx5dv_destroy_mkey.3 +- mlx5dv_devx_alloc_uar.3 mlx5dv_devx_free_uar.3 +- mlx5dv_devx_create_cmd_comp.3 mlx5dv_devx_destroy_cmd_comp.3 +- mlx5dv_devx_create_event_channel.3 mlx5dv_devx_destroy_event_channel.3 +- mlx5dv_devx_create_cmd_comp.3 mlx5dv_devx_get_async_cmd_comp.3 +- mlx5dv_devx_obj_create.3 mlx5dv_devx_general_cmd.3 +- mlx5dv_devx_obj_create.3 mlx5dv_devx_obj_destroy.3 +- mlx5dv_devx_obj_create.3 mlx5dv_devx_obj_query.3 +- mlx5dv_devx_obj_create.3 mlx5dv_devx_obj_query_async.3 +- mlx5dv_devx_obj_create.3 mlx5dv_devx_obj_modify.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_qp_query.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_cq_modify.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_cq_query.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_wq_modify.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_wq_query.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_srq_modify.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_srq_query.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_ind_tbl_modify.3 +- mlx5dv_devx_qp_modify.3 mlx5dv_devx_ind_tbl_query.3 +- mlx5dv_devx_subscribe_devx_event.3 mlx5dv_devx_subscribe_devx_event_fd.3 +- mlx5dv_devx_umem_reg.3 mlx5dv_devx_umem_dereg.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_dest_table.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_dest_ibv_qp.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_dest_vport.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_flow_counter.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_drop.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_flow_meter.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_modify_header.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_packet_reformat.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_create_tag.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_destroy.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_action_modify_flow_meter.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_domain_create.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_domain_destroy.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_domain_sync.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_matcher_create.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_matcher_destroy.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_rule_create.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_rule_destroy.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_table_create.3 +- mlx5dv_dr_flow.3 mlx5dv_dr_table_destroy.3 +- mlx5dv_dump.3 mlx5dv_dump_dr_domain.3 +- mlx5dv_dump.3 mlx5dv_dump_dr_matcher.3 +- mlx5dv_dump.3 mlx5dv_dump_dr_rule.3 +- mlx5dv_dump.3 mlx5dv_dump_dr_table.3 +- mlx5dv_wr_post.3 mlx5dv_wr_set_dc_addr.3 +- mlx5dv_wr_post.3 mlx5dv_qp_ex_from_ibv_qp_ex.3 +-) -- 2.17.1 diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch deleted file mode 100644 index b04c9b72..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch +++ /dev/null @@ -1,29 +0,0 @@ -From f2df1db11f3a9580774300e703b6f53dbcdb28ef Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Fri, 8 Jun 2018 20:17:57 -0700 -Subject: [PATCH] S_IFSOCK is defined in both glibc/musl - -Fixes - -preload.c:1183:46: error: '__S_IFSOCK' undeclared (first use in this function); did you mean 'S_IFSOCK'? - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - librdmacm/preload.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/librdmacm/preload.c b/librdmacm/preload.c -index 0f2aa250..d46beb1b 100644 ---- a/librdmacm/preload.c -+++ b/librdmacm/preload.c -@@ -1180,7 +1180,7 @@ int __fxstat(int ver, int socket, struct stat *buf) - if (fd_get(socket, &fd) == fd_rsocket) { - ret = real.fxstat(ver, socket, buf); - if (!ret) -- buf->st_mode = (buf->st_mode & ~S_IFMT) | __S_IFSOCK; -+ buf->st_mode = (buf->st_mode & ~S_IFMT) | S_IFSOCK; - } else { - ret = real.fxstat(ver, fd, buf); - } diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch deleted file mode 100644 index aa335244..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 65b9a47c07be4611b4fbbcafff1993186bcb0537 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 12 Jun 2018 19:15:52 -0700 -Subject: [PATCH 1/2] include endian.h for htole32 and friends - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - providers/hns/hns_roce_u.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/providers/hns/hns_roce_u.h b/providers/hns/hns_roce_u.h -index bd66c6e7..b07424db 100644 ---- a/providers/hns/hns_roce_u.h -+++ b/providers/hns/hns_roce_u.h -@@ -34,6 +34,7 @@ - #define _HNS_ROCE_U_H - - #include <stddef.h> -+#include <endian.h> - #include <util/compiler.h> - - #include <infiniband/driver.h> --- -2.17.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch deleted file mode 100644 index 347f964e..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 3d9cae15c69c0b3260a024ad5d6802a8d85515a2 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 12 Jun 2018 19:18:24 -0700 -Subject: [PATCH 2/2] Remove unused include for execinfo.h - -Fixes build on musl - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - providers/qedr/qelr_verbs.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/providers/qedr/qelr_verbs.c b/providers/qedr/qelr_verbs.c -index e3b01f28..2ee1c832 100644 ---- a/providers/qedr/qelr_verbs.c -+++ b/providers/qedr/qelr_verbs.c -@@ -54,7 +54,6 @@ - - #include <stdio.h> - #include <stdlib.h> --#include <execinfo.h> - - #define QELR_SQE_ELEMENT_SIZE (sizeof(struct rdma_sq_sge)) - #define QELR_RQE_ELEMENT_SIZE (sizeof(struct rdma_rq_sge)) --- -2.17.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch deleted file mode 100644 index e887f222..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 82486f7e1ee2aa07a5c12cb357834993aa8c1d20 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Fri, 8 Jun 2018 20:19:13 -0700 -Subject: [PATCH] neigh.c: Do not include net/if_packet.h - -This header is glibc specific - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - libibverbs/neigh.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/libibverbs/neigh.c b/libibverbs/neigh.c -index 21177db0..cfc593a0 100644 ---- a/libibverbs/neigh.c -+++ b/libibverbs/neigh.c -@@ -2,7 +2,6 @@ - */ - - #include "config.h" --#include <net/if_packet.h> - #include <linux/netlink.h> - #include <linux/rtnetlink.h> - #include <endian.h> diff --git a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_28.0.bb index 6ad864d1..15fd7ff6 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_28.0.bb @@ -5,14 +5,11 @@ SECTION = "libs" DEPENDS = "libnl" RDEPENDS_${PN} = "bash perl" -SRC_URI = "git://github.com/linux-rdma/rdma-core.git;branch=stable-v18 \ - file://0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch \ - file://0002-neigh.c-Do-not-include-net-if_packet.h.patch \ - file://0001-include-endian.h-for-htole32-and-friends.patch \ - file://0002-Remove-unused-include-for-execinfo.h.patch \ +BRANCH = "stable-v${@d.getVar('PV').split('.')[0]}" +SRC_URI = "git://github.com/linux-rdma/rdma-core.git;branch=${BRANCH} \ file://0001-Remove-man-files-which-cant-be-built.patch \ " -SRCREV = "7844b3fbe5120623d63b29ecb43eb83a61129658" +SRCREV = "f12c953f0864691eacc9fcc4cda489b92ffd5a85" S = "${WORKDIR}/git" #Default Dual License https://github.com/linux-rdma/rdma-core/blob/master/COPYING.md @@ -20,11 +17,26 @@ LICENSE = "BSD-2-Clause | GPLv2" LIC_FILES_CHKSUM = "file://COPYING.BSD_FB;md5=0ec18bae1a9df92c8d6ae01f94a289ae \ file://COPYING.GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263" +EXTRA_OECMAKE = " \ + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=${systemd_system_unitdir} \ + -DCMAKE_INSTALL_PERLDIR=${libdir}/perl5/${@get_perl_version(d)} \ +" FILES_SOLIBSDEV = "" FILES_${PN} += "${libdir}/*" INSANE_SKIP_${PN} += "dev-so" -inherit cmake +inherit cmake cpan-base systemd + +SYSTEMD_SERVICE_${PN} = " \ + srp_daemon.service \ + iwpmd.service \ + ibacm.socket \ + rdma-load-modules@.service \ + srp_daemon_port@.service \ + rdma-hw.target \ + ibacm.service \ +" +SYSTEMD_AUTO_ENABLE = "disable" OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH" diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch index f8eb3ae6..8ca26b51 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch @@ -15,11 +15,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> src/ruli_addr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/src/ruli_addr.c b/src/ruli_addr.c -index 00d5d0d..f1eabae 100644 --- a/src/ruli_addr.c +++ b/src/ruli_addr.c -@@ -415,7 +415,7 @@ int ruli_in_print(FILE *out, const _ruli_addr *addr, int family) +@@ -415,7 +415,7 @@ int ruli_in_print(FILE *out, const _ruli { switch (family) { case PF_INET: @@ -28,6 +26,25 @@ index 00d5d0d..f1eabae 100644 case PF_INET6: return ruli_inet6_print(out, &addr->ipv6); --- -2.13.1 - +--- a/sample/getaddrinfo.c ++++ b/sample/getaddrinfo.c +@@ -174,7 +174,7 @@ static void solve(const char *fullname) + + for (ai = ai_res; ai; ai = ai->ai_next) { + +- printf(fullname); ++ printf("%s", fullname); + + switch (ai->ai_family) { + case PF_INET: +--- a/sample/ruli-getaddrinfo.c ++++ b/sample/ruli-getaddrinfo.c +@@ -176,7 +176,7 @@ static void solve(const char *fullname) + + for (ai = ai_res; ai; ai = ai->ai_next) { + +- printf(fullname); ++ printf("%s", fullname); + + switch (ai->ai_family) { + case PF_INET: diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch new file mode 100644 index 00000000..c3ca07a3 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch @@ -0,0 +1,95 @@ +From bb19a2c7e5b3142d70d3e13c2d8a92a63f2b840a Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 20 Nov 2019 22:12:52 -0800 +Subject: [PATCH] Make space for flags from environment + +Add force option to ln cmd, so do_install can be rerun in same directory + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + sample/Makefile | 20 ++++++++++---------- + src/Makefile | 8 ++++---- + 2 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/sample/Makefile b/sample/Makefile +index 15cafd9..d83641f 100644 +--- a/sample/Makefile ++++ b/sample/Makefile +@@ -35,9 +35,9 @@ ifeq ($(PLATFORM),SunOS) + SOLARIS_LIBS = -lresolv -lnsl -lsocket + endif + +-CC = gcc +-CFLAGS = -O2 -pipe -Wall -g -I../src -I$(OOP_INCLUDE_DIR) +-LDFLAGS = -L../src -L$(OOP_LIB_DIR) $(SOLARIS_LDFLAGS) ++CC ?= gcc ++CFLAGS += -O2 -pipe -Wall -g -I../src -I$(OOP_INCLUDE_DIR) ++LDFLAGS += -L../src -L$(OOP_LIB_DIR) $(SOLARIS_LDFLAGS) + UNRULI_LINK = $(CC) $(ARCH) $(LDFLAGS) -o $@ $^ $(SOLARIS_LIBS) + LINK = $(UNRULI_LINK) -lruli -loop + +@@ -65,13 +65,13 @@ install: $(TARGETS) + mkdir -p $(INSTALL_BIN_DIR) $(INSTALL_MAN1_DIR) + cp $(TARGETS) $(INSTALL_BIN_DIR) + cp ../doc/man/*.1 $(INSTALL_MAN1_DIR) +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 smtpsearch.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 httpsearch.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_srvsearch.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_smtpsearch.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_httpsearch.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 ruli-getaddrinfo.1 +- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 getaddrinfo.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 smtpsearch.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 httpsearch.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_srvsearch.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_smtpsearch.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_httpsearch.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 ruli-getaddrinfo.1 ++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 getaddrinfo.1 + + %.o: %.c + $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c $< +diff --git a/src/Makefile b/src/Makefile +index 9b56b5e..39a5ea1 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -45,7 +45,7 @@ endif + + WARN = -pedantic -ansi -Wshadow -Wpointer-arith -Wcast-qual \ + -Wcast-align -Wwrite-strings -Wredundant-decls +-CC = gcc ++CC ?= gcc + + # gcc-specific options (not valid for g++) + ifeq ($(CC),gcc) +@@ -58,7 +58,7 @@ SHARED = -fPIC + FLAGS = $(DEBUG) -O2 -pipe -Wall -g -shared -D_REENTRANT \ + $(DEFINE_SOLARIS) -I. -I$(OOP_INCLUDE_DIR) + SOFT_CFLAGS = $(WARN) $(FLAGS) +-CFLAGS = $(WARN) -Werror $(FLAGS) ++CFLAGS += $(WARN) -Werror $(FLAGS) + LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \ + ruli_addr.o ruli_sock.o ruli_txt.o ruli_msg.o ruli_fsm.o \ + ruli_res.o ruli_parse.o ruli_host.o ruli_srv.o ruli_conf.o \ +@@ -66,7 +66,7 @@ LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \ + ruli_getaddrinfo.o + SHAREDOBJ = $(LIBOBJ:%.o=%.os) + SONAME = libruli.so.4 +-LDFLAGS = -L$(OOP_LIB_DIR) ++LDFLAGS += -L$(OOP_LIB_DIR) + + COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c + SHARED_COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(SHARED) $(CFLAGS) -o $@ -c +@@ -95,7 +95,7 @@ install: ruli + cp $(SONAME) libruli.a $(INSTALL_LIB_DIR) + cp *.h $(INSTALL_INCLUDE_DIR) + cp ../doc/man/*.3 $(INSTALL_MAN3_DIR) +- cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so ++ cd $(INSTALL_LIB_DIR) && ln -sf $(SONAME) libruli.so + @echo + @echo "REMINDER:" + @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:" +-- +2.24.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch new file mode 100644 index 00000000..213006a6 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch @@ -0,0 +1,35 @@ +From 895ae26e36c4498677ad0b2695a6e5af05548a29 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 20 Nov 2019 22:02:43 -0800 +Subject: [PATCH] ruli_srv: Mark prev_addr_list_size as unused + +This ensures that compiler does not trip on building it + +ruli_srv.c:157:20: error: variable 'prev_addr_list_size' set but not used [-Werror=unused-but-set-variable] +| int prev_addr_list_size; +| ^~~~~~~~~~~~~~~~~~~ +cc1: all warnings being treated as errors + +Upstream-Status: Inappropriate [Workaround] + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/ruli_srv.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/ruli_srv.c b/src/ruli_srv.c +index 45c70c7..ff82349 100644 +--- a/src/ruli_srv.c ++++ b/src/ruli_srv.c +@@ -154,7 +154,7 @@ static void *on_walk_answer(ruli_host_t *host_qry, void *qry_arg) + walk_t *walk_qry = (walk_t *) qry_arg; + ruli_srv_t *srv_qry = walk_qry->srv_query; + ruli_srv_entry_t *srv_entry; +- int prev_addr_list_size; ++ __attribute__((unused)) int prev_addr_list_size; + + assert(ruli_host_answer_code(host_qry) != RULI_SRV_CODE_VOID); + +-- +2.24.0 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/Makefile.patch b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/Makefile.patch deleted file mode 100644 index 60789a3d..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/Makefile.patch +++ /dev/null @@ -1,122 +0,0 @@ -diff -Naur patch.org/ruli-0.36/Makefile patch.new/ruli-0.36/Makefile ---- ruli-0.36/Makefile 2015-09-10 15:14:13.952262350 -0400 -+++ ruli-0.36/Makefile 2015-09-10 15:14:38.628261620 -0400 -@@ -7,17 +7,17 @@ - .PHONY: default - default: - $(MAKE) -C src -- $(MAKE) -C sample -+# $(MAKE) -C sample - - .PHONY: clean - clean: - $(MAKE) -C src clean -- $(MAKE) -C sample clean -+# $(MAKE) -C sample clean - - .PHONY: install - install: - $(MAKE) -C src install -- $(MAKE) -C sample install -+# $(MAKE) -C sample install - - .PHONY: dpkg - dpkg: - -===================================================================== - -diff -Naur patch.org/git/src/Makefile patch.new/git/src/Makefile ---- ruli-0.36/src/Makefile 2005-06-13 12:34:53.000000000 -0400 -+++ ruli-0.36/src/Makefile 2015-09-11 09:46:06.290287347 -0400 -@@ -18,9 +18,9 @@ - # - # Debian packaging likes this: OOP_BASE_DIR = /usr - # --OOP_BASE_DIR = /usr/local/oop --OOP_INCLUDE_DIR = $(OOP_BASE_DIR)/include --OOP_LIB_DIR = $(OOP_BASE_DIR)/lib -+#OOP_BASE_DIR = /usr/local/oop -+OOP_INCLUDE_DIR = ${PKG_CONFIG_SYSROOT_DIR}/$(includedir)/ -+#OOP_LIB_DIR = $(OOP_BASE_DIR)/lib - - # - # INSTALL_BASE_DIR indicates where RULI -@@ -30,11 +30,11 @@ - # - # Debian packaging likes this: INSTALL_BASE_DIR = $(DESTDIR)/usr - # --INSTALL_BASE_DIR = ../install/ruli --INSTALL_INCLUDE_DIR = $(INSTALL_BASE_DIR)/include --INSTALL_LIB_DIR = $(INSTALL_BASE_DIR)/lib --INSTALL_MAN_DIR = $(INSTALL_BASE_DIR)/share/man --INSTALL_MAN3_DIR = $(INSTALL_MAN_DIR)/man3 -+#INSTALL_BASE_DIR = ../install/ruli -+#INSTALL_INCLUDE_DIR = $(INSTALL_BASE_DIR)/include -+#INSTALL_LIB_DIR = $(INSTALL_BASE_DIR)/lib -+#INSTALL_MAN_DIR = $(INSTALL_BASE_DIR)/share/man -+#INSTALL_MAN3_DIR = $(INSTALL_MAN_DIR)/man3 - - # SunOS, Linux - PLATFORM=$(shell uname) -@@ -45,7 +45,7 @@ - - WARN = -pedantic -ansi -Wshadow -Wpointer-arith -Wcast-qual \ - -Wcast-align -Wwrite-strings -Wredundant-decls --CC = gcc -+#CC = gcc - - # gcc-specific options (not valid for g++) - ifeq ($(CC),gcc) -@@ -58,7 +58,7 @@ - FLAGS = $(DEBUG) -O2 -pipe -Wall -g -shared -D_REENTRANT \ - $(DEFINE_SOLARIS) -I. -I$(OOP_INCLUDE_DIR) - SOFT_CFLAGS = $(WARN) $(FLAGS) --CFLAGS = $(WARN) -Werror $(FLAGS) -+CFLAGS = $(WARN) $(FLAGS) - LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \ - ruli_addr.o ruli_sock.o ruli_txt.o ruli_msg.o ruli_fsm.o \ - ruli_res.o ruli_parse.o ruli_host.o ruli_srv.o ruli_conf.o \ -@@ -66,7 +66,7 @@ - ruli_getaddrinfo.o - SHAREDOBJ = $(LIBOBJ:%.o=%.os) - SONAME = libruli.so.4 --LDFLAGS = -L$(OOP_LIB_DIR) -+#LDFLAGS = -L$(OOP_LIB_DIR) - - COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c - SHARED_COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(SHARED) $(CFLAGS) -o $@ -c -@@ -89,19 +89,19 @@ - strip: ruli - strip $(SONAME) libruli.a - --.PHONY: install --install: ruli -- mkdir -p $(INSTALL_LIB_DIR) $(INSTALL_INCLUDE_DIR) $(INSTALL_MAN3_DIR) -- cp $(SONAME) libruli.a $(INSTALL_LIB_DIR) -- cp *.h $(INSTALL_INCLUDE_DIR) -- cp ../doc/man/*.3 $(INSTALL_MAN3_DIR) -- cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so -- @echo -- @echo "REMINDER:" -- @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:" -- @echo "# echo $(INSTALL_LIB_DIR) >> /etc/ld.so.conf" -- @echo "# ldconfig" -- @echo -+#.PHONY: install -+#install: ruli -+# mkdir -p $(INSTALL_LIB_DIR) $(INSTALL_INCLUDE_DIR) $(INSTALL_MAN3_DIR) -+# cp $(SONAME) libruli.a $(INSTALL_LIB_DIR) -+# cp *.h $(INSTALL_INCLUDE_DIR) -+# cp ../doc/man/*.3 $(INSTALL_MAN3_DIR) -+# cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so -+# @echo -+# @echo "REMINDER:" -+# @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:" -+# @echo "# echo $(INSTALL_LIB_DIR) >> /etc/ld.so.conf" -+# @echo "# ldconfig" -+# @echo - - .PHONY: ruli - ruli: $(SONAME) libruli.a - - diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/files/float-conversion.patch b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/float-conversion.patch new file mode 100644 index 00000000..999f23fc --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/ruli/files/float-conversion.patch @@ -0,0 +1,19 @@ +clarify type conversion + +fixes +| ruli_rand.c:54:47: error: implicit conversion from 'unsigned int' to 'float' changes value from 4294967295 to 4294967296 [-Werror,-Wimplicit-int-float-conversion] +| + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- a/src/ruli_rand.c ++++ b/src/ruli_rand.c +@@ -51,7 +51,7 @@ int ruli_rand_next(ruli_rand_t *rand_ctx + + u = isaac_rand(&rand_ctx->isaac_ctx); + +- r = (int) ((float) (1.0 + max - min) * u / ISAAC_UB4MAXVAL + min); ++ r = (int) ((float) (1.0 + max - min) * u / (float) (ISAAC_UB4MAXVAL + min)); + + assert(min <= r); + assert(r <= max); diff --git a/external/meta-openembedded/meta-networking/recipes-support/ruli/ruli_0.36.bb b/external/meta-openembedded/meta-networking/recipes-support/ruli/ruli_0.36.bb index 885796d2..f920b592 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/ruli/ruli_0.36.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/ruli/ruli_0.36.bb @@ -8,18 +8,31 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" DEPENDS = "liboop" SRC_URI = "http://download.savannah.gnu.org/releases/ruli/ruli_${PV}.orig.tar.gz \ - file://Makefile.patch \ file://0001-Fix-build-with-format-string-checks.patch \ file://0001-src-ruli_addr.c-Add-missing-format-string.patch \ + file://0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch \ + file://0001-Make-space-for-flags-from-environment.patch \ + file://float-conversion.patch \ " SRC_URI[md5sum] = "e73fbfdeadddb68a703a70cea5271468" SRC_URI[sha256sum] = "11d32def5b514748fbd9ea8c88049ae99e1bb358efc74eb91a4d268a3999dbfa" -do_install1() { - install -d ${D}${includedir}/ruli - install -d ${D}${libdir} - install -m 0644 ${S}/src/ruli*.h ${D}${includedir}/ruli - install -m 0644 ${S}/src/libruli.so ${D}${libdir} - install -m 0644 ${S}/src/libruli.so.4 ${D}${libdir} +B = "${S}" + +EXTRA_OEMAKE = 'CC="${CC}" OOP_BASE_DIR="${STAGING_EXECPREFIXDIR}" \ + INSTALL_BASE_DIR="${D}${exec_prefix}" \ + OOP_LIB_DIR=${STAGING_EXECPREFIXDIR}/${baselib} \ + INSTALL_LIB_DIR=${D}${libdir}' + +do_configure() { + touch configure-stamp +} + +do_install() { + oe_runmake install } + +PACKAGES =+ "${PN}-bin" + +FILES_${PN} =+ "${bindir}" diff --git a/external/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb b/external/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb index 9b6fc2f3..0b63f79a 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb @@ -3,9 +3,9 @@ DESCRIPTION = "SMCRoute is a daemon and command line tool to manipulate the mult HOMEPAGE = "http://troglobit.github.io/smcroute.html" SECTION = "net" LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" -SRCREV = "d6280e64b27d5a4bd7f37dac36b455f4ae5f9ab3" +SRCREV = "a8e5847e5f7e411be424f9b52a6cdf9d2ed4aeb5" SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=git" S = "${WORKDIR}/git" diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/spice-protocol_git.bb b/external/meta-openembedded/meta-networking/recipes-support/spice/spice-protocol_git.bb index 30d0a767..1d56bea1 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/spice/spice-protocol_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/spice/spice-protocol_git.bb @@ -10,12 +10,12 @@ environment - not only on its computer-server machine, but also from \ anywhere on the Internet and using a wide variety of machine \ architectures." -LICENSE = "BSD" +LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://COPYING;md5=b37311cb5604f3e5cc2fb0fd23527e95" -PV = "0.12.13+git${SRCPV}" +PV = "0.14.1+git${SRCPV}" -SRCREV = "87441524f4e7b79658e42bd8f1f6c3e3c8649aa5" +SRCREV = "e0ec178a72aa33e307ee5ac02b63bf336da921a5" SRC_URI = " \ git://anongit.freedesktop.org/spice/spice-protocol \ diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch b/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch index 505b7c89..e63cbe3b 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch @@ -14,21 +14,19 @@ Upstream-Status: Pending server/red-client.c | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) -diff --git a/server/red-channel.c b/server/red-channel.c -index 1b38f04d..11dc667b 100644 --- a/server/red-channel.c +++ b/server/red-channel.c -@@ -192,7 +192,7 @@ red_channel_constructed(GObject *object) +@@ -204,7 +204,7 @@ red_channel_constructed(GObject *object) { RedChannel *self = RED_CHANNEL(object); -- red_channel_debug(self, "thread_id 0x%lx", self->priv->thread_id); -+ red_channel_debug(self, "thread_id 0x%lx", (unsigned long)self->priv->thread_id); +- red_channel_debug(self, "thread_id 0x%" G_GSIZE_MODIFIER "x", self->priv->thread_id); ++ red_channel_debug(self, "thread_id 0x%" G_GSIZE_MODIFIER "x", (unsigned long)self->priv->thread_id); RedChannelClass *klass = RED_CHANNEL_GET_CLASS(self); -@@ -475,7 +475,8 @@ void red_channel_remove_client(RedChannel *channel, RedChannelClient *rcc) - red_channel_warning(channel, "channel->thread_id (0x%lx) != pthread_self (0x%lx)." +@@ -479,7 +479,8 @@ void red_channel_remove_client(RedChanne + "pthread_self (0x%" G_GSIZE_MODIFIER "x)." "If one of the threads is != io-thread && != vcpu-thread, " "this might be a BUG", - channel->priv->thread_id, pthread_self()); @@ -37,12 +35,10 @@ index 1b38f04d..11dc667b 100644 } spice_return_if_fail(channel); link = g_list_find(channel->priv->clients, rcc); -diff --git a/server/red-client.c b/server/red-client.c -index ddfc5400..76986640 100644 --- a/server/red-client.c +++ b/server/red-client.c -@@ -180,7 +180,7 @@ void red_client_migrate(RedClient *client) - spice_warning("client->thread_id (0x%lx) != pthread_self (0x%lx)." +@@ -180,7 +180,7 @@ void red_client_migrate(RedClient *clien + "pthread_self (0x%" G_GSIZE_MODIFIER "x)." "If one of the threads is != io-thread && != vcpu-thread," " this might be a BUG", - client->thread_id, pthread_self()); @@ -50,8 +46,8 @@ index ddfc5400..76986640 100644 } FOREACH_CHANNEL_CLIENT(client, rcc) { if (red_channel_client_is_connected(rcc)) { -@@ -199,8 +199,8 @@ void red_client_destroy(RedClient *client) - spice_warning("client->thread_id (0x%lx) != pthread_self (0x%lx)." +@@ -199,8 +199,8 @@ void red_client_destroy(RedClient *clien + "pthread_self (0x%" G_GSIZE_MODIFIER "x)." "If one of the threads is != io-thread && != vcpu-thread," " this might be a BUG", - client->thread_id, @@ -61,6 +57,3 @@ index ddfc5400..76986640 100644 } red_client_set_disconnecting(client); FOREACH_CHANNEL_CLIENT(client, rcc) { --- -2.17.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Fix-compile-errors-on-Linux-32bit-system.patch b/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Fix-compile-errors-on-Linux-32bit-system.patch new file mode 100644 index 00000000..d04bee95 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-Fix-compile-errors-on-Linux-32bit-system.patch @@ -0,0 +1,96 @@ +From a2af005b5d4a62839e56f42a43df793356e78f58 Mon Sep 17 00:00:00 2001 +From: "Hongzhi.Song" <hongzhi.song@windriver.com> +Date: Tue, 4 Jun 2019 03:58:17 -0400 +Subject: [PATCH] Fix compile errors on Linux 32bit system + +There are folowing compile errors on Linux 32bit system: + +red-channel.c:207:73: error: format '%x' expects argument of type +'unsigned int', but argument 7 has type 'long unsigned int' [-Werror=format=] +|207| red_channel_debug(self, "thread_id 0x%" G_GSIZE_MODIFIER "x", + ~~~~~~~~~~~~~~~~~~~~~^ + self->priv->thread_id); + ~~~~~~~~~~~~~~~~~~~~~^ + +On 32bit system, #define G_GSIZE_MODIFIER "". But the type of +'self->priv->thread_id' is 'unsigned long int' which should match '%lx' +not '%x'. + +So we should recovery the <0x%" G_GSIZE_MODIFIER "x"> to <0x%lx">. +And others files modification are similar to G_GSIZE_MODIFIER. + +Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com> +--- +Upstream-Status: Submitted [https://lists.freedesktop.org/archives/spice-devel/2019-June/049285.html] + + server/red-channel.c | 6 +++--- + server/red-client.c | 8 ++++---- + server/red-replay-qxl.c | 2 +- + 3 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/server/red-channel.c b/server/red-channel.c +index f81142d..6a03ec2 100644 +--- a/server/red-channel.c ++++ b/server/red-channel.c +@@ -202,7 +202,7 @@ red_channel_constructed(GObject *object) + { + RedChannel *self = RED_CHANNEL(object); + +- red_channel_debug(self, "thread_id 0x%" G_GSIZE_MODIFIER "x", (unsigned long)self->priv->thread_id); ++ red_channel_debug(self, "thread_id 0x%lx", (unsigned long)self->priv->thread_id); + + RedChannelClass *klass = RED_CHANNEL_GET_CLASS(self); + +@@ -473,8 +473,8 @@ void red_channel_remove_client(RedChannel *channel, RedChannelClient *rcc) + + if (!pthread_equal(pthread_self(), channel->priv->thread_id)) { + red_channel_warning(channel, +- "channel->thread_id (0x%" G_GSIZE_MODIFIER "x) != " +- "pthread_self (0x%" G_GSIZE_MODIFIER "x)." ++ "channel->thread_id (0x%lx) != " ++ "pthread_self (0x%lx)." + "If one of the threads is != io-thread && != vcpu-thread, " + "this might be a BUG", + (unsigned long)channel->priv->thread_id, +diff --git a/server/red-client.c b/server/red-client.c +index 2b859cb..ff4da2a 100644 +--- a/server/red-client.c ++++ b/server/red-client.c +@@ -174,8 +174,8 @@ void red_client_migrate(RedClient *client) + RedChannel *channel; + + if (!pthread_equal(pthread_self(), client->thread_id)) { +- spice_warning("client->thread_id (0x%" G_GSIZE_MODIFIER "x) != " +- "pthread_self (0x%" G_GSIZE_MODIFIER "x)." ++ spice_warning("client->thread_id (0x%lx) != " ++ "pthread_self (0x%lx)." + "If one of the threads is != io-thread && != vcpu-thread," + " this might be a BUG", + (unsigned long)client->thread_id, (unsigned long)pthread_self()); +@@ -193,8 +193,8 @@ void red_client_destroy(RedClient *client) + RedChannelClient *rcc; + + if (!pthread_equal(pthread_self(), client->thread_id)) { +- spice_warning("client->thread_id (0x%" G_GSIZE_MODIFIER "x) != " +- "pthread_self (0x%" G_GSIZE_MODIFIER "x)." ++ spice_warning("client->thread_id (0x%lx) != " ++ "pthread_self (0x%lx)." + "If one of the threads is != io-thread && != vcpu-thread," + " this might be a BUG", + (unsigned long)client->thread_id, +diff --git a/server/red-replay-qxl.c b/server/red-replay-qxl.c +index 6d34818..0deb406 100644 +--- a/server/red-replay-qxl.c ++++ b/server/red-replay-qxl.c +@@ -264,7 +264,7 @@ static replay_t read_binary(SpiceReplay *replay, const char *prefix, size_t *siz + exit(1); + } + if ((ret = inflate(&strm, Z_NO_FLUSH)) != Z_STREAM_END) { +- spice_error("inflate error %d (disc: %" G_GSSIZE_FORMAT ")", ++ spice_error("inflate error %d (disc: %li)", + ret, *size - strm.total_out); + if (ret == Z_DATA_ERROR) { + /* last operation may be wrong. since we do the recording +-- +2.8.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch b/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch deleted file mode 100644 index 1f9d5fdd..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 7023732c65b4dc509c46a54fb7715da275b5597f Mon Sep 17 00:00:00 2001 -From: Changqing Li <changqing.li@windriver.com> -Date: Thu, 13 Sep 2018 12:39:44 +0800 -Subject: [PATCH] spice: fix compile fail problem - -compile error: -format '%d' expects argument of type 'int', but argument 6 has -type 'long unsigned int' [-Werror=format=] - -spice compile failed on 32bit system, since upstream commit -9541cd2fe(in V0.14.1) change %ld to %PRIdPTR, %PRIdPTR is %d, but argument -strm.total_out is uLong. - -Upstream-Status: Submitted[https://github.com/freedesktop/spice/pull/1] - -Signed-off-by: Changqing Li <changqing.li@windriver.com> ---- - server/red-replay-qxl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/server/red-replay-qxl.c b/server/red-replay-qxl.c -index 1fce76c..bd33b58 100644 ---- a/server/red-replay-qxl.c -+++ b/server/red-replay-qxl.c -@@ -266,7 +266,7 @@ static replay_t read_binary(SpiceReplay *replay, const char *prefix, size_t *siz - exit(1); - } - if ((ret = inflate(&strm, Z_NO_FLUSH)) != Z_STREAM_END) { -- spice_error("inflate error %d (disc: %" PRIdPTR ")", ret, *size - strm.total_out); -+ spice_error("inflate error %d (disc: %ld)", ret, *size - strm.total_out); - if (ret == Z_DATA_ERROR) { - /* last operation may be wrong. since we do the recording - * in red_worker, when there is a shutdown from the vcpu/io thread --- -2.7.4 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/spice_git.bb b/external/meta-openembedded/meta-networking/recipes-support/spice/spice_git.bb index 1ad46c2c..9d3a0e6c 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/spice/spice_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/spice/spice_git.bb @@ -13,10 +13,10 @@ architectures." LICENSE = "BSD & LGPLv2.1+" LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" -PV = "0.14.1+git${SRCPV}" +PV = "0.14.2+git${SRCPV}" -SRCREV_spice = "eaa07ef15cfc3bf57a69da2576af66f028787774" -SRCREV_spice-common = "6b93b3fce8909b836ef1d1434d191900d8aa00be" +SRCREV_spice = "7cbd70b931db76c69c89c2d9d5d704f67381a81b" +SRCREV_spice-common = "4fc4c2db36c7f07b906e9a326a9d3dc0ae6a2671" SRCREV_FORMAT = "spice_spice-common" @@ -24,18 +24,19 @@ SRC_URI = " \ git://anongit.freedesktop.org/spice/spice;name=spice \ git://anongit.freedesktop.org/spice/spice-common;destsuffix=git/subprojects/spice-common;name=spice-common \ file://0001-Convert-pthread_t-to-be-numeric.patch \ - file://0001-spice-fix-compile-fail-problem.patch \ + file://0001-Fix-compile-errors-on-Linux-32bit-system.patch \ " S = "${WORKDIR}/git" -inherit autotools gettext pythonnative python-dir pkgconfig +inherit autotools gettext python3native python3-dir pkgconfig -DEPENDS += "spice-protocol jpeg pixman alsa-lib glib-2.0 python-pyparsing-native python-six-native glib-2.0-native" +DEPENDS += "spice-protocol jpeg pixman alsa-lib glib-2.0 python3-pyparsing-native python3-six-native glib-2.0-native" DEPENDS_append_class-nativesdk = "nativesdk-openssl" -export PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python" -export PYTHONPATH="${PKG_CONFIG_SYSROOT_DIR}${libdir}/python2.7/site-packages" +export PYTHON="${STAGING_BINDIR_NATIVE}/python3-native/python3" + +CFLAGS_append = " -Wno-error" PACKAGECONFIG_class-native = "" PACKAGECONFIG_class-nativesdk = "" @@ -54,4 +55,4 @@ COMPATIBLE_HOST = '(x86_64|i.86).*-linux' BBCLASSEXTEND = "native nativesdk" -EXTRA_OECONF_toolchain-clang += "--disable-werror" +EXTRA_OECONF_append_toolchain-clang = " --disable-werror" diff --git a/external/meta-openembedded/meta-networking/recipes-support/spice/usbredir_git.bb b/external/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb index 3fea7528..9ee43be1 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/spice/usbredir_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb @@ -7,8 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ DEPENDS = "libusb1" -SRCREV = "39aa3c69f61bba28856a3eef3fe4ab37a3968e88" -PV = "0.7.1+git${SRCPV}" +SRCREV = "07b98b8e71f620dfdd57e92ddef6b677b259a092" SRC_URI = " \ git://anongit.freedesktop.org/spice/usbredir \ diff --git a/external/meta-openembedded/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch b/external/meta-openembedded/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch index 00178c84..2d17507b 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch @@ -9,13 +9,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> src/libstrongswan/utils/utils/memory.h | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/src/libstrongswan/utils/utils/memory.h b/src/libstrongswan/utils/utils/memory.h -index e840330..8a356a8 100644 --- a/src/libstrongswan/utils/utils/memory.h +++ b/src/libstrongswan/utils/utils/memory.h -@@ -22,6 +22,8 @@ - #ifndef MEMORY_H_ - #define MEMORY_H_ +@@ -26,6 +26,8 @@ + #include <string.h> + #endif +#include <stdint.h> + diff --git a/external/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb b/external/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.8.4.bb index c8bb17c5..0a273319 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.8.4.bb @@ -12,22 +12,23 @@ SRC_URI = "http://download.strongswan.org/strongswan-${PV}.tar.bz2 \ file://0001-memory.h-Include-stdint.h-for-uintptr_t.patch \ " -SRC_URI[md5sum] = "86b7e9321cde075cf382268fd282e0b0" -SRC_URI[sha256sum] = "006f9c9126e2a2f4e7a874b5e1bd2abec1bbbb193c8b3b3a4c6ccd8c2d454bec" +SRC_URI[md5sum] = "0634e7f40591bd3f6770e583c3f27d29" +SRC_URI[sha256sum] = "2d9a57e33813b62d58cba07531c4d5a35c6b823dfe9b8ff7c623b6571f02553c" UPSTREAM_CHECK_REGEX = "strongswan-(?P<pver>\d+(\.\d+)+)\.tar" EXTRA_OECONF = " \ --without-lib-prefix \ + --with-dev-headers=${includedir}/strongswan \ " EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/', '--without-systemdsystemunitdir', d)}" - PACKAGECONFIG ??= "charon curl gmp openssl stroke sqlite3 \ ${@bb.utils.filter('DISTRO_FEATURES', 'ldap', d)} \ " PACKAGECONFIG[aesni] = "--enable-aesni,--disable-aesni,,${PN}-plugin-aesni" +PACKAGECONFIG[bfd] = "--enable-bfd-backtraces,--disable-bfd-backtraces,binutils" PACKAGECONFIG[charon] = "--enable-charon,--disable-charon," PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,${PN}-plugin-curl" PACKAGECONFIG[gmp] = "--enable-gmp,--disable-gmp,gmp,${PN}-plugin-gmp" @@ -48,8 +49,8 @@ inherit autotools systemd pkgconfig RRECOMMENDS_${PN} = "kernel-module-ipsec" FILES_${PN} += "${libdir}/ipsec/lib*${SOLIBS}" -FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug" -FILES_${PN}-dev += "${libdir}/ipsec/lib*${SOLIBSDEV} ${libdir}/ipsec/*.la" +FILES_${PN}-dbg += "${bindir}/.debug ${sbindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug" +FILES_${PN}-dev += "${libdir}/ipsec/lib*${SOLIBSDEV} ${libdir}/ipsec/*.la ${libdir}/ipsec/include/config.h" FILES_${PN}-staticdev += "${libdir}/ipsec/*.a" CONFFILES_${PN} = "${sysconfdir}/*.conf ${sysconfdir}/ipsec.d/*.conf ${sysconfdir}/strongswan.d/*.conf" @@ -66,8 +67,8 @@ python split_strongswan_plugins () { dbglibdir = os.path.join(libdir, '.debug') def add_plugin_conf(f, pkg, file_regex, output_pattern, modulename): - dvar = d.getVar('PKGD', True) - oldfiles = d.getVar('CONFFILES_' + pkg, True) + dvar = d.getVar('PKGD') + oldfiles = d.getVar('CONFFILES_' + pkg) newfile = '/' + os.path.relpath(f, dvar) if not oldfiles: @@ -83,7 +84,7 @@ python split_strongswan_plugins () { split_staticdev_packages = do_split_packages(d, libdir, 'libstrongswan-(.*)\.a', '${PN}-plugin-%s-staticdev', 'strongSwan %s plugin - Development files (Static Libraries)', prepend=True, extra_depends='${PN}-staticdev') if split_packages: - pn = d.getVar('PN', True) + pn = d.getVar('PN') d.setVar('RRECOMMENDS_' + pn + '-plugins', ' '.join(split_packages)) d.appendVar('RRECOMMENDS_' + pn + '-dbg', ' ' + ' '.join(split_dbg_packages)) d.appendVar('RRECOMMENDS_' + pn + '-dev', ' ' + ' '.join(split_dev_packages)) @@ -131,4 +132,4 @@ RDEPENDS_${PN} += "\ RPROVIDES_${PN} += "${PN}-systemd" RREPLACES_${PN} += "${PN}-systemd" RCONFLICTS_${PN} += "${PN}-systemd" -SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}-swanctl.service', '${BPN}.service', d)}" +SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}.service', '', d)} ${BPN}-starter.service" diff --git a/external/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.49.bb b/external/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.56.bb index eca77cf8..3411e5d0 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.49.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.56.bb @@ -6,7 +6,7 @@ SECTION = "net" # a combined work based on stunnel. Thus, the terms and conditions of the GNU # General Public License cover the whole combination. LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=f6b7fe7379c9c2d7db6c80f7bd41e06d" +LIC_FILES_CHKSUM = "file://COPYING.md;md5=d6d635d290ba1705821254a0278f1ef7" DEPENDS = "autoconf-archive libnsl2 openssl" @@ -14,8 +14,8 @@ SRC_URI = "ftp://ftp.stunnel.org/stunnel/archive/5.x/${BP}.tar.gz \ file://fix-openssl-no-des.patch \ " -SRC_URI[md5sum] = "0b41240e5585ec7d55ca343feed5530f" -SRC_URI[sha256sum] = "3d6641213a82175c19f23fde1c3d1c841738385289eb7ca1554f4a58b96d955e" +SRC_URI[md5sum] = "01b0ca9e071f582ff803a85d5ed72166" +SRC_URI[sha256sum] = "7384bfb356b9a89ddfee70b5ca494d187605bb516b4fff597e167f97e2236b22" inherit autotools diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/0001-CVE-2017-16808-AoE-Add-a-missing-bounds-check.patch b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/0001-CVE-2017-16808-AoE-Add-a-missing-bounds-check.patch deleted file mode 100644 index 919f2b00..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/0001-CVE-2017-16808-AoE-Add-a-missing-bounds-check.patch +++ /dev/null @@ -1,61 +0,0 @@ -From c45443a0d3e16b92622bea6b589e5930e8f0d815 Mon Sep 17 00:00:00 2001 -From: Peiran Hong <peiran.hong@windriver.com> -Date: Fri, 13 Sep 2019 17:02:57 -0400 -Subject: [PATCH] CVE-2017-16808/AoE: Add a missing bounds check. - ---- - netdissect.h | 12 ++++++++++++ - print-aoe.c | 1 + - 2 files changed, 13 insertions(+) - -diff --git a/netdissect.h b/netdissect.h -index 089b0406..cd05fdb9 100644 ---- a/netdissect.h -+++ b/netdissect.h -@@ -69,6 +69,11 @@ typedef struct { - typedef unsigned char nd_uint8_t; - typedef signed char nd_int8_t; - -+/* -+ * Use this for MAC addresses. -+ */ -+#define MAC_ADDR_LEN 6 /* length of MAC addresses */ -+ - /* snprintf et al */ - - #include <stdarg.h> -@@ -309,12 +314,19 @@ struct netdissect_options { - ((uintptr_t)ndo->ndo_snapend - (l) <= (uintptr_t)ndo->ndo_snapend && \ - (uintptr_t)&(var) <= (uintptr_t)ndo->ndo_snapend - (l))) - -+#define ND_TTEST_LEN(p, l) \ -+ (IS_NOT_NEGATIVE(l) && \ -+ ((uintptr_t)ndo->ndo_snapend - (l) <= (uintptr_t)ndo->ndo_snapend && \ -+ (uintptr_t)(p) <= (uintptr_t)ndo->ndo_snapend - (l))) -+ - /* True if "var" was captured */ - #define ND_TTEST(var) ND_TTEST2(var, sizeof(var)) - - /* Bail if "l" bytes of "var" were not captured */ - #define ND_TCHECK2(var, l) if (!ND_TTEST2(var, l)) goto trunc - -+#define ND_TCHECK_LEN(p, l) if (!ND_TTEST_LEN(p, l)) goto trunc -+ - /* Bail if "var" was not captured */ - #define ND_TCHECK(var) ND_TCHECK2(var, sizeof(var)) - -diff --git a/print-aoe.c b/print-aoe.c -index 97e93df2..ac097a04 100644 ---- a/print-aoe.c -+++ b/print-aoe.c -@@ -325,6 +325,7 @@ aoev1_reserve_print(netdissect_options *ndo, - goto invalid; - /* addresses */ - for (i = 0; i < nmacs; i++) { -+ ND_TCHECK_LEN(cp, MAC_ADDR_LEN); - ND_PRINT((ndo, "\n\tEthernet Address %u: %s", i, etheraddr_string(ndo, cp))); - cp += ETHER_ADDR_LEN; - } --- -2.21.0 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch index b71435a0..f8ff354f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch @@ -1,18 +1,19 @@ -From 8ee1ab1ac89557d48ac1ab7ddcc3c51be9b734ad Mon Sep 17 00:00:00 2001 +From 8c9c728757f89ebe6c4019114b83a63c63596f69 Mon Sep 17 00:00:00 2001 From: "Hongjun.Yang" <hongjun.yang@windriver.com> -Date: Wed, 22 Oct 2014 10:02:48 +0800 +Date: Wed, 2 Oct 2019 16:57:06 -0400 Subject: [PATCH] Add ptest for tcpdump Upstream-Status: Pending Signed-off-by: Hongjun.Yang <hongjun.yang@windriver.com> +Signed-off-by: Peiran Hong <peiran.hong@windriver.com> --- Makefile.in | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Makefile.in b/Makefile.in -index 0941f0e..3ce40c6 100644 +index 3b589184..7b10e38c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -437,9 +437,17 @@ distclean: @@ -23,7 +24,7 @@ index 0941f0e..3ce40c6 100644 +buildtest-TESTS: tcpdump + +runtest-PTEST: - (cd tests && ./TESTrun.sh) + (mkdir -p tests && SRCDIR=`cd ${srcdir}; pwd` && export SRCDIR && $$SRCDIR/tests/TESTrun.sh ) +install-ptest: + cp -r tests $(DESTDIR) diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/avoid-absolute-path-when-searching-for-libdlpi.patch b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/avoid-absolute-path-when-searching-for-libdlpi.patch new file mode 100644 index 00000000..977ab95b --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/avoid-absolute-path-when-searching-for-libdlpi.patch @@ -0,0 +1,31 @@ +From 02085028cdaf075943c27ebc02bb6de0289ec1d3 Mon Sep 17 00:00:00 2001 +From: Andre McCurdy <armccurdy@gmail.com> +Date: Wed, 2 Oct 2019 16:43:48 -0400 +Subject: [PATCH] avoid absolute path when searching for libdlpi + +Let the build environment control library search paths. + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Andre McCurdy <armccurdy@gmail.com> +Signed-off-by: Peiran Hong <peiran.hong@windriver.com> +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 3401a7a3..6a52485a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -528,7 +528,7 @@ don't.]) + fi + + # libdlpi is needed for Solaris 11 and later. +-AC_CHECK_LIB(dlpi, dlpi_walk, LIBS="$LIBS -ldlpi" LDFLAGS="-L/lib $LDFLAGS", ,-L/lib) ++AC_CHECK_LIB(dlpi, dlpi_walk, LIBS="$LIBS -ldlpi") + + dnl + dnl Check for "pcap_list_datalinks()", "pcap_set_datalink()", +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest index c03a8b8e..2bfb2267 100755 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest @@ -1,5 +1,5 @@ #!/bin/sh make -k runtest-PTEST | sed -e '/: passed/ s/^/PASS: /g' \ - -e '/: failed/ s/^/FAIL: /g' \ + -e '/: TEST FAILED.*/ s/^/FAIL: /g' \ -e 's/: passed//g' \ - -e 's/: failed//g' + -e 's/: TEST FAILED.*//g' diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch index 8cefadf2..8793bf7a 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch @@ -1,10 +1,8 @@ -From 741d77e42fc4af49804f7ee43b7237e01633cbcd Mon Sep 17 00:00:00 2001 +From dd023c133980fcc0cff5896e85377675e0571894 Mon Sep 17 00:00:00 2001 From: Roy Li <rongqing.li@windriver.com> Date: Tue, 8 Jul 2014 13:20:47 +0800 Subject: [PATCH] unnecessary to check libpcap -Upstream-Status: Pending - since the check of libpcap did not consider the cross-compile, lead to the below error: This autoconf log indicates errors, it looked at host include and/or @@ -13,22 +11,30 @@ below error: In fact, the libpcap has been added into the tcpdump's DEPENDS, not need to check if libpcap existed. -Signed-off-by: Roy Li <rongqing.li@windriver.com> +Upstream-Status: Inappropriate [OE specific] +Signed-off-by: Roy Li <rongqing.li@windriver.com> +Signed-off-by: Andre McCurdy <armccurdy@gmail.com> +Signed-off-by: Peiran Hong <peiran.hong@windriver.com> --- - configure.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + configure.ac | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) -diff --git a/configure.in b/configure.in -index b2305a5..b3b5dbf 100644 ---- a/configure.in -+++ b/configure.in -@@ -418,7 +418,7 @@ dnl Some platforms may need -lnsl for getrpcbynumber. +diff --git a/configure.ac b/configure.ac +index 56e2a624..3401a7a3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -404,7 +404,9 @@ dnl Some platforms may need -lnsl for getrpcbynumber. AC_SEARCH_LIBS(getrpcbynumber, nsl, AC_DEFINE(HAVE_GETRPCBYNUMBER, 1, [define if you have getrpcbynumber()])) -AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS) -+#AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS) ++# Simplified (more cross compile friendly) check for libpcap. All we really ++# need is to sanity check that libpcap is available and add -lpcap to LIBS. ++AC_CHECK_LIB(pcap, pcap_compile, LIBS="$LIBS -lpcap") # # Check for these after AC_LBL_LIBPCAP, so we link with the appropriate +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb deleted file mode 100644 index 14e90b09..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb +++ /dev/null @@ -1,52 +0,0 @@ -SUMMARY = "A sophisticated network protocol analyzer" -HOMEPAGE = "http://www.tcpdump.org/" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867" -SECTION = "net" -DEPENDS = "libpcap" - -SRC_URI = " \ - http://www.tcpdump.org/release/${BP}.tar.gz \ - file://unnecessary-to-check-libpcap.patch \ - file://add-ptest.patch \ - file://run-ptest \ - file://0001-CVE-2017-16808-AoE-Add-a-missing-bounds-check.patch \ -" - -SRC_URI[md5sum] = "9bbc1ee33dab61302411b02dd0515576" -SRC_URI[sha256sum] = "798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79" - -export LIBS=" -lpcap" - -inherit autotools-brokensep ptest -CACHED_CONFIGUREVARS = "ac_cv_linux_vers=${ac_cv_linux_vers=2}" - -PACKAGECONFIG ??= "openssl" -PACKAGECONFIG[openssl] = "--with-crypto=yes, --without-openssl --without-crypto, openssl" -PACKAGECONFIG[smi] = "--with-smi, --without-smi,libsmi" -PACKAGECONFIG[libcap-ng] = "--with-cap-ng=yes,--with-cap-ng=no,libcap-ng" - -EXTRA_AUTORECONF += " -I m4" - -do_configure_prepend() { - mkdir -p ${S}/m4 - if [ -f aclocal.m4 ]; then - mv aclocal.m4 ${S}/m4 - fi - # AC_CHECK_LIB(dlpi.. was looking to host /lib - sed -i 's:-L/lib::g' ./configure.in -} -do_configure_append() { - sed -i 's:-L/usr/lib::' ./Makefile - sed -i 's:-Wl,-rpath,${STAGING_LIBDIR}::' ./Makefile - sed -i 's:-I/usr/include::' ./Makefile -} - -do_install_append() { - # tcpdump 4.0.0 installs a copy to /usr/sbin/tcpdump.4.0.0 - rm -f ${D}${sbindir}/tcpdump.${PV} -} - -do_compile_ptest() { - oe_runmake buildtest-TESTS -} diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.3.bb b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.3.bb new file mode 100644 index 00000000..94543dd1 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpdump/tcpdump_4.9.3.bb @@ -0,0 +1,51 @@ +SUMMARY = "A sophisticated network protocol analyzer" +HOMEPAGE = "http://www.tcpdump.org/" +SECTION = "net" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867" + +DEPENDS = "libpcap" + +RDEPENDS_${PN}-ptest += " make perl \ + perl-module-file-basename \ + perl-module-posix \ + perl-module-carp" + +SRC_URI = " \ + http://www.tcpdump.org/release/${BP}.tar.gz \ + file://unnecessary-to-check-libpcap.patch \ + file://avoid-absolute-path-when-searching-for-libdlpi.patch \ + file://add-ptest.patch \ + file://run-ptest \ +" + +SRC_URI[md5sum] = "a4ead41d371f91aa0a2287f589958bae" +SRC_URI[sha256sum] = "2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410" + +inherit autotools-brokensep ptest + +PACKAGECONFIG ?= "openssl" + +PACKAGECONFIG[libcap-ng] = "--with-cap-ng,--without-cap-ng,libcap-ng" +PACKAGECONFIG[openssl] = "--with-crypto,--without-crypto,openssl" +PACKAGECONFIG[smi] = "--with-smi,--without-smi,libsmi" +# Note: CVE-2018-10103 (SMB - partially fixed, but SMB printing disabled) +PACKAGECONFIG[smb] = "--enable-smb,--disable-smb" + +EXTRA_AUTORECONF += "-I m4" + +do_configure_prepend() { + mkdir -p ${S}/m4 + if [ -f aclocal.m4 ]; then + mv aclocal.m4 ${S}/m4 + fi +} + +do_install_append() { + # make install installs an unneeded extra copy of the tcpdump binary + rm -f ${D}${sbindir}/tcpdump.${PV} +} + +do_compile_ptest() { + oe_runmake buildtest-TESTS +} diff --git a/external/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb b/external/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.3.3.bb index 681ef02b..39be950a 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.3.3.bb @@ -8,8 +8,8 @@ LIC_FILES_CHKSUM = "file://docs/LICENSE;md5=890b830b22fd632e9ffd996df20338f8" SRC_URI = "https://github.com/appneta/tcpreplay/releases/download/v${PV}/tcpreplay-${PV}.tar.gz" -SRC_URI[md5sum] = "3e65d5b872e441c6a0038191a3dc7ce9" -SRC_URI[sha256sum] = "043756c532dab93e2be33a517ef46b1341f7239278a1045ae670041dd8a4531d" +SRC_URI[md5sum] = "53b52bf64f0b6b9443428e657b37bc6b" +SRC_URI[sha256sum] = "ed2402caa9434ff5c74b2e7b31178c73e7c7c5c4ea1e1d0e2e39a7dc46958fde" DEPENDS = "libpcap" diff --git a/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf new file mode 100644 index 00000000..4ca18efa --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf @@ -0,0 +1,330 @@ +## +## tinyproxy.conf -- tinyproxy daemon configuration file +## +## This example tinyproxy.conf file contains example settings +## with explanations in comments. For decriptions of all +## parameters, see the tinproxy.conf(5) manual page. +## + +# +# User/Group: This allows you to set the user and group that will be +# used for tinyproxy after the initial binding to the port has been done +# as the root user. Either the user or group name or the UID or GID +# number may be used. +# +User tinyproxy +Group nogroup + +# +# Port: Specify the port which tinyproxy will listen on. Please note +# that should you choose to run on a port lower than 1024 you will need +# to start tinyproxy using root. +# +Port 8888 + +# +# Listen: If you have multiple interfaces this allows you to bind to +# only one. If this is commented out, tinyproxy will bind to all +# interfaces present. +# +#Listen 192.168.0.1 + +# +# Bind: This allows you to specify which interface will be used for +# outgoing connections. This is useful for multi-home'd machines where +# you want all traffic to appear outgoing from one particular interface. +# +#Bind 192.168.0.1 + +# +# BindSame: If enabled, tinyproxy will bind the outgoing connection to the +# ip address of the incoming connection. +# +#BindSame yes + +# +# Timeout: The maximum number of seconds of inactivity a connection is +# allowed to have before it is closed by tinyproxy. +# +Timeout 600 + +# +# ErrorFile: Defines the HTML file to send when a given HTTP error +# occurs. You will probably need to customize the location to your +# particular install. The usual locations to check are: +# /usr/local/share/tinyproxy +# /usr/share/tinyproxy +# /etc/tinyproxy +# +#ErrorFile 404 "/usr/share/tinyproxy/404.html" +#ErrorFile 400 "/usr/share/tinyproxy/400.html" +#ErrorFile 503 "/usr/share/tinyproxy/503.html" +#ErrorFile 403 "/usr/share/tinyproxy/403.html" +#ErrorFile 408 "/usr/share/tinyproxy/408.html" + +# +# DefaultErrorFile: The HTML file that gets sent if there is no +# HTML file defined with an ErrorFile keyword for the HTTP error +# that has occured. +# +DefaultErrorFile "/usr/share/tinyproxy/default.html" + +# +# StatHost: This configures the host name or IP address that is treated +# as the stat host: Whenever a request for this host is received, +# Tinyproxy will return an internal statistics page instead of +# forwarding the request to that host. The default value of StatHost is +# tinyproxy.stats. +# +#StatHost "tinyproxy.stats" +# + +# +# StatFile: The HTML file that gets sent when a request is made +# for the stathost. If this file doesn't exist a basic page is +# hardcoded in tinyproxy. +# +StatFile "/usr/share/tinyproxy/stats.html" + +# +# LogFile: Allows you to specify the location where information should +# be logged to. If you would prefer to log to syslog, then disable this +# and enable the Syslog directive. These directives are mutually +# exclusive. +# +#LogFile "/var/log/tinyproxy/tinyproxy.log" + +# +# Syslog: Tell tinyproxy to use syslog instead of a logfile. This +# option must not be enabled if the Logfile directive is being used. +# These two directives are mutually exclusive. +# +#Syslog On + +# +# LogLevel: +# +# Set the logging level. Allowed settings are: +# Critical (least verbose) +# Error +# Warning +# Notice +# Connect (to log connections without Info's noise) +# Info (most verbose) +# +# The LogLevel logs from the set level and above. For example, if the +# LogLevel was set to Warning, then all log messages from Warning to +# Critical would be output, but Notice and below would be suppressed. +# +LogLevel Info + +# +# PidFile: Write the PID of the main tinyproxy thread to this file so it +# can be used for signalling purposes. +# +PidFile "/var/run/tinyproxy/tinyproxy.pid" + +# +# XTinyproxy: Tell Tinyproxy to include the X-Tinyproxy header, which +# contains the client's IP address. +# +#XTinyproxy Yes + +# +# Upstream: +# +# Turns on upstream proxy support. +# +# The upstream rules allow you to selectively route upstream connections +# based on the host/domain of the site being accessed. +# +# For example: +# # connection to test domain goes through testproxy +# upstream testproxy:8008 ".test.domain.invalid" +# upstream testproxy:8008 ".our_testbed.example.com" +# upstream testproxy:8008 "192.168.128.0/255.255.254.0" +# +# # no upstream proxy for internal websites and unqualified hosts +# no upstream ".internal.example.com" +# no upstream "www.example.com" +# no upstream "10.0.0.0/8" +# no upstream "192.168.0.0/255.255.254.0" +# no upstream "." +# +# # connection to these boxes go through their DMZ firewalls +# upstream cust1_firewall:8008 "testbed_for_cust1" +# upstream cust2_firewall:8008 "testbed_for_cust2" +# +# # default upstream is internet firewall +# upstream firewall.internal.example.com:80 +# +# The LAST matching rule wins the route decision. As you can see, you +# can use a host, or a domain: +# name matches host exactly +# .name matches any host in domain "name" +# . matches any host with no domain (in 'empty' domain) +# IP/bits matches network/mask +# IP/mask matches network/mask +# +#Upstream some.remote.proxy:port + +# +# MaxClients: This is the absolute highest number of threads which will +# be created. In other words, only MaxClients number of clients can be +# connected at the same time. +# +MaxClients 100 + +# +# MinSpareServers/MaxSpareServers: These settings set the upper and +# lower limit for the number of spare servers which should be available. +# +# If the number of spare servers falls below MinSpareServers then new +# server processes will be spawned. If the number of servers exceeds +# MaxSpareServers then the extras will be killed off. +# +MinSpareServers 5 +MaxSpareServers 20 + +# +# StartServers: The number of servers to start initially. +# +StartServers 10 + +# +# MaxRequestsPerChild: The number of connections a thread will handle +# before it is killed. In practise this should be set to 0, which +# disables thread reaping. If you do notice problems with memory +# leakage, then set this to something like 10000. +# +MaxRequestsPerChild 0 + +# +# Allow: Customization of authorization controls. If there are any +# access control keywords then the default action is to DENY. Otherwise, +# the default action is ALLOW. +# +# The order of the controls are important. All incoming connections are +# tested against the controls based on order. +# +Allow 127.0.0.1 + +# +# AddHeader: Adds the specified headers to outgoing HTTP requests that +# Tinyproxy makes. Note that this option will not work for HTTPS +# traffic, as Tinyproxy has no control over what headers are exchanged. +# +#AddHeader "X-My-Header" "Powered by Tinyproxy" + +# +# ViaProxyName: The "Via" header is required by the HTTP RFC, but using +# the real host name is a security concern. If the following directive +# is enabled, the string supplied will be used as the host name in the +# Via header; otherwise, the server's host name will be used. +# +ViaProxyName "tinyproxy" + +# +# DisableViaHeader: When this is set to yes, Tinyproxy does NOT add +# the Via header to the requests. This virtually puts Tinyproxy into +# stealth mode. Note that RFC 2616 requires proxies to set the Via +# header, so by enabling this option, you break compliance. +# Don't disable the Via header unless you know what you are doing... +# +#DisableViaHeader Yes + +# +# Filter: This allows you to specify the location of the filter file. +# +#Filter "/etc/filter" + +# +# FilterURLs: Filter based on URLs rather than domains. +# +#FilterURLs On + +# +# FilterExtended: Use POSIX Extended regular expressions rather than +# basic. +# +#FilterExtended On + +# +# FilterCaseSensitive: Use case sensitive regular expressions. +# +#FilterCaseSensitive On + +# +# FilterDefaultDeny: Change the default policy of the filtering system. +# If this directive is commented out, or is set to "No" then the default +# policy is to allow everything which is not specifically denied by the +# filter file. +# +# However, by setting this directive to "Yes" the default policy becomes +# to deny everything which is _not_ specifically allowed by the filter +# file. +# +#FilterDefaultDeny Yes + +# +# Anonymous: If an Anonymous keyword is present, then anonymous proxying +# is enabled. The headers listed are allowed through, while all others +# are denied. If no Anonymous keyword is present, then all headers are +# allowed through. You must include quotes around the headers. +# +# Most sites require cookies to be enabled for them to work correctly, so +# you will need to allow Cookies through if you access those sites. +# +#Anonymous "Host" +#Anonymous "Authorization" +#Anonymous "Cookie" + +# +# ConnectPort: This is a list of ports allowed by tinyproxy when the +# CONNECT method is used. To disable the CONNECT method altogether, set +# the value to 0. If no ConnectPort line is found, all ports are +# allowed (which is not very secure.) +# +# The following two ports are used by SSL. +# +ConnectPort 443 +ConnectPort 563 + +# +# Configure one or more ReversePath directives to enable reverse proxy +# support. With reverse proxying it's possible to make a number of +# sites appear as if they were part of a single site. +# +# If you uncomment the following two directives and run tinyproxy +# on your own computer at port 8888, you can access Google using +# http://localhost:8888/google/ and Wired News using +# http://localhost:8888/wired/news/. Neither will actually work +# until you uncomment ReverseMagic as they use absolute linking. +# +#ReversePath "/google/" "http://www.google.com/" +#ReversePath "/wired/" "http://www.wired.com/" + +# +# When using tinyproxy as a reverse proxy, it is STRONGLY recommended +# that the normal proxy is turned off by uncommenting the next directive. +# +#ReverseOnly Yes + +# +# Use a cookie to track reverse proxy mappings. If you need to reverse +# proxy sites which have absolute links you must uncomment this. +# +#ReverseMagic Yes + +# +# The URL that's used to access this reverse proxy. The URL is used to +# rewrite HTTP redirects so that they won't escape the proxy. If you +# have a chain of reverse proxies, you'll need to put the outermost +# URL here (the address which the end user types into his/her browser). +# +# If not set then no rewriting occurs. +# +#ReverseBaseURL "http://localhost:8888/" + + + diff --git a/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service index df427457..78df437f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service +++ b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service @@ -3,12 +3,12 @@ Description=Tinyproxy, Lightweight http(s) proxy daemon RequiresMountsFor=/var [Service] -Group=tinyproxy ExecStartPre=/bin/mkdir -p /var/log/tinyproxy -ExecStartPre=/bin/chown -R nobody.tinyproxy /var/log/tinyproxy +ExecStartPre=/bin/chown -R tinyproxy.nogroup /var/log/tinyproxy ExecStartPre=/bin/mkdir -p /var/run/tinyproxy -ExecStartPre=/bin/chown -R nobody.tinyproxy /var/run/tinyproxy +ExecStartPre=/bin/chown -R tinyproxy.nogroup /var/run/tinyproxy ExecStart=/usr/bin/tinyproxy -d +PIDFile=/var/run/tinyproxy/tinyproxy.pid [Install] WantedBy=multi-user.target diff --git a/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb index 144dcf33..7d97f52a 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb @@ -4,8 +4,10 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.gz \ - file://disable-documentation.patch \ - file://tinyproxy.service" + file://disable-documentation.patch \ + file://tinyproxy.service \ + file://tinyproxy.conf \ + " SRC_URI[md5sum] = "423047c8dc53a15e19f78e238198549c" SRC_URI[sha256sum] = "6020955e6a0ef0ef898ad5bb17a448c47f9e4c003c464b4ae7c4dba063272055" @@ -23,7 +25,7 @@ inherit autotools systemd useradd #User specific USERADD_PACKAGES = "${PN}" USERADD_PARAM_${PN} = "--system --home /dev/null \ - --no-user-group --gid nogroup tinypoxy" + --no-user-group --gid nogroup tinyproxy" SYSTEMD_PACKAGES += "${BPN}" SYSTEMD_SERVICE_${PN} = "tinyproxy.service" @@ -34,4 +36,5 @@ do_install_append() { install -d ${D}${systemd_system_unitdir} install -m 0644 ${WORKDIR}/tinyproxy.service ${D}${systemd_system_unitdir} fi + install -m 0644 ${WORKDIR}/tinyproxy.conf ${D}${sysconfdir}/tinyproxy.conf } diff --git a/external/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb b/external/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb index 8f17d3fd..19bbf03f 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb @@ -13,6 +13,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ inherit update-alternatives +UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/traceroute/files/traceroute/" + SRC_URI = "${SOURCEFORGE_MIRROR}/traceroute/traceroute/${BP}/${BP}.tar.gz \ file://filter-out-the-patches-from-subdirs.patch \ " diff --git a/external/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.8.bb b/external/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.10.2.bb index 0bbdd6b1..8e35ee13 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.8.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.10.2.bb @@ -1,13 +1,14 @@ DESCRIPTION = "Encrypted UDP based FTP with multicast" HOMEPAGE = "https://sourceforge.net/projects/uftp-multicast" SECTION = "libs/network" - LICENSE = "GPLv3" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d32239bcb673463ab874e80d47fae504" +UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/uftp-multicast/files/source-tar/" + SRC_URI = "${SOURCEFORGE_MIRROR}/uftp-multicast/source-tar/uftp-${PV}.tar.gz" -SRC_URI[md5sum] = "f7a5affd3000b5aafbb13df49719b6c0" -SRC_URI[sha256sum] = "e98c6318e497124d777ca71eae752d213207c35de9f782c8bcaaf82ece20e599" +SRC_URI[md5sum] = "db0519bf7b1e0329449e81c1e68262f8" +SRC_URI[sha256sum] = "ecab6ab07fe0ebaf7bfe35d99fe2da28ede3ddc6f21f825d3b259cf171258505" DEPENDS = "openssl" diff --git a/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch b/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch new file mode 100644 index 00000000..46f6a7b3 --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch @@ -0,0 +1,78 @@ +From 186ac39de8eb9aedcf3d87cdbe389d10cde03d66 Mon Sep 17 00:00:00 2001 +From: Beniamin Sandu <beniaminsandu@gmail.com> +Date: Tue, 16 Jul 2019 19:59:23 +0300 +Subject: [PATCH] contrib: add yocto compatible startup scripts + +Signed-off-by: Beniamin Sandu <beniaminsandu@gmail.com> +--- + contrib/unbound.init | 10 +++++----- + contrib/unbound.service.in | 4 ++-- + 2 files changed, 7 insertions(+), 7 deletions(-) + mode change 100644 => 100755 contrib/unbound.init + +diff --git a/contrib/unbound.init b/contrib/unbound.init +old mode 100644 +new mode 100755 +index cccadecc..4eba752b +--- a/contrib/unbound.init ++++ b/contrib/unbound.init +@@ -19,11 +19,11 @@ + ### END INIT INFO + + # Source function library. +-. /etc/rc.d/init.d/functions ++. /etc/init.d/functions + + exec="/usr/sbin/unbound" + prog="unbound" +-config="/var/unbound/unbound.conf" ++config="/etc/unbound/unbound.conf" + pidfile="/var/unbound/unbound.pid" + rootdir="/var/unbound" + +@@ -61,7 +61,7 @@ start() { + fi; + + # if not running, start it up here +- daemon $exec ++ daemonize $exec + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile +@@ -71,7 +71,7 @@ start() { + stop() { + echo -n $"Stopping $prog: " + # stop it here, often "killproc $prog" +- killproc -p $pidfile $prog ++ killproc $prog + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile +@@ -99,7 +99,7 @@ force_reload() { + + rh_status() { + # run checks to determine if the service is running or use generic status +- status -p $pidfile $prog ++ status $prog + } + + rh_status_q() { +diff --git a/contrib/unbound.service.in b/contrib/unbound.service.in +index 95976dd9..0e7f79a9 100644 +--- a/contrib/unbound.service.in ++++ b/contrib/unbound.service.in +@@ -10,9 +10,9 @@ WantedBy=multi-user.target + + [Service] + ExecReload=/bin/kill -HUP $MAINPID +-ExecStart=@UNBOUND_SBIN_DIR@/unbound ++ExecStart=@UNBOUND_SBIN_DIR@/unbound -d + NotifyAccess=main +-Type=notify ++Type=simple + CapabilityBoundingSet=CAP_IPC_LOCK CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_CHROOT CAP_SYS_RESOURCE + MemoryDenyWriteExecute=true + NoNewPrivileges=true +-- +2.17.1 + diff --git a/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.4.bb b/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.4.bb new file mode 100644 index 00000000..6200214a --- /dev/null +++ b/external/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.4.bb @@ -0,0 +1,46 @@ +SUMMARY = "Unbound is a validating, recursive, and caching DNS resolver" +DESCRIPTION = "Unbound's design is a set of modular components which incorporate \ + features including enhanced security (DNSSEC) validation, Internet Protocol \ + Version 6 (IPv6), and a client resolver library API as an integral part of the \ + architecture" + +HOMEPAGE = "https://www.unbound.net/" +SECTION = "net" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=5308494bc0590c0cb036afd781d78f06" + +SRC_URI = "git://github.com/NLnetLabs/unbound.git;protocol=http;branch=master \ + file://0001-contrib-add-yocto-compatible-startup-scripts.patch \ +" +SRCREV="b60c4a472c856f0a98120b7259e991b3a6507eb5" + +inherit autotools pkgconfig systemd update-rc.d + +DEPENDS = "openssl libevent libtool-native bison-native expat" +RDEPENDS_${PN} = "bash openssl-bin daemonize" + +S = "${WORKDIR}/git" + +EXTRA_OECONF = "--with-libexpat=${STAGING_EXECPREFIXDIR} \ + --with-ssl=${STAGING_EXECPREFIXDIR} \ + libtool=${HOST_SYS}-libtool \ +" + + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'largefile systemd', d)}" +PACKAGECONFIG[dnscrypt] = "--enable-dnscrypt, --disable-dnscrypt, libsodium" +PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,," +PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd" + +do_install_append() { + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${B}/contrib/unbound.service ${D}${systemd_unitdir}/system + + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${S}/contrib/unbound.init ${D}${sysconfdir}/init.d/unbound +} + +SYSTEMD_SERVICE_${PN} = "${BPN}.service" + +INITSCRIPT_NAME = "unbound" +INITSCRIPT_PARAMS = "defaults" diff --git a/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch b/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch deleted file mode 100644 index e65ef9b1..00000000 --- a/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 1a6a5d2bcb1adec9ba138c2ebee7bbc994620aff Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 12 Jun 2018 23:23:44 -0700 -Subject: [PATCH] Add libm to link for fmod() API - -fixes -ld: CMakeFiles/tshark.dir/ui/cli/tap-comparestat.c.o: undefined reference to symbol 'fmod@@GLIBC_2.2.5' -| /mnt/a/oe/build/tmp/work/core2-64-bec-linux/wireshark/1_2.6.1-r0/recipe-sysroot/lib/libm.so.6: error adding symbols: DSO missing from command line - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - CMakeLists.txt | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7950e85..acee140 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -2494,6 +2494,7 @@ if(BUILD_tshark) - ${LIBEPAN_LIBS} - ${APPLE_CORE_FOUNDATION_LIBRARY} - ${APPLE_SYSTEM_CONFIGURATION_LIBRARY} -+ m - ) - set(tshark_FILES - capture_opts.c --- -2.17.1 - diff --git a/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_2.6.10.bb b/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.2.4.bb index 1bda9ed4..c3caaefd 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_2.6.10.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.2.4.bb @@ -8,26 +8,18 @@ DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bi DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native " -SRC_URI = "https://1.as.dl.wireshark.org/src/all-versions/${BP}.tar.xz \ - file://0001-Add-libm-to-link-for-fmod-API.patch \ - " +SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz" UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src" -SRC_URI[md5sum] = "4fd0cd96d990eab0e708339a5e0dc207" -SRC_URI[sha256sum] = "b8fc32244352437db727a4517371dddfa9ffbf0057cfb58265588876b42b6c7e" +SRC_URI[md5sum] = "4bbee1bdd5b88343733590fabfffddf3" +SRC_URI[sha256sum] = "d17d461e849e2d0b033431c45f71d8ee8ec3c8faa232a6ad63069a47927db8aa" PE = "1" -inherit cmake pkgconfig pythonnative perlnative upstream-version-is-even - -ARM_INSTRUCTION_SET = "arm" - -# Options: gtk+, gtk+3 and qt5 -GTK = "gtk+3" +inherit cmake pkgconfig python3native perlnative upstream-version-is-even mime mime-xdg PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc" -PACKAGECONFIG_append_class-target = " ${@bb.utils.contains("DISTRO_FEATURES", "x11", " ${GTK}", "", d)}" PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh" @@ -36,8 +28,6 @@ PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DE PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi" PACKAGECONFIG[libnl] = ",,libnl" PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19" -PACKAGECONFIG[gtk+] = "-DENABLE_GTK=ON -DBUILD_wireshark_gtk=ON, -DENABLE_GTK=OFF, gtk+" -PACKAGECONFIG[gtk+3] = "-DENABLE_GTK3=ON -DBUILD_wireshark_gtk=ON, -DENABLE_GTK3=OFF, gtk+3" PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls" PACKAGECONFIG[ssl] = ",,openssl" PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5" @@ -51,7 +41,9 @@ PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4" # these next two options require addional layers PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares" -PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qtbase" +PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg" + +inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)} EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \ -DBUILD_mmdbresolve=OFF \ @@ -79,16 +71,11 @@ do_install_append_class-target() { } PACKAGE_BEFORE_PN += "tshark" -PACKAGE_BEFORE_PN += "${PN}-gtk" FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*" -FILES_${PN}-gtk = "${bindir}/wireshark-gtk ${datadir}/icons ${datadir}/appdata \ - ${datadir}/applications ${datadir}/wireshark ${datadir}/mime \ - ${mandir}/man1/wireshark.* " FILES_${PN} += "${datadir}*" RDEPENDS_tshark = "wireshark" -RDEPENDS_${PN}-gtk = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "${GTK}", "", d)} wireshark" BBCLASSEXTEND = "native" diff --git a/external/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb b/external/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb index b6d2f692..bab75fee 100644 --- a/external/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb +++ b/external/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb @@ -8,10 +8,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4cfd939b1d7e6aba9fcefb7f6e2fd45d" DEPENDS = "libnl" -PV = "0.8+git${SRCPV}" -SRC_URI = "git://github.com/linux-wpan/wpan-tools \ - " -SRCREV = "3f473f5136f89773997cb4fff2d8ed647734e2f5" +SRC_URI = "git://github.com/linux-wpan/wpan-tools" +SRCREV = "a316ca2caa746d60817400e5bf646c2820f09273" S = "${WORKDIR}/git" |