diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-11-07 13:31:53 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-11-07 13:31:53 +0000 |
| commit | 8c22ff0d8b70d9b12f0487ef696a7e915b9e3173 (patch) | |
| tree | efdc32587159d0050a69009bdf2330a531727d95 /meta/recipes-extended | |
| parent | d412d2747595c1cc4a5e3ca975e3adc31b2f7891 (diff) | |
| download | poky-8c22ff0d8b70d9b12f0487ef696a7e915b9e3173.tar.gz | |
The poky repository master branch is no longer being updated.
You can either:
a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs
b) use the new bitbake-setup
You can find information about either approach in our documentation:
https://docs.yoctoproject.org/
Note that "poky" the distro setting is still available in meta-yocto as
before and we continue to use and maintain that.
Long live Poky!
Some further information on the background of this change can be found
in: https://lists.openembedded.org/g/openembedded-architecture/message/2179
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended')
350 files changed, 0 insertions, 21291 deletions
diff --git a/meta/recipes-extended/acpica/acpica_20250807.bb b/meta/recipes-extended/acpica/acpica_20250807.bb deleted file mode 100644 index f6ee3285a1..0000000000 --- a/meta/recipes-extended/acpica/acpica_20250807.bb +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | SUMMARY = "ACPICA tools for the development and debug of ACPI tables" | ||
| 2 | DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ | ||
| 3 | OS-independent reference implementation of the Advanced Configuration and \ | ||
| 4 | Power Interface Specification (ACPI). ACPICA code contains those portions of \ | ||
| 5 | ACPI meant to be directly integrated into the host OS as a kernel-resident \ | ||
| 6 | subsystem, and a small set of tools to assist in developing and debugging \ | ||
| 7 | ACPI tables." | ||
| 8 | |||
| 9 | HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/topic-technology/open/acpica/overview.html" | ||
| 10 | SECTION = "console/tools" | ||
| 11 | |||
| 12 | LICENSE = "Intel | BSD-3-Clause | GPL-2.0-only" | ||
| 13 | LIC_FILES_CHKSUM = "file://source/compiler/aslcompile.c;beginline=7;endline=150;md5=8566a414d226d05b68e41f30698f9624" | ||
| 14 | |||
| 15 | COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" | ||
| 16 | |||
| 17 | DEPENDS = "m4-native flex-native bison-native" | ||
| 18 | |||
| 19 | SRC_URI = "git://github.com/acpica/acpica;protocol=https;branch=master;tag=${PV}" | ||
| 20 | SRCREV = "aa98db3bd149fc1f8d2a3017cb05b6b1982c3296" | ||
| 21 | |||
| 22 | inherit update-alternatives | ||
| 23 | |||
| 24 | ALTERNATIVE_PRIORITY = "100" | ||
| 25 | ALTERNATIVE:${PN} = "acpixtract acpidump" | ||
| 26 | |||
| 27 | EXTRA_OEMAKE = "CC='${CC}' \ | ||
| 28 | OPT_CFLAGS=-Wall \ | ||
| 29 | DESTDIR=${D} \ | ||
| 30 | PREFIX=${prefix} \ | ||
| 31 | INSTALLDIR=${bindir} \ | ||
| 32 | INSTALLFLAGS= \ | ||
| 33 | YACC=bison \ | ||
| 34 | YFLAGS='-y --file-prefix-map=${WORKDIR}=${TARGET_DBGSRC_DIR}' \ | ||
| 35 | " | ||
| 36 | |||
| 37 | do_install() { | ||
| 38 | oe_runmake install | ||
| 39 | } | ||
| 40 | |||
| 41 | # iasl*.bb is a subset of this recipe, so RREPLACE it | ||
| 42 | PROVIDES = "iasl" | ||
| 43 | RPROVIDES:${PN} += "iasl" | ||
| 44 | RREPLACES:${PN} += "iasl" | ||
| 45 | RCONFLICTS:${PN} += "iasl" | ||
| 46 | |||
| 47 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/asciidoc/asciidoc_10.2.1.bb b/meta/recipes-extended/asciidoc/asciidoc_10.2.1.bb deleted file mode 100644 index 848c380363..0000000000 --- a/meta/recipes-extended/asciidoc/asciidoc_10.2.1.bb +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | SUMMARY = "Tool for creating HTML, PDF, EPUB, man pages" | ||
| 2 | DESCRIPTION = "AsciiDoc is a text document format for writing short documents, \ | ||
| 3 | articles, books and UNIX man pages." | ||
| 4 | |||
| 5 | HOMEPAGE = "http://asciidoc.org/" | ||
| 6 | |||
| 7 | LICENSE = "GPL-2.0-only" | ||
| 8 | LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=aaee33adce0fc7cc40fee23f82f7f101 \ | ||
| 9 | file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 10 | " | ||
| 11 | |||
| 12 | SRC_URI = "git://github.com/asciidoc/asciidoc-py;protocol=https;branch=main" | ||
| 13 | SRCREV = "21e33efe96ba9a51d99d1150691dae750afd6ed1" | ||
| 14 | |||
| 15 | DEPENDS = "libxml2-native libxslt-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native" | ||
| 16 | |||
| 17 | # Tell xmllint where to find the DocBook XML catalogue, because right now it | ||
| 18 | # opens /etc/xml/catalog on the host. Depends on auto-catalogs.patch | ||
| 19 | export SGML_CATALOG_FILES = "file://${STAGING_ETCDIR_NATIVE}/xml/catalog" | ||
| 20 | |||
| 21 | inherit setuptools3 | ||
| 22 | CLEANBROKEN = "1" | ||
| 23 | |||
| 24 | BBCLASSEXTEND = "native nativesdk" | ||
| 25 | |||
| 26 | UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))$" | ||
diff --git a/meta/recipes-extended/at/at/0001-remove-glibc-assumption.patch b/meta/recipes-extended/at/at/0001-remove-glibc-assumption.patch deleted file mode 100644 index fd57f94cd5..0000000000 --- a/meta/recipes-extended/at/at/0001-remove-glibc-assumption.patch +++ /dev/null | |||
| @@ -1,56 +0,0 @@ | |||
| 1 | From f446686916e503dfb9fb928252d1b72a07573b29 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Dengke Du <dengke.du@windriver.com> | ||
| 3 | Date: Tue, 18 Jul 2017 03:42:56 -0400 | ||
| 4 | Subject: [PATCH] remove glibc assumption | ||
| 5 | |||
| 6 | glibc time.h header has an undocumented __isleap macro | ||
| 7 | that we are using anf musl is missing it. | ||
| 8 | Since it is undocumented & does not appear | ||
| 9 | on any other libc, stop using it and just define the macro in | ||
| 10 | locally instead. | ||
| 11 | |||
| 12 | Upstream-Status: Submitted [ https://lists.debian.org/debian-accessibility/2017/07/msg00044.html ] | ||
| 13 | |||
| 14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 15 | |||
| 16 | Signed-off-by: Dengke Du <dengke.du@windriver.com> | ||
| 17 | --- | ||
| 18 | parsetime.y | 11 +++++++---- | ||
| 19 | 1 file changed, 7 insertions(+), 4 deletions(-) | ||
| 20 | |||
| 21 | Index: at-3.2.1/parsetime.y | ||
| 22 | =================================================================== | ||
| 23 | --- at-3.2.1.orig/parsetime.y | ||
| 24 | +++ at-3.2.1/parsetime.y | ||
| 25 | @@ -14,6 +14,9 @@ | ||
| 26 | ((y) % 4 == 0 && ((y) % 100 != 0 || (y) % 400 == 0)) | ||
| 27 | #endif | ||
| 28 | |||
| 29 | +#define is_leap_year(y) \ | ||
| 30 | + ((y) % 4 == 0 && ((y) % 100 != 0 || (y) % 400 == 0)) | ||
| 31 | + | ||
| 32 | struct tm exectm; | ||
| 33 | static int isgmt; | ||
| 34 | static char *tz = NULL; | ||
| 35 | @@ -230,8 +233,8 @@ date : month_name day_number | ||
| 36 | mnum == 12) && dnum > 31) | ||
| 37 | || ((mnum == 4 || mnum == 6 || mnum == 9 || | ||
| 38 | mnum == 11) && dnum > 30) | ||
| 39 | - || (mnum == 2 && dnum > 29 && __isleap(ynum+1900)) | ||
| 40 | - || (mnum == 2 && dnum > 28 && !__isleap(ynum+1900)) | ||
| 41 | + || (mnum == 2 && dnum > 29 && is_leap_year(ynum+1900)) | ||
| 42 | + || (mnum == 2 && dnum > 28 && !is_leap_year(ynum+1900)) | ||
| 43 | ) | ||
| 44 | { | ||
| 45 | yyerror("Error in day of month"); | ||
| 46 | @@ -274,8 +277,8 @@ date : month_name day_number | ||
| 47 | mnum == 12) && dnum > 31) | ||
| 48 | || ((mnum == 4 || mnum == 6 || mnum == 9 || | ||
| 49 | mnum == 11) && dnum > 30) | ||
| 50 | - || (mnum == 2 && dnum > 29 && __isleap(ynum+1900)) | ||
| 51 | - || (mnum == 2 && dnum > 28 && !__isleap(ynum+1900)) | ||
| 52 | + || (mnum == 2 && dnum > 29 && is_leap_year(ynum+1900)) | ||
| 53 | + || (mnum == 2 && dnum > 28 && !is_leap_year(ynum+1900)) | ||
| 54 | ) | ||
| 55 | { | ||
| 56 | yyerror("Error in day of month"); | ||
diff --git a/meta/recipes-extended/at/at/atd.init b/meta/recipes-extended/at/at/atd.init deleted file mode 100644 index eca379b3cd..0000000000 --- a/meta/recipes-extended/at/at/atd.init +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # | ||
| 3 | # Starts at daemon | ||
| 4 | # | ||
| 5 | |||
| 6 | umask 077 | ||
| 7 | |||
| 8 | # Source function library. | ||
| 9 | . /etc/init.d/functions | ||
| 10 | |||
| 11 | start() { | ||
| 12 | echo -n "Starting atd: " | ||
| 13 | start-stop-daemon --start --quiet --pidfile /var/run/atd.pid --background --exec /usr/sbin/atd -- -f | ||
| 14 | echo "OK" | ||
| 15 | } | ||
| 16 | stop() { | ||
| 17 | echo -n "Stopping atd: " | ||
| 18 | start-stop-daemon --stop --quiet --pidfile /var/run/atd.pid | ||
| 19 | echo "OK" | ||
| 20 | } | ||
| 21 | restart() { | ||
| 22 | stop | ||
| 23 | start | ||
| 24 | } | ||
| 25 | |||
| 26 | case "$1" in | ||
| 27 | start) | ||
| 28 | start | ||
| 29 | ;; | ||
| 30 | stop) | ||
| 31 | stop | ||
| 32 | ;; | ||
| 33 | restart|reload) | ||
| 34 | restart | ||
| 35 | ;; | ||
| 36 | status) | ||
| 37 | status /usr/sbin/atd | ||
| 38 | ;; | ||
| 39 | *) | ||
| 40 | echo $"Usage: $0 {start|stop|restart|status}" | ||
| 41 | exit 1 | ||
| 42 | esac | ||
| 43 | |||
| 44 | exit $? | ||
| 45 | |||
diff --git a/meta/recipes-extended/at/at/atd.service b/meta/recipes-extended/at/at/atd.service deleted file mode 100644 index 6dc844504a..0000000000 --- a/meta/recipes-extended/at/at/atd.service +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=Job spooling tools | ||
| 3 | After=syslog.target | ||
| 4 | |||
| 5 | [Service] | ||
| 6 | ExecStart=@SBINDIR@/atd -f | ||
| 7 | |||
| 8 | [Install] | ||
| 9 | WantedBy=multi-user.target | ||
diff --git a/meta/recipes-extended/at/at/configure-add-enable-pam.patch b/meta/recipes-extended/at/at/configure-add-enable-pam.patch deleted file mode 100644 index 1e5efef128..0000000000 --- a/meta/recipes-extended/at/at/configure-add-enable-pam.patch +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | Upstream-Status: Pending | ||
| 2 | |||
| 3 | --- at-3.1.12/configure.ac 2011-06-23 14:51:03.653572945 +0800 | ||
| 4 | +++ at-3.1.12/configure.ac.new 2011-06-27 16:12:14.903572945 +0800 | ||
| 5 | @@ -81,10 +81,18 @@ | ||
| 6 | AC_FUNC_VPRINTF | ||
| 7 | AC_FUNC_GETLOADAVG | ||
| 8 | AC_CHECK_FUNCS(getcwd mktime strftime setreuid setresuid sigaction waitpid) | ||
| 9 | + | ||
| 10 | +AC_ARG_WITH([pam], | ||
| 11 | + [AS_HELP_STRING([--without-pam], [without PAM support])]) | ||
| 12 | + | ||
| 13 | +if test "x$with_pam" != xno; then | ||
| 14 | AC_CHECK_HEADERS(security/pam_appl.h, [ | ||
| 15 | PAMLIB="-lpam" | ||
| 16 | - AC_DEFINE(HAVE_PAM, 1, [Define to 1 for PAM support]) | ||
| 17 | -]) | ||
| 18 | + AC_DEFINE(HAVE_PAM, 1, [Define to 1 for PAM support])], | ||
| 19 | + [if test "x$with_pam" = xyes; then | ||
| 20 | + AC_MSG_ERROR([PAM selected but security/pam_misc.h not found]) | ||
| 21 | + fi]) | ||
| 22 | +fi | ||
| 23 | |||
| 24 | dnl Checking for programs | ||
| 25 | |||
diff --git a/meta/recipes-extended/at/at/file_replacement_with_gplv2.patch b/meta/recipes-extended/at/at/file_replacement_with_gplv2.patch deleted file mode 100644 index 11023bdf52..0000000000 --- a/meta/recipes-extended/at/at/file_replacement_with_gplv2.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | Upstream-Status: Inappropriate [licensing] | ||
| 2 | |||
| 3 | posixtm.[ch] files are replaced with gplv2 version from these locations: | ||
| 4 | |||
| 5 | http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/posixtm.c;hb=5661ab9d49512b4cf3c19caa11bb581d8ce561ba | ||
| 6 | http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/posixtm.h;hb=5661ab9d49512b4cf3c19caa11bb581d8ce561ba | ||
| 7 | |||
| 8 | update the Copyright file information to reflect the replaced files. | ||
| 9 | |||
| 10 | Date: 2010/08/31 | ||
| 11 | Nitin A Kamble nitin.a.kamble@intel.com | ||
| 12 | |||
| 13 | Index: at-3.2.1/Copyright | ||
| 14 | =================================================================== | ||
| 15 | --- at-3.2.1.orig/Copyright | ||
| 16 | +++ at-3.2.1/Copyright | ||
| 17 | @@ -34,10 +34,10 @@ The files posixtm.c and posixtm.h have t | ||
| 18 | Copyright (C) 1989, 1990, 1991, 1998, 2000, 2001, 2002, 2003, 2004, | ||
| 19 | 2005, 2006, 2007 Free Software Foundation Inc. | ||
| 20 | |||
| 21 | - This program is free software: you can redistribute it and/or modify | ||
| 22 | + This program is free software; you can redistribute it and/or modify | ||
| 23 | it under the terms of the GNU General Public License as published by | ||
| 24 | - the Free Software Foundation; either version 3 of the License, or | ||
| 25 | - (at your option) any later version. | ||
| 26 | + the Free Software Foundation; either version 2, or (at your option) | ||
| 27 | + any later version. | ||
| 28 | |||
| 29 | This program is distributed in the hope that it will be useful, | ||
| 30 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
diff --git a/meta/recipes-extended/at/at/makefile-fix-parallel.patch b/meta/recipes-extended/at/at/makefile-fix-parallel.patch deleted file mode 100644 index adb8652053..0000000000 --- a/meta/recipes-extended/at/at/makefile-fix-parallel.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From 150b63a936af71b992a3a7b0fc2d2497e51fc800 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Robert Yang <liezhi.yang@windriver.com> | ||
| 3 | Date: Wed, 28 Jan 2015 23:52:00 -0800 | ||
| 4 | Subject: [PATCH] Makefile: fix for parallel build | ||
| 5 | |||
| 6 | Fixed: | ||
| 7 | y.tab.c:1001:0: error: unterminated #if | ||
| 8 | |||
| 9 | Let "$(YACC) -d parsetime.y" only run once will fix the problem. | ||
| 10 | |||
| 11 | Upstream-Status: Pending | ||
| 12 | |||
| 13 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
| 14 | --- | ||
| 15 | Makefile | 4 +++- | ||
| 16 | 1 file changed, 3 insertions(+), 1 deletion(-) | ||
| 17 | |||
| 18 | Index: at-3.2.1/Makefile.in | ||
| 19 | =================================================================== | ||
| 20 | --- at-3.2.1.orig/Makefile.in | ||
| 21 | +++ at-3.2.1/Makefile.in | ||
| 22 | @@ -77,7 +77,9 @@ at: $(ATOBJECTS) | ||
| 23 | atd: $(RUNOBJECTS) | ||
| 24 | $(CC) $(LDFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB) $(SELINUXLIB) | ||
| 25 | |||
| 26 | -y.tab.c y.tab.h: parsetime.y | ||
| 27 | +y.tab.h: y.tab.c | ||
| 28 | + | ||
| 29 | +y.tab.c: parsetime.y | ||
| 30 | $(YACC) -d parsetime.y | ||
| 31 | |||
| 32 | lex.yy.c: parsetime.l | ||
diff --git a/meta/recipes-extended/at/at/pam.conf.patch b/meta/recipes-extended/at/at/pam.conf.patch deleted file mode 100644 index 38e7fc1b7d..0000000000 --- a/meta/recipes-extended/at/at/pam.conf.patch +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | From 8c8a0b6ba199327d2eafefd6611353e1c483a854 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Wed, 5 Dec 2018 10:00:36 +0800 | ||
| 4 | Subject: [PATCH] fix pam.conf | ||
| 5 | |||
| 6 | oe doesn't support "@include", use the concrete directive instead. | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | |||
| 10 | Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> | ||
| 11 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 12 | --- | ||
| 13 | pam.conf | 6 +++--- | ||
| 14 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/pam.conf b/pam.conf | ||
| 17 | index 3674c0a..2f8d586 100644 | ||
| 18 | --- a/pam.conf | ||
| 19 | +++ b/pam.conf | ||
| 20 | @@ -2,9 +2,9 @@ | ||
| 21 | # The PAM configuration file for the at daemon | ||
| 22 | # | ||
| 23 | |||
| 24 | -@include common-auth | ||
| 25 | -@include common-account | ||
| 26 | +auth include common-auth | ||
| 27 | +account include common-account | ||
| 28 | session required pam_loginuid.so | ||
| 29 | -@include common-session-noninteractive | ||
| 30 | +session include common-session-noninteractive | ||
| 31 | session required pam_limits.so | ||
| 32 | auth required pam_env.so user_readenv=1 | ||
| 33 | -- | ||
| 34 | 2.7.4 | ||
| 35 | |||
diff --git a/meta/recipes-extended/at/at/posixtm.c b/meta/recipes-extended/at/at/posixtm.c deleted file mode 100644 index bba8312d9a..0000000000 --- a/meta/recipes-extended/at/at/posixtm.c +++ /dev/null | |||
| @@ -1,326 +0,0 @@ | |||
| 1 | /* Parse dates for touch and date. | ||
| 2 | |||
| 3 | Copyright (C) 1989, 1990, 1991, 1998, 2000, 2001, 2002, 2003, 2004, | ||
| 4 | 2005, 2006, 2007 Free Software Foundation Inc. | ||
| 5 | |||
| 6 | This program is free software; you can redistribute it and/or modify | ||
| 7 | it under the terms of the GNU General Public License as published by | ||
| 8 | the Free Software Foundation; either version 2, or (at your option) | ||
| 9 | any later version. | ||
| 10 | |||
| 11 | This program is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | GNU General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU General Public License | ||
| 17 | along with this program; if not, write to the Free Software Foundation, | ||
| 18 | Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ | ||
| 19 | |||
| 20 | /* Yacc-based version written by Jim Kingdon and David MacKenzie. | ||
| 21 | Rewritten by Jim Meyering. */ | ||
| 22 | |||
| 23 | #include "config.h" | ||
| 24 | |||
| 25 | #include "posixtm.h" | ||
| 26 | |||
| 27 | #include <stdio.h> | ||
| 28 | #include <stdlib.h> | ||
| 29 | #include <sys/types.h> | ||
| 30 | #include <string.h> | ||
| 31 | |||
| 32 | #if USE_UNLOCKED_IO | ||
| 33 | # include "unlocked-io.h" | ||
| 34 | #endif | ||
| 35 | |||
| 36 | /* ISDIGIT differs from isdigit, as follows: | ||
| 37 | - Its arg may be any int or unsigned int; it need not be an unsigned char | ||
| 38 | or EOF. | ||
| 39 | - It's typically faster. | ||
| 40 | POSIX says that only '0' through '9' are digits. Prefer ISDIGIT to | ||
| 41 | isdigit unless it's important to use the locale's definition | ||
| 42 | of `digit' even when the host does not conform to POSIX. */ | ||
| 43 | #define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9) | ||
| 44 | |||
| 45 | /* | ||
| 46 | POSIX requires: | ||
| 47 | |||
| 48 | touch -t [[CC]YY]mmddhhmm[.ss] FILE... | ||
| 49 | 8, 10, or 12 digits, followed by optional .ss | ||
| 50 | (PDS_LEADING_YEAR | PDS_CENTURY | PDS_SECONDS) | ||
| 51 | |||
| 52 | touch mmddhhmm[YY] FILE... (obsoleted by POSIX 1003.1-2001) | ||
| 53 | 8 or 10 digits, YY (if present) must be in the range 69-99 | ||
| 54 | (PDS_TRAILING_YEAR | PDS_PRE_2000) | ||
| 55 | |||
| 56 | date mmddhhmm[[CC]YY] | ||
| 57 | 8, 10, or 12 digits | ||
| 58 | (PDS_TRAILING_YEAR | PDS_CENTURY) | ||
| 59 | |||
| 60 | */ | ||
| 61 | |||
| 62 | static int | ||
| 63 | year (struct tm *tm, const int *digit_pair, size_t n, unsigned int syntax_bits) | ||
| 64 | { | ||
| 65 | switch (n) | ||
| 66 | { | ||
| 67 | case 1: | ||
| 68 | tm->tm_year = *digit_pair; | ||
| 69 | /* Deduce the century based on the year. | ||
| 70 | POSIX requires that 00-68 be interpreted as 2000-2068, | ||
| 71 | and that 69-99 be interpreted as 1969-1999. */ | ||
| 72 | if (digit_pair[0] <= 68) | ||
| 73 | { | ||
| 74 | if (syntax_bits & PDS_PRE_2000) | ||
| 75 | return 1; | ||
| 76 | tm->tm_year += 100; | ||
| 77 | } | ||
| 78 | break; | ||
| 79 | |||
| 80 | case 2: | ||
| 81 | if (! (syntax_bits & PDS_CENTURY)) | ||
| 82 | return 1; | ||
| 83 | tm->tm_year = digit_pair[0] * 100 + digit_pair[1] - 1900; | ||
| 84 | break; | ||
| 85 | |||
| 86 | case 0: | ||
| 87 | { | ||
| 88 | time_t now; | ||
| 89 | struct tm *tmp; | ||
| 90 | |||
| 91 | /* Use current year. */ | ||
| 92 | time (&now); | ||
| 93 | tmp = localtime (&now); | ||
| 94 | if (! tmp) | ||
| 95 | return 1; | ||
| 96 | tm->tm_year = tmp->tm_year; | ||
| 97 | } | ||
| 98 | break; | ||
| 99 | |||
| 100 | default: | ||
| 101 | abort (); | ||
| 102 | } | ||
| 103 | |||
| 104 | return 0; | ||
| 105 | } | ||
| 106 | |||
| 107 | static int | ||
| 108 | posix_time_parse (struct tm *tm, const char *s, unsigned int syntax_bits) | ||
| 109 | { | ||
| 110 | const char *dot = NULL; | ||
| 111 | int pair[6]; | ||
| 112 | int *p; | ||
| 113 | size_t i; | ||
| 114 | |||
| 115 | size_t s_len = strlen (s); | ||
| 116 | size_t len = (((syntax_bits & PDS_SECONDS) && (dot = strchr (s, '.'))) | ||
| 117 | ? (size_t) (dot - s) | ||
| 118 | : s_len); | ||
| 119 | |||
| 120 | if (len != 8 && len != 10 && len != 12) | ||
| 121 | return 1; | ||
| 122 | |||
| 123 | if (dot) | ||
| 124 | { | ||
| 125 | if (!(syntax_bits & PDS_SECONDS)) | ||
| 126 | return 1; | ||
| 127 | |||
| 128 | if (s_len - len != 3) | ||
| 129 | return 1; | ||
| 130 | } | ||
| 131 | |||
| 132 | for (i = 0; i < len; i++) | ||
| 133 | if (!ISDIGIT (s[i])) | ||
| 134 | return 1; | ||
| 135 | |||
| 136 | len /= 2; | ||
| 137 | for (i = 0; i < len; i++) | ||
| 138 | pair[i] = 10 * (s[2*i] - '0') + s[2*i + 1] - '0'; | ||
| 139 | |||
| 140 | p = pair; | ||
| 141 | if (syntax_bits & PDS_LEADING_YEAR) | ||
| 142 | { | ||
| 143 | if (year (tm, p, len - 4, syntax_bits)) | ||
| 144 | return 1; | ||
| 145 | p += len - 4; | ||
| 146 | len = 4; | ||
| 147 | } | ||
| 148 | |||
| 149 | /* Handle 8 digits worth of `MMDDhhmm'. */ | ||
| 150 | tm->tm_mon = *p++ - 1; | ||
| 151 | tm->tm_mday = *p++; | ||
| 152 | tm->tm_hour = *p++; | ||
| 153 | tm->tm_min = *p++; | ||
| 154 | len -= 4; | ||
| 155 | |||
| 156 | /* Handle any trailing year. */ | ||
| 157 | if (syntax_bits & PDS_TRAILING_YEAR) | ||
| 158 | { | ||
| 159 | if (year (tm, p, len, syntax_bits)) | ||
| 160 | return 1; | ||
| 161 | } | ||
| 162 | |||
| 163 | /* Handle seconds. */ | ||
| 164 | if (!dot) | ||
| 165 | { | ||
| 166 | tm->tm_sec = 0; | ||
| 167 | } | ||
| 168 | else | ||
| 169 | { | ||
| 170 | int seconds; | ||
| 171 | |||
| 172 | ++dot; | ||
| 173 | if (!ISDIGIT (dot[0]) || !ISDIGIT (dot[1])) | ||
| 174 | return 1; | ||
| 175 | seconds = 10 * (dot[0] - '0') + dot[1] - '0'; | ||
| 176 | |||
| 177 | tm->tm_sec = seconds; | ||
| 178 | } | ||
| 179 | |||
| 180 | return 0; | ||
| 181 | } | ||
| 182 | |||
| 183 | /* Parse a POSIX-style date, returning true if successful. */ | ||
| 184 | |||
| 185 | bool | ||
| 186 | posixtime (time_t *p, const char *s, unsigned int syntax_bits) | ||
| 187 | { | ||
| 188 | struct tm tm0 | ||
| 189 | #ifdef lint | ||
| 190 | /* Placate gcc-4's -Wuninitialized. | ||
| 191 | posix_time_parse fails to set all of tm0 only when it returns | ||
| 192 | nonzero (due to year() returning nonzero), and in that case, | ||
| 193 | this code doesn't use the tm0 at all. */ | ||
| 194 | = { 0, } | ||
| 195 | #endif | ||
| 196 | ; | ||
| 197 | struct tm tm1; | ||
| 198 | struct tm const *tm; | ||
| 199 | time_t t; | ||
| 200 | |||
| 201 | if (posix_time_parse (&tm0, s, syntax_bits)) | ||
| 202 | return false; | ||
| 203 | |||
| 204 | tm1 = tm0; | ||
| 205 | tm1.tm_isdst = -1; | ||
| 206 | t = mktime (&tm1); | ||
| 207 | |||
| 208 | if (t != (time_t) -1) | ||
| 209 | tm = &tm1; | ||
| 210 | else | ||
| 211 | { | ||
| 212 | /* mktime returns -1 for errors, but -1 is also a valid time_t | ||
| 213 | value. Check whether an error really occurred. */ | ||
| 214 | tm = localtime (&t); | ||
| 215 | if (! tm) | ||
| 216 | return false; | ||
| 217 | } | ||
| 218 | |||
| 219 | /* Reject dates like "September 31" and times like "25:61". */ | ||
| 220 | if ((tm0.tm_year ^ tm->tm_year) | ||
| 221 | | (tm0.tm_mon ^ tm->tm_mon) | ||
| 222 | | (tm0.tm_mday ^ tm->tm_mday) | ||
| 223 | | (tm0.tm_hour ^ tm->tm_hour) | ||
| 224 | | (tm0.tm_min ^ tm->tm_min) | ||
| 225 | | (tm0.tm_sec ^ tm->tm_sec)) | ||
| 226 | return false; | ||
| 227 | |||
| 228 | *p = t; | ||
| 229 | return true; | ||
| 230 | } | ||
| 231 | |||
| 232 | #ifdef TEST_POSIXTIME | ||
| 233 | /* | ||
| 234 | Test mainly with syntax_bits == 13 | ||
| 235 | (aka: (PDS_LEADING_YEAR | PDS_CENTURY | PDS_SECONDS)) | ||
| 236 | |||
| 237 | This test data assumes Universal Time, e.g., TZ="UTC0". | ||
| 238 | |||
| 239 | This test data also assumes that time_t is signed and is at least | ||
| 240 | 39 bits wide, so that it can represent all years from 0000 through | ||
| 241 | 9999. A host with 32-bit signed time_t can represent only time | ||
| 242 | stamps in the range 1901-12-13 20:45:52 through 2038-01-18 | ||
| 243 | 03:14:07 UTC, assuming POSIX time_t with no leap seconds, so test | ||
| 244 | cases outside this range will not work on such a host. | ||
| 245 | |||
| 246 | Also, the first two lines of test data assume that the current | ||
| 247 | year is 2002. | ||
| 248 | |||
| 249 | BEGIN-DATA | ||
| 250 | 12131415.16 13 1039788916 Fri Dec 13 14:15:16 2002 | ||
| 251 | 12131415.16 13 1039788916 Fri Dec 13 14:15:16 2002 | ||
| 252 | 000001010000.00 13 -62167132800 Sun Jan 1 00:00:00 0000 | ||
| 253 | 190112132045.52 13 -2147483648 Fri Dec 13 20:45:52 1901 | ||
| 254 | 190112132045.53 13 -2147483647 Fri Dec 13 20:45:53 1901 | ||
| 255 | 190112132046.52 13 -2147483588 Fri Dec 13 20:46:52 1901 | ||
| 256 | 190112132145.52 13 -2147480048 Fri Dec 13 21:45:52 1901 | ||
| 257 | 190112142045.52 13 -2147397248 Sat Dec 14 20:45:52 1901 | ||
| 258 | 190201132045.52 13 -2144805248 Mon Jan 13 20:45:52 1902 | ||
| 259 | 196912312359.59 13 -1 Wed Dec 31 23:59:59 1969 | ||
| 260 | 197001010000.00 13 0 Thu Jan 1 00:00:00 1970 | ||
| 261 | 197001010000.01 13 1 Thu Jan 1 00:00:01 1970 | ||
| 262 | 197001010001.00 13 60 Thu Jan 1 00:01:00 1970 | ||
| 263 | 197001010100.00 13 3600 Thu Jan 1 01:00:00 1970 | ||
| 264 | 197001020000.00 13 86400 Fri Jan 2 00:00:00 1970 | ||
| 265 | 197002010000.00 13 2678400 Sun Feb 1 00:00:00 1970 | ||
| 266 | 197101010000.00 13 31536000 Fri Jan 1 00:00:00 1971 | ||
| 267 | 197001000000.00 13 * * | ||
| 268 | 197000010000.00 13 * * | ||
| 269 | 197001010000.60 13 * * | ||
| 270 | 197001010060.00 13 * * | ||
| 271 | 197001012400.00 13 * * | ||
| 272 | 197001320000.00 13 * * | ||
| 273 | 197013010000.00 13 * * | ||
| 274 | 203801190314.06 13 2147483646 Tue Jan 19 03:14:06 2038 | ||
| 275 | 203801190314.07 13 2147483647 Tue Jan 19 03:14:07 2038 | ||
| 276 | 203801190314.08 13 2147483648 Tue Jan 19 03:14:08 2038 | ||
| 277 | 999912312359.59 13 253402300799 Fri Dec 31 23:59:59 9999 | ||
| 278 | 1112131415 13 1323785700 Tue Dec 13 14:15:00 2011 | ||
| 279 | 1112131415.16 13 1323785716 Tue Dec 13 14:15:16 2011 | ||
| 280 | 201112131415.16 13 1323785716 Tue Dec 13 14:15:16 2011 | ||
| 281 | 191112131415.16 13 -1831974284 Wed Dec 13 14:15:16 1911 | ||
| 282 | 203712131415.16 13 2144326516 Sun Dec 13 14:15:16 2037 | ||
| 283 | 3712131415.16 13 2144326516 Sun Dec 13 14:15:16 2037 | ||
| 284 | 6812131415.16 13 3122633716 Thu Dec 13 14:15:16 2068 | ||
| 285 | 6912131415.16 13 -1590284 Sat Dec 13 14:15:16 1969 | ||
| 286 | 7012131415.16 13 29945716 Sun Dec 13 14:15:16 1970 | ||
| 287 | 1213141599 2 945094500 Mon Dec 13 14:15:00 1999 | ||
| 288 | 1213141500 2 976716900 Wed Dec 13 14:15:00 2000 | ||
| 289 | END-DATA | ||
| 290 | |||
| 291 | */ | ||
| 292 | |||
| 293 | # define MAX_BUFF_LEN 1024 | ||
| 294 | |||
| 295 | int | ||
| 296 | main (void) | ||
| 297 | { | ||
| 298 | char buff[MAX_BUFF_LEN + 1]; | ||
| 299 | |||
| 300 | buff[MAX_BUFF_LEN] = 0; | ||
| 301 | while (fgets (buff, MAX_BUFF_LEN, stdin) && buff[0]) | ||
| 302 | { | ||
| 303 | char time_str[MAX_BUFF_LEN]; | ||
| 304 | unsigned int syntax_bits; | ||
| 305 | time_t t; | ||
| 306 | if (sscanf (buff, "%s %u", time_str, &syntax_bits) != 2) | ||
| 307 | printf ("*\n"); | ||
| 308 | else | ||
| 309 | { | ||
| 310 | printf ("%-15s %2u ", time_str, syntax_bits); | ||
| 311 | if (posixtime (&t, time_str, syntax_bits)) | ||
| 312 | printf ("%12ld %s", (long int) t, ctime (&t)); | ||
| 313 | else | ||
| 314 | printf ("%12s %s", "*", "*\n"); | ||
| 315 | } | ||
| 316 | } | ||
| 317 | exit (0); | ||
| 318 | |||
| 319 | } | ||
| 320 | #endif | ||
| 321 | |||
| 322 | /* | ||
| 323 | Local Variables: | ||
| 324 | compile-command: "gcc -DTEST_POSIXTIME -g -O -Wall -W posixtm.c" | ||
| 325 | End: | ||
| 326 | */ | ||
diff --git a/meta/recipes-extended/at/at/posixtm.h b/meta/recipes-extended/at/at/posixtm.h deleted file mode 100644 index e91749d736..0000000000 --- a/meta/recipes-extended/at/at/posixtm.h +++ /dev/null | |||
| @@ -1,37 +0,0 @@ | |||
| 1 | /* Parse dates for touch and date. | ||
| 2 | |||
| 3 | Copyright (C) 1998, 2003, 2005, 2007 Free Software Foundation Inc. | ||
| 4 | |||
| 5 | This program is free software; you can redistribute it and/or modify | ||
| 6 | it under the terms of the GNU General Public License as published by | ||
| 7 | the Free Software Foundation; either version 2, or (at your option) | ||
| 8 | any later version. | ||
| 9 | |||
| 10 | This program is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 13 | GNU General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU General Public License | ||
| 16 | along with this program; if not, write to the Free Software Foundation, | ||
| 17 | Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ | ||
| 18 | |||
| 19 | /* Yacc-based version written by Jim Kingdon and David MacKenzie. | ||
| 20 | Rewritten by Jim Meyering. */ | ||
| 21 | |||
| 22 | #ifndef POSIXTM_H_ | ||
| 23 | # define POSIXTM_H_ | ||
| 24 | |||
| 25 | # include <stdbool.h> | ||
| 26 | # include <time.h> | ||
| 27 | |||
| 28 | /* POSIX Date Syntax flags. */ | ||
| 29 | # define PDS_LEADING_YEAR 1 | ||
| 30 | # define PDS_TRAILING_YEAR 2 | ||
| 31 | # define PDS_CENTURY 4 | ||
| 32 | # define PDS_SECONDS 8 | ||
| 33 | # define PDS_PRE_2000 16 | ||
| 34 | |||
| 35 | bool posixtime (time_t *p, const char *s, unsigned int syntax_bits); | ||
| 36 | |||
| 37 | #endif | ||
diff --git a/meta/recipes-extended/at/at_3.2.5.bb b/meta/recipes-extended/at/at_3.2.5.bb deleted file mode 100644 index 112d1c4adc..0000000000 --- a/meta/recipes-extended/at/at_3.2.5.bb +++ /dev/null | |||
| @@ -1,76 +0,0 @@ | |||
| 1 | SUMMARY = "Delayed job execution and batch processing" | ||
| 2 | HOMEPAGE = "http://blog.calhariz.com/" | ||
| 3 | DESCRIPTION = "At allows for commands to be run at a particular time. Batch will execute commands when \ | ||
| 4 | the system load levels drop to a particular level." | ||
| 5 | SECTION = "base" | ||
| 6 | LICENSE = "GPL-2.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4" | ||
| 8 | DEPENDS = "flex flex-native bison-native \ | ||
| 9 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" | ||
| 10 | |||
| 11 | PACKAGECONFIG ?= "\ | ||
| 12 | ${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \ | ||
| 13 | " | ||
| 14 | |||
| 15 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux," | ||
| 16 | |||
| 17 | RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \ | ||
| 18 | " | ||
| 19 | |||
| 20 | PAM_DEPS = "libpam libpam-runtime pam-plugin-env pam-plugin-limits" | ||
| 21 | |||
| 22 | RCONFLICTS:${PN} = "atd" | ||
| 23 | RREPLACES:${PN} = "atd" | ||
| 24 | |||
| 25 | SRC_URI = "${DEBIAN_MIRROR}/main/a/at/${BPN}_${PV}.orig.tar.gz \ | ||
| 26 | file://posixtm.c \ | ||
| 27 | file://posixtm.h \ | ||
| 28 | file://file_replacement_with_gplv2.patch \ | ||
| 29 | file://atd.init \ | ||
| 30 | file://atd.service \ | ||
| 31 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ | ||
| 32 | file://makefile-fix-parallel.patch \ | ||
| 33 | file://0001-remove-glibc-assumption.patch \ | ||
| 34 | " | ||
| 35 | |||
| 36 | PAM_SRC_URI = "file://pam.conf.patch \ | ||
| 37 | file://configure-add-enable-pam.patch" | ||
| 38 | |||
| 39 | SRC_URI[sha256sum] = "bb066b389d7c9bb9d84a35738032b85c30cba7d949f758192adc72c9477fd3b8" | ||
| 40 | |||
| 41 | EXTRA_OECONF += "ac_cv_path_SENDMAIL=/bin/true \ | ||
| 42 | --with-daemon_username=root \ | ||
| 43 | --with-daemon_groupname=root \ | ||
| 44 | --with-jobdir=/var/spool/at/jobs \ | ||
| 45 | --with-atspool=/var/spool/at/spool \ | ||
| 46 | ac_cv_header_security_pam_appl_h=${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', 'no', d)} " | ||
| 47 | |||
| 48 | inherit autotools-brokensep systemd update-rc.d | ||
| 49 | |||
| 50 | INITSCRIPT_NAME = "atd" | ||
| 51 | INITSCRIPT_PARAMS = "defaults" | ||
| 52 | |||
| 53 | SYSTEMD_SERVICE:${PN} = "atd.service" | ||
| 54 | |||
| 55 | do_patch[postfuncs] += "copy_posix_files" | ||
| 56 | |||
| 57 | copy_posix_files() { | ||
| 58 | cp -f ${UNPACKDIR}/posixtm.[ch] ${S} | ||
| 59 | } | ||
| 60 | |||
| 61 | do_install () { | ||
| 62 | oe_runmake -e "IROOT=${D}" install | ||
| 63 | |||
| 64 | install -d ${D}${sysconfdir}/init.d | ||
| 65 | install -m 0755 ${UNPACKDIR}/atd.init ${D}${sysconfdir}/init.d/atd | ||
| 66 | |||
| 67 | # install systemd unit files | ||
| 68 | install -d ${D}${systemd_system_unitdir} | ||
| 69 | install -m 0644 ${UNPACKDIR}/atd.service ${D}${systemd_system_unitdir} | ||
| 70 | sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/atd.service | ||
| 71 | |||
| 72 | if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then | ||
| 73 | install -D -m 0644 ${S}/pam.conf ${D}${sysconfdir}/pam.d/atd | ||
| 74 | fi | ||
| 75 | rm -f ${D}${datadir}/at/batch-job | ||
| 76 | } | ||
diff --git a/meta/recipes-extended/baremetal-example/baremetal-helloworld_git.bb b/meta/recipes-extended/baremetal-example/baremetal-helloworld_git.bb deleted file mode 100644 index 4307716069..0000000000 --- a/meta/recipes-extended/baremetal-example/baremetal-helloworld_git.bb +++ /dev/null | |||
| @@ -1,69 +0,0 @@ | |||
| 1 | SUMMARY = "Baremetal examples to work with the several QEMU architectures supported on OpenEmbedded" | ||
| 2 | HOMEPAGE = "https://github.com/aehs29/baremetal-helloqemu" | ||
| 3 | DESCRIPTION = "These are introductory examples to showcase the use of QEMU to run baremetal applications." | ||
| 4 | LICENSE = "MIT" | ||
| 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=39346640a23c701e4f459e05f56f4449" | ||
| 6 | |||
| 7 | SRCREV = "db2bf750eaef7fc0832e13ada8291343bbcc3afe" | ||
| 8 | PV = "0.1+git" | ||
| 9 | |||
| 10 | SRC_URI = "git://github.com/ahcbb6/baremetal-helloqemu.git;protocol=https;branch=master" | ||
| 11 | UPSTREAM_CHECK_COMMITS = "1" | ||
| 12 | |||
| 13 | # The following variables should be set to accomodate each application | ||
| 14 | BAREMETAL_BINNAME ?= "hello_baremetal_${MACHINE}" | ||
| 15 | IMAGE_LINK_NAME ?= "baremetal-helloworld-image-${MACHINE}" | ||
| 16 | IMAGE_NAME_SUFFIX ?= "" | ||
| 17 | |||
| 18 | # Baremetal-Image creates the proper wiring, assumes the output is provided in | ||
| 19 | # binary and ELF format, installed on ${base_libdir}/firmware/ , we want a | ||
| 20 | # package to be created since we might have some way of updating the baremetal | ||
| 21 | # firmware from Linux | ||
| 22 | inherit baremetal-image | ||
| 23 | |||
| 24 | # startup code for x86 uses NASM syntax | ||
| 25 | DEPENDS:qemux86:append = " nasm-native" | ||
| 26 | |||
| 27 | # These parameters are app specific for this example | ||
| 28 | # This will be translated automatically to the architecture and | ||
| 29 | # machine that QEMU uses on OE, e.g. -machine virt -cpu cortex-a57 | ||
| 30 | # but the examples can also be run on other architectures/machines | ||
| 31 | # such as vexpress-a15 by overriding the setting on the machine.conf | ||
| 32 | COMPATIBLE_MACHINE = "qemuarmv5|qemuarm|qemuarm64|qemuriscv64|qemuriscv32|qemux86|qemux86-64" | ||
| 33 | |||
| 34 | BAREMETAL_QEMUARCH ?= "" | ||
| 35 | BAREMETAL_QEMUARCH:qemuarmv5 = "versatile" | ||
| 36 | BAREMETAL_QEMUARCH:qemuarm = "arm" | ||
| 37 | BAREMETAL_QEMUARCH:qemuarm64 = "aarch64" | ||
| 38 | BAREMETAL_QEMUARCH:qemuriscv64 = "riscv64" | ||
| 39 | BAREMETAL_QEMUARCH:qemuriscv32 = "riscv32" | ||
| 40 | BAREMETAL_QEMUARCH:qemux86 = "x86" | ||
| 41 | BAREMETAL_QEMUARCH:qemux86-64 = "x86-64" | ||
| 42 | |||
| 43 | EXTRA_OEMAKE:append = " QEMUARCH=${BAREMETAL_QEMUARCH} V=1" | ||
| 44 | |||
| 45 | # qemux86-64 uses a different Makefile | ||
| 46 | do_compile:prepend:qemux86-64(){ | ||
| 47 | cd x86-64 | ||
| 48 | } | ||
| 49 | |||
| 50 | # Install binaries on the proper location for baremetal-image to fetch and deploy | ||
| 51 | do_install(){ | ||
| 52 | install -d ${D}/${base_libdir}/firmware | ||
| 53 | install -m 755 ${B}/build/hello_baremetal_${BAREMETAL_QEMUARCH}.bin ${D}/${base_libdir}/firmware/${BAREMETAL_BINNAME}.bin | ||
| 54 | install -m 755 ${B}/build/hello_baremetal_${BAREMETAL_QEMUARCH}.elf ${D}/${base_libdir}/firmware/${BAREMETAL_BINNAME}.elf | ||
| 55 | } | ||
| 56 | |||
| 57 | FILES:${PN} += " \ | ||
| 58 | ${base_libdir}/firmware/${BAREMETAL_BINNAME}.bin \ | ||
| 59 | ${base_libdir}/firmware/${BAREMETAL_BINNAME}.elf \ | ||
| 60 | " | ||
| 61 | |||
| 62 | # qemux86-64 boots from iso rather than -kernel, create image to boot from | ||
| 63 | do_image:append:qemux86-64(){ | ||
| 64 | dd if=/dev/zero of=${B}/build/img.iso bs=1M count=10 status=none | ||
| 65 | dd if=${B}/build/stage1.bin of=${B}/build/img.iso bs=512 count=1 conv=notrunc | ||
| 66 | dd if=${B}/build/stage2.bin of=${B}/build/img.iso bs=512 seek=1 count=64 conv=notrunc | ||
| 67 | dd if=${B}/build/hello_baremetal_x86-64.bin of=${B}/build/img.iso bs=512 seek=65 conv=notrunc | ||
| 68 | install ${B}/build/img.iso ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.iso | ||
| 69 | } | ||
diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc deleted file mode 100644 index 634209c911..0000000000 --- a/meta/recipes-extended/bash/bash.inc +++ /dev/null | |||
| @@ -1,137 +0,0 @@ | |||
| 1 | SUMMARY = "An sh-compatible command language interpreter" | ||
| 2 | HOMEPAGE = "http://tiswww.case.edu/php/chet/bash/bashtop.html" | ||
| 3 | DESCRIPTION = "Bash is the GNU Project's Bourne Again SHell, a complete implementation of the IEEE POSIX and Open Group shell specification with interactive command line editing, job control on architectures that support it, csh-like features such as history substitution and brace expansion, and a slew of other features." | ||
| 4 | SECTION = "base/shell" | ||
| 5 | |||
| 6 | DEPENDS = "ncurses bison-native virtual/libiconv" | ||
| 7 | |||
| 8 | inherit autotools gettext texinfo update-alternatives ptest | ||
| 9 | |||
| 10 | EXTRA_AUTORECONF += "--exclude=autoheader,aclocal" | ||
| 11 | EXTRA_OECONF = "--enable-job-control --without-bash-malloc bash_cv_wexitstatus_offset=8" | ||
| 12 | |||
| 13 | # If NON_INTERACTIVE_LOGIN_SHELLS is defined, all login shells read the | ||
| 14 | # startup files, even if they are not interactive. | ||
| 15 | # This is what other major distros do. And this is what we wanted. See bug#5359 and bug#7137. | ||
| 16 | CFLAGS += "-DNON_INTERACTIVE_LOGIN_SHELLS" | ||
| 17 | |||
| 18 | # This can vary depending upon the host | ||
| 19 | CFLAGS += "-DHEREDOC_PIPESIZE=65536" | ||
| 20 | |||
| 21 | # Disable bracketed paste mode by default (enabled by default in bash 5.1). It | ||
| 22 | # causes a lot of garbage in non-interactive shells | ||
| 23 | CFLAGS += "-DBRACKETED_PASTE_DEFAULT=0" | ||
| 24 | |||
| 25 | ALTERNATIVE:${PN} = "bash sh" | ||
| 26 | ALTERNATIVE_LINK_NAME[bash] = "${base_bindir}/bash" | ||
| 27 | ALTERNATIVE_TARGET[bash] = "${base_bindir}/bash" | ||
| 28 | ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" | ||
| 29 | ALTERNATIVE_TARGET[sh] = "${base_bindir}/bash.${BPN}" | ||
| 30 | ALTERNATIVE_PRIORITY = "100" | ||
| 31 | |||
| 32 | RDEPENDS:${PN} += "base-files" | ||
| 33 | RDEPENDS:${PN}:class-nativesdk = "" | ||
| 34 | RDEPENDS:${PN}-ptest += "make coreutils perl sed shadow util-linux-setpriv" | ||
| 35 | |||
| 36 | RDEPENDS:${PN}-ptest:append:libc-glibc = " \ | ||
| 37 | glibc-gconv-big5hkscs \ | ||
| 38 | glibc-gconv-iso8859-1 \ | ||
| 39 | glibc-utils \ | ||
| 40 | locale-base-de-de \ | ||
| 41 | locale-base-en-us \ | ||
| 42 | locale-base-fr-fr \ | ||
| 43 | locale-base-fr-fr.iso-8859-1 \ | ||
| 44 | locale-base-zh-hk.big5-hkscs \ | ||
| 45 | " | ||
| 46 | |||
| 47 | CACHED_CONFIGUREVARS += "headersdir=${includedir}/${PN}" | ||
| 48 | |||
| 49 | do_compile:prepend() { | ||
| 50 | # Remove any leftover .build files. This ensures that bash always has the | ||
| 51 | # same version number and keeps builds reproducible | ||
| 52 | rm -f ${B}/.build | ||
| 53 | } | ||
| 54 | |||
| 55 | do_compile_ptest () { | ||
| 56 | oe_runmake buildtest | ||
| 57 | } | ||
| 58 | |||
| 59 | do_install:prepend () { | ||
| 60 | # Ensure determinism as this counter increases for each make call | ||
| 61 | rm -f ${B}/.build | ||
| 62 | } | ||
| 63 | |||
| 64 | do_install:append () { | ||
| 65 | # Move /usr/bin/bash to /bin/bash, if need | ||
| 66 | if [ "${base_bindir}" != "${bindir}" ]; then | ||
| 67 | mkdir -p ${D}${base_bindir} | ||
| 68 | mv ${D}${bindir}/bash ${D}${base_bindir} | ||
| 69 | fi | ||
| 70 | } | ||
| 71 | |||
| 72 | fix_absolute_paths () { | ||
| 73 | # Clean buildhost references in bashbug | ||
| 74 | sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \ | ||
| 75 | -e "s,-I${WORKDIR}/\S* ,,g" \ | ||
| 76 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 77 | ${D}${bindir}/bashbug | ||
| 78 | |||
| 79 | # Clean buildhost references in bash.pc | ||
| 80 | sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \ | ||
| 81 | ${D}${libdir}/pkgconfig/bash.pc | ||
| 82 | |||
| 83 | # Clean buildhost references in Makefile.inc | ||
| 84 | sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \ | ||
| 85 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 86 | -e 's:${HOSTTOOLS_DIR}/::g' \ | ||
| 87 | -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ | ||
| 88 | ${D}${libdir}/bash/Makefile.inc | ||
| 89 | } | ||
| 90 | |||
| 91 | do_install:append:class-target () { | ||
| 92 | fix_absolute_paths | ||
| 93 | } | ||
| 94 | |||
| 95 | do_install:append:class-nativesdk () { | ||
| 96 | fix_absolute_paths | ||
| 97 | } | ||
| 98 | |||
| 99 | do_install_ptest () { | ||
| 100 | make INSTALL_TEST_DIR=${D}${PTEST_PATH}/tests install-test | ||
| 101 | cp ${B}/Makefile ${D}${PTEST_PATH} | ||
| 102 | cp ${B}/config.h ${D}${PTEST_PATH} | ||
| 103 | cp ${B}/version.h ${D}${PTEST_PATH} | ||
| 104 | cp ${S}/y.tab.[ch] ${D}${PTEST_PATH} | ||
| 105 | install -D ${UNPACKDIR}/run-bash-ptests ${D}${PTEST_PATH}/run-bash-ptests | ||
| 106 | sed -i -e 's/^Makefile/_Makefile/' -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \ | ||
| 107 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 108 | -e 's|${BUILD_LDFLAGS}||g' \ | ||
| 109 | -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \ | ||
| 110 | -e 's:${HOSTTOOLS_DIR}/::g' \ | ||
| 111 | -e 's:${UNINATIVE_LOADER}:${base_bindir}/false:g' \ | ||
| 112 | ${D}${PTEST_PATH}/Makefile | ||
| 113 | } | ||
| 114 | # The uninative loader is different on i386 & x86_64 hosts. Since it is only | ||
| 115 | # being replaced with /bin/false anyway, it doesn't need to be part of the task | ||
| 116 | # hash | ||
| 117 | do_install_ptest[vardepsexclude] += "UNINATIVE_LOADER" | ||
| 118 | |||
| 119 | pkg_postinst:${PN} () { | ||
| 120 | grep -q "^${base_bindir}/bash$" $D${sysconfdir}/shells || echo ${base_bindir}/bash >> $D${sysconfdir}/shells | ||
| 121 | } | ||
| 122 | |||
| 123 | pkg_postrm:${PN} () { | ||
| 124 | printf "$(grep -v "^${base_bindir}/bash$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells | ||
| 125 | } | ||
| 126 | |||
| 127 | PACKAGES += "${PN}-bashbug" | ||
| 128 | FILES:${PN} = "${bindir}/bash ${base_bindir}/bash.bash" | ||
| 129 | FILES:${PN}-bashbug = "${bindir}/bashbug" | ||
| 130 | |||
| 131 | PACKAGE_BEFORE_PN += "${PN}-loadable" | ||
| 132 | RDEPENDS:${PN}-loadable += "${PN}" | ||
| 133 | FILES:${PN}-loadable += "${libdir}/bash/*" | ||
| 134 | |||
| 135 | # Limit the RPROVIDES here to class target so that if usrmerge is enabled for nativesdk, it does not | ||
| 136 | # include host system paths in /bin/ | ||
| 137 | RPROVIDES:${PN}:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/bash', '', d)}" | ||
diff --git a/meta/recipes-extended/bash/bash/build-tests.patch b/meta/recipes-extended/bash/bash/build-tests.patch deleted file mode 100644 index 4cce1ba993..0000000000 --- a/meta/recipes-extended/bash/bash/build-tests.patch +++ /dev/null | |||
| @@ -1,59 +0,0 @@ | |||
| 1 | From c3f58f8b4f7a359b9d9dd97a45bcaab50a89d224 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Anders Roxell <anders.roxell@enea.com> | ||
| 3 | Date: Wed, 19 Dec 2012 17:18:31 +0100 | ||
| 4 | Subject: [PATCH] Add 'ptest' target to Makefile, to run tests without checking | ||
| 5 | dependencies. | ||
| 6 | |||
| 7 | Upstream-Status: Inappropriate [ptest specific] | ||
| 8 | Signed-off-by: Anders Roxell <anders.roxell@enea.com> | ||
| 9 | |||
| 10 | Rebase to 5.0 | ||
| 11 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 12 | --- | ||
| 13 | Makefile.in | 24 +++++++++++++++++++----- | ||
| 14 | 1 file changed, 19 insertions(+), 5 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/Makefile.in b/Makefile.in | ||
| 17 | index 0b4df73..7e2a34e 100644 | ||
| 18 | --- a/Makefile.in | ||
| 19 | +++ b/Makefile.in | ||
| 20 | @@ -958,20 +958,34 @@ maybe-clean: | ||
| 21 | fi | ||
| 22 | |||
| 23 | recho$(EXEEXT): $(SUPPORT_SRC)recho.c | ||
| 24 | - @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)recho.c ${LIBS_FOR_BUILD} | ||
| 25 | + @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $< | ||
| 26 | |||
| 27 | zecho$(EXEEXT): $(SUPPORT_SRC)zecho.c | ||
| 28 | - @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)zecho.c ${LIBS_FOR_BUILD} | ||
| 29 | + @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $< | ||
| 30 | |||
| 31 | printenv$(EXEEXT): $(SUPPORT_SRC)printenv.c | ||
| 32 | - @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)printenv.c ${LIBS_FOR_BUILD} | ||
| 33 | + @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $< | ||
| 34 | |||
| 35 | xcase$(EXEEXT): $(SUPPORT_SRC)xcase.c | ||
| 36 | - @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)xcase.c ${LIBS_FOR_BUILD} | ||
| 37 | + @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $< | ||
| 38 | |||
| 39 | -test tests check: force $(Program) $(TESTS_SUPPORT) | ||
| 40 | +test tests check: | ||
| 41 | + @$(MAKE) install-test | ||
| 42 | + @$(MAKE) runtest | ||
| 43 | + | ||
| 44 | +install-test: buildtest | ||
| 45 | +ifeq ($(origin INSTALL_TEST_DIR), undefined) | ||
| 46 | @-test -d tests || mkdir tests | ||
| 47 | @cp $(TESTS_SUPPORT) tests | ||
| 48 | +else | ||
| 49 | + @-test -d $(INSTALL_TEST_DIR) || mkdir -p $(INSTALL_TEST_DIR) | ||
| 50 | + @cp -r $(srcdir)/tests/* $(INSTALL_TEST_DIR)/ | ||
| 51 | + @cp $(TESTS_SUPPORT) $(INSTALL_TEST_DIR) | ||
| 52 | +endif | ||
| 53 | + | ||
| 54 | +buildtest: force $(Program) $(TESTS_SUPPORT) | ||
| 55 | + | ||
| 56 | +runtest: | ||
| 57 | @( cd $(srcdir)/tests && \ | ||
| 58 | BUILD_DIR=$(BUILD_DIR) PATH=$(BUILD_DIR)/tests:$$PATH THIS_SH=$(THIS_SH) $(SHELL) ${TESTSCRIPT} ) | ||
| 59 | |||
diff --git a/meta/recipes-extended/bash/bash/fix-run-builtins.patch b/meta/recipes-extended/bash/bash/fix-run-builtins.patch deleted file mode 100644 index 05d0859821..0000000000 --- a/meta/recipes-extended/bash/bash/fix-run-builtins.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 15601c71b073a604ccda25c7f14f0bb12e9a3b28 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Dengke Du <dengke.du@windriver.com> | ||
| 3 | Date: Tue, 19 Apr 2016 02:57:45 -0400 | ||
| 4 | Subject: [PATCH] fix run-builtins failed | ||
| 5 | |||
| 6 | FAIL: run-builtins | ||
| 7 | 1. redirect the stderr output of command exec with -l option in | ||
| 8 | builtins.tests to /dev/null | ||
| 9 | 2. ensure the system contain the locales "en_US.UTF-8" | ||
| 10 | |||
| 11 | Upstream-Status: Pending | ||
| 12 | |||
| 13 | Signed-off-by: Dengke Du <dengke.du@windriver.com> | ||
| 14 | --- | ||
| 15 | tests/builtins.tests | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/tests/builtins.tests b/tests/builtins.tests | ||
| 19 | index 8eee43e..71c9eee 100644 | ||
| 20 | --- a/tests/builtins.tests | ||
| 21 | +++ b/tests/builtins.tests | ||
| 22 | @@ -124,7 +124,7 @@ esac | ||
| 23 | |||
| 24 | # test options to exec | ||
| 25 | (exec -a specialname ${THIS_SH} -c 'echo $0' ) | ||
| 26 | -(exec -l -a specialname ${THIS_SH} -c 'echo $0' ) | ||
| 27 | +(exec -l -a specialname ${THIS_SH} -c 'echo $0' ) 2> /dev/null | ||
| 28 | # test `clean' environment. if /bin/sh is bash, and the script version of | ||
| 29 | # printenv is run, there will be variables in the environment that bash | ||
| 30 | # sets on startup. Also test code that prefixes argv[0] with a dash. | ||
diff --git a/meta/recipes-extended/bash/bash/mkbuiltins_have_stringize.patch b/meta/recipes-extended/bash/bash/mkbuiltins_have_stringize.patch deleted file mode 100644 index 4ee754e32b..0000000000 --- a/meta/recipes-extended/bash/bash/mkbuiltins_have_stringize.patch +++ /dev/null | |||
| @@ -1,44 +0,0 @@ | |||
| 1 | From ed7515a5c07addaa3338a24efb36b74fbd1844dc Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Christopher Larson <chris_larson@mentor.com> | ||
| 3 | Date: Mon, 21 Jul 2025 13:52:00 +0800 | ||
| 4 | Subject: [PATCH] bash: fix mkbuiltins build failure | ||
| 5 | |||
| 6 | On hosts with FORTIFY_SOURCES, stringize support is required, as it's used by | ||
| 7 | the macros to wrap functions (e.g. read and open in unistd.h). Those wrappers | ||
| 8 | use the STRING() macro from unistd.h. A header in the bash sources overrides | ||
| 9 | the unistd.h macro to 'x' when HAVE_STRINGIZE is not defined, causing the | ||
| 10 | wrappers to generate calls to 'xread' and 'xopen', which do not exist, | ||
| 11 | resulting in a failure to link. | ||
| 12 | |||
| 13 | Assume we have stringize support when cross-compiling, which works around the | ||
| 14 | issue. | ||
| 15 | |||
| 16 | It may be best for upstream to either give up on supporting compilers without | ||
| 17 | stringize support, or to not define STRING() at all when FORTIFY_SOURCES is | ||
| 18 | defined, letting the unistd.h one be used, instead. | ||
| 19 | |||
| 20 | Upstream-Status: Pending | ||
| 21 | |||
| 22 | Signed-off-by: Christopher Larson <chris_larson@mentor.com> | ||
| 23 | |||
| 24 | Rebase to 5.3 | ||
| 25 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 26 | --- | ||
| 27 | builtins/mkbuiltins.c | 1 + | ||
| 28 | 1 file changed, 1 insertion(+) | ||
| 29 | |||
| 30 | diff --git a/builtins/mkbuiltins.c b/builtins/mkbuiltins.c | ||
| 31 | index c4cacdf..05d1db1 100644 | ||
| 32 | --- a/builtins/mkbuiltins.c | ||
| 33 | +++ b/builtins/mkbuiltins.c | ||
| 34 | @@ -24,6 +24,7 @@ | ||
| 35 | #else /* CROSS_COMPILING */ | ||
| 36 | /* A conservative set of defines based on POSIX/SUS3/XPG6 */ | ||
| 37 | # include <buildconf.h> | ||
| 38 | +# define HAVE_STRINGIZE | ||
| 39 | #endif /* CROSS_COMPILING */ | ||
| 40 | |||
| 41 | #if defined (HAVE_UNISTD_H) | ||
| 42 | -- | ||
| 43 | 2.34.1 | ||
| 44 | |||
diff --git a/meta/recipes-extended/bash/bash/run-bash-ptests b/meta/recipes-extended/bash/bash/run-bash-ptests deleted file mode 100644 index d73a27224d..0000000000 --- a/meta/recipes-extended/bash/bash/run-bash-ptests +++ /dev/null | |||
| @@ -1,4 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | cd "$(dirname "$0")" | ||
| 3 | make -k THIS_SH=/bin/bash BUILD_DIR=`pwd` srcdir=`pwd` runtest | ||
| 4 | |||
diff --git a/meta/recipes-extended/bash/bash/run-ptest b/meta/recipes-extended/bash/bash/run-ptest deleted file mode 100644 index 738ad3c42c..0000000000 --- a/meta/recipes-extended/bash/bash/run-ptest +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | en_US=`locale -a | grep en_US*` | ||
| 4 | fr_FR=`locale -a | grep fr_FR*` | ||
| 5 | de_DE=`locale -a | grep de_DE*` | ||
| 6 | |||
| 7 | if [ -z "$en_US" ] | ||
| 8 | then | ||
| 9 | echo "Warning: The en_US* locales is needed to run the intl.tests, please add it." | ||
| 10 | fi | ||
| 11 | |||
| 12 | if [ -z "$fr_FR" ] | ||
| 13 | then | ||
| 14 | echo "Warning: The fr_FR* locales is needed to run the intl.tests, please add it." | ||
| 15 | fi | ||
| 16 | |||
| 17 | if [ -z "$de_DE" ] | ||
| 18 | then | ||
| 19 | echo "Warning: The de_DE* locales is needed to run the intl.tests, please add it." | ||
| 20 | fi | ||
| 21 | |||
| 22 | useradd bashtest | ||
| 23 | chown -R bashtest:bashtest tests | ||
| 24 | setpriv --reuid bashtest --rgid bashtest --clear-groups --reset-env $(dirname "$0")/run-bash-ptests | ||
| 25 | chown -R root:root tests | ||
| 26 | userdel -r bashtest | ||
diff --git a/meta/recipes-extended/bash/bash/test-output.patch b/meta/recipes-extended/bash/bash/test-output.patch deleted file mode 100644 index 3225907b66..0000000000 --- a/meta/recipes-extended/bash/bash/test-output.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | From f5cbd5a4954b89857c9e397cacceda552484f5d5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 3 | Date: Tue, 15 Aug 2017 10:01:56 +0800 | ||
| 4 | Subject: [PATCH] Add FAIL/PASS output to test output. | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | Signed-off-by: Björn Stenberg <bjst@enea.com> | ||
| 10 | Upstream-Status: Pending | ||
| 11 | |||
| 12 | Rebase to 4.4 | ||
| 13 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 14 | --- | ||
| 15 | tests/run-all | 11 ++++++++++- | ||
| 16 | 1 file changed, 10 insertions(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/tests/run-all b/tests/run-all | ||
| 19 | index 1f74923..ba36a1f 100644 | ||
| 20 | --- a/tests/run-all | ||
| 21 | +++ b/tests/run-all | ||
| 22 | @@ -57,7 +57,16 @@ do | ||
| 23 | case $x in | ||
| 24 | $0|run-minimal|run-gprof) ;; | ||
| 25 | *.orig|*~) ;; | ||
| 26 | - *) echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;; | ||
| 27 | + *) echo $x | ||
| 28 | + output=`sh $x` | ||
| 29 | + if [ -n "$output" ]; then | ||
| 30 | + echo "$output" | ||
| 31 | + echo "FAIL: $x" | ||
| 32 | + else | ||
| 33 | + echo "PASS: $x" | ||
| 34 | + fi | ||
| 35 | + rm -f ${BASH_TSTOUT} | ||
| 36 | + ;; | ||
| 37 | esac | ||
| 38 | done | ||
| 39 | |||
diff --git a/meta/recipes-extended/bash/bash_5.3.bb b/meta/recipes-extended/bash/bash_5.3.bb deleted file mode 100644 index b50a48d28c..0000000000 --- a/meta/recipes-extended/bash/bash_5.3.bb +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | require bash.inc | ||
| 2 | |||
| 3 | # GPL-2.0-or-later (< 4.0), GPL-3.0-or-later (>= 4.0) | ||
| 4 | LICENSE = "GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 6 | |||
| 7 | SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \ | ||
| 8 | file://mkbuiltins_have_stringize.patch \ | ||
| 9 | file://build-tests.patch \ | ||
| 10 | file://test-output.patch \ | ||
| 11 | file://run-ptest \ | ||
| 12 | file://run-bash-ptests \ | ||
| 13 | file://fix-run-builtins.patch \ | ||
| 14 | " | ||
| 15 | |||
| 16 | SRC_URI[tarball.sha256sum] = "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba" | ||
| 17 | |||
| 18 | DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" | ||
| 19 | DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" | ||
| 20 | |||
| 21 | CFLAGS += "-std=gnu17" | ||
| 22 | # mkbuiltins.c is built with native toolchain and needs gnu17 as well: | ||
| 23 | # http://errors.yoctoproject.org/Errors/Details/853016/ | ||
| 24 | BUILD_CFLAGS += "-std=gnu17" | ||
| 25 | |||
| 26 | BBCLASSEXTEND = "nativesdk" | ||
diff --git a/meta/recipes-extended/bc/bc/run-ptest b/meta/recipes-extended/bc/bc/run-ptest deleted file mode 100644 index ba5abe6805..0000000000 --- a/meta/recipes-extended/bc/bc/run-ptest +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | #! /bin/sh | ||
| 2 | |||
| 3 | for TEST in *.b; do | ||
| 4 | if bc -l $TEST </dev/null; then | ||
| 5 | echo "PASS: bc/$TEST" | ||
| 6 | else | ||
| 7 | echo "FAIL: bc/$TEST" | ||
| 8 | fi | ||
| 9 | done | ||
diff --git a/meta/recipes-extended/bc/bc_1.08.2.bb b/meta/recipes-extended/bc/bc_1.08.2.bb deleted file mode 100644 index cebfed9642..0000000000 --- a/meta/recipes-extended/bc/bc_1.08.2.bb +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | SUMMARY = "Arbitrary precision calculator language" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/bc/bc.html" | ||
| 3 | DESCRIPTION = "bc is an arbitrary precision numeric processing language. Syntax is similar to C, but differs in many substantial areas. It supports interactive execution of statements." | ||
| 4 | |||
| 5 | LICENSE = "GPL-3.0-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
| 7 | file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \ | ||
| 8 | file://bc/bcdefs.h;endline=17;md5=f4a0239b216b8407783955e74938f190 \ | ||
| 9 | file://dc/dc.h;endline=18;md5=bad31533d57fe5948c996f9ef6643206 \ | ||
| 10 | file://lib/number.c;endline=20;md5=cf43068cc88f837731dc53240456cfaf" | ||
| 11 | |||
| 12 | SECTION = "base" | ||
| 13 | DEPENDS = "flex-native" | ||
| 14 | |||
| 15 | SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \ | ||
| 16 | file://run-ptest" | ||
| 17 | SRC_URI[sha256sum] = "ae470fec429775653e042015edc928d07c8c3b2fc59765172a330d3d87785f86" | ||
| 18 | |||
| 19 | inherit autotools texinfo update-alternatives ptest | ||
| 20 | |||
| 21 | PACKAGECONFIG ??= "readline" | ||
| 22 | PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" | ||
| 23 | PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit" | ||
| 24 | |||
| 25 | do_install_ptest() { | ||
| 26 | install ${S}/Test/*.b ${D}${PTEST_PATH} | ||
| 27 | } | ||
| 28 | |||
| 29 | ALTERNATIVE:${PN} = "bc dc" | ||
| 30 | ALTERNATIVE_PRIORITY = "100" | ||
| 31 | |||
| 32 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/bzip2/bzip2/0001-fix-bzip2-version-tmp-aaa-will-hang.patch b/meta/recipes-extended/bzip2/bzip2/0001-fix-bzip2-version-tmp-aaa-will-hang.patch deleted file mode 100644 index 84206b2a4d..0000000000 --- a/meta/recipes-extended/bzip2/bzip2/0001-fix-bzip2-version-tmp-aaa-will-hang.patch +++ /dev/null | |||
| @@ -1,62 +0,0 @@ | |||
| 1 | From a9dd6acbaca836fc4e943e69a31b2e7acda32045 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 3 | Date: Wed, 13 Nov 2024 19:49:23 +0800 | ||
| 4 | Subject: [PATCH] fix 'bzip2 --version > /tmp/aaa 2>&1' hang | ||
| 5 | |||
| 6 | According to [1] | ||
| 7 | |||
| 8 | As of the current version 1.0.8, bzip2 --version will print version | ||
| 9 | info but it will also continue compressing stdin: | ||
| 10 | |||
| 11 | $ ./bzip2 --version | ||
| 12 | bzip2, a block-sorting file compressor. Version 1.0.8, 13-Jul-2019. | ||
| 13 | |||
| 14 | Copyright (C) 1996-2019 by Julian Seward. | ||
| 15 | |||
| 16 | This program is free software; [...] | ||
| 17 | |||
| 18 | bzip2: I won't write compressed data to a terminal. | ||
| 19 | bzip2: For help, type: `bzip2 --help'. | ||
| 20 | |||
| 21 | Debian (and its downstreams like Ubuntu) will patch this out [2], | ||
| 22 | making the < /dev/null unnecessary: | ||
| 23 | |||
| 24 | [1] https://stackoverflow.com/questions/59757176/why-using-dev-null-with-a-program-like-bzip2 | ||
| 25 | [2] https://sources.debian.org/src/bzip2/1.0.8-6/debian/patches/20-legacy.patch/ | ||
| 26 | |||
| 27 | Upstream-Status: Submitted [bzip2-devel@sourceware.org] | ||
| 28 | |||
| 29 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 30 | --- | ||
| 31 | bzip2.c | 8 +++++--- | ||
| 32 | 1 file changed, 5 insertions(+), 3 deletions(-) | ||
| 33 | |||
| 34 | diff --git a/bzip2.c b/bzip2.c | ||
| 35 | index d95d280..6ec9871 100644 | ||
| 36 | --- a/bzip2.c | ||
| 37 | +++ b/bzip2.c | ||
| 38 | @@ -1890,7 +1890,9 @@ IntNative main ( IntNative argc, Char *argv[] ) | ||
| 39 | case '8': blockSize100k = 8; break; | ||
| 40 | case '9': blockSize100k = 9; break; | ||
| 41 | case 'V': | ||
| 42 | - case 'L': license(); break; | ||
| 43 | + case 'L': license(); | ||
| 44 | + exit ( 0 ); | ||
| 45 | + break; | ||
| 46 | case 'v': verbosity++; break; | ||
| 47 | case 'h': usage ( progName ); | ||
| 48 | exit ( 0 ); | ||
| 49 | @@ -1916,8 +1918,8 @@ IntNative main ( IntNative argc, Char *argv[] ) | ||
| 50 | if (ISFLAG("--keep")) keepInputFiles = True; else | ||
| 51 | if (ISFLAG("--small")) smallMode = True; else | ||
| 52 | if (ISFLAG("--quiet")) noisy = False; else | ||
| 53 | - if (ISFLAG("--version")) license(); else | ||
| 54 | - if (ISFLAG("--license")) license(); else | ||
| 55 | + if (ISFLAG("--version")) { license(); exit ( 0 ); } else | ||
| 56 | + if (ISFLAG("--license")) { license(); exit ( 0 ); } else | ||
| 57 | if (ISFLAG("--exponential")) workFactor = 1; else | ||
| 58 | if (ISFLAG("--repetitive-best")) redundant(aa->name); else | ||
| 59 | if (ISFLAG("--repetitive-fast")) redundant(aa->name); else | ||
| 60 | -- | ||
| 61 | 2.34.1 | ||
| 62 | |||
diff --git a/meta/recipes-extended/bzip2/bzip2/Makefile.am b/meta/recipes-extended/bzip2/bzip2/Makefile.am deleted file mode 100644 index c0aed80ce6..0000000000 --- a/meta/recipes-extended/bzip2/bzip2/Makefile.am +++ /dev/null | |||
| @@ -1,74 +0,0 @@ | |||
| 1 | |||
| 2 | lib_LTLIBRARIES = libbz2.la | ||
| 3 | libbz2_la_LDFLAGS = -version-info 1:8:0 | ||
| 4 | |||
| 5 | libbz2_la_SOURCES = blocksort.c \ | ||
| 6 | huffman.c \ | ||
| 7 | crctable.c \ | ||
| 8 | randtable.c \ | ||
| 9 | compress.c \ | ||
| 10 | decompress.c \ | ||
| 11 | bzlib.c | ||
| 12 | |||
| 13 | bin_PROGRAMS = bzip2 bzip2recover | ||
| 14 | |||
| 15 | bzip2_SOURCES = bzip2.c | ||
| 16 | bzip2_LDADD = libbz2.la | ||
| 17 | bzip2_DEPENDENCIES = libbz2.la | ||
| 18 | |||
| 19 | include_HEADERS = bzlib.h | ||
| 20 | |||
| 21 | bzip2recover_SOURCES = bzip2recover.c | ||
| 22 | bzip2recover_LDADD = libbz2.la | ||
| 23 | bzip2recover_DEPENDENCIES = libbz2.la | ||
| 24 | |||
| 25 | bin_SCRIPTS = bzgrep bzmore bzdiff | ||
| 26 | |||
| 27 | man_MANS = bzip2.1 bzgrep.1 bzmore.1 bzdiff.1 | ||
| 28 | EXTRA_DIST = $(man_MANS) | ||
| 29 | |||
| 30 | runtest: | ||
| 31 | ./bzip2 -1 < sample1.ref > sample1.rb2 | ||
| 32 | ./bzip2 -2 < sample2.ref > sample2.rb2 | ||
| 33 | ./bzip2 -3 < sample3.ref > sample3.rb2 | ||
| 34 | ./bzip2 -d < sample1.bz2 > sample1.tst | ||
| 35 | ./bzip2 -d < sample2.bz2 > sample2.tst | ||
| 36 | ./bzip2 -ds < sample3.bz2 > sample3.tst | ||
| 37 | @if cmp sample1.bz2 sample1.rb2; then echo "PASS: sample1 compress";\ | ||
| 38 | else echo "FAIL: sample1 compress"; fi | ||
| 39 | @if cmp sample2.bz2 sample2.rb2; then echo "PASS: sample2 compress";\ | ||
| 40 | else echo "FAIL: sample2 compress"; fi | ||
| 41 | @if cmp sample3.bz2 sample3.rb2; then echo "PASS: sample3 compress";\ | ||
| 42 | else echo "FAIL: sample3 compress"; fi | ||
| 43 | @if cmp sample1.tst sample1.ref; then echo "PASS: sample1 decompress";\ | ||
| 44 | else echo "FAIL: sample1 decompress"; fi | ||
| 45 | @if cmp sample2.tst sample2.ref; then echo "PASS: sample2 decompress";\ | ||
| 46 | else echo "FAIL: sample2 decompress"; fi | ||
| 47 | @if cmp sample3.tst sample3.ref; then echo "PASS: sample3 decompress";\ | ||
| 48 | else echo "FAIL: sample3 decompress"; fi | ||
| 49 | ./bzip2-tests/run-tests.sh --without-valgrind --tests-dir="$(PWD)/bzip2-tests" | ||
| 50 | |||
| 51 | install-ptest: | ||
| 52 | sed -n '/^runtest:/,/^install-ptest:/{/^install-ptest:/!p}' \ | ||
| 53 | $(srcdir)/Makefile.am > $(DESTDIR)/Makefile | ||
| 54 | cp $(srcdir)/sample1.ref $(DESTDIR)/ | ||
| 55 | cp $(srcdir)/sample2.ref $(DESTDIR)/ | ||
| 56 | cp $(srcdir)/sample3.ref $(DESTDIR)/ | ||
| 57 | cp $(srcdir)/sample1.bz2 $(DESTDIR)/ | ||
| 58 | cp $(srcdir)/sample2.bz2 $(DESTDIR)/ | ||
| 59 | cp $(srcdir)/sample3.bz2 $(DESTDIR)/ | ||
| 60 | ln -s $(bindir)/bzip2 $(DESTDIR)/bzip2 | ||
| 61 | |||
| 62 | install-exec-hook: | ||
| 63 | ln -s bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bunzip2$(EXEEXT) | ||
| 64 | ln -s bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bzcat$(EXEEXT) | ||
| 65 | ln -s bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzegrep$(EXEEXT) | ||
| 66 | ln -s bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzfgrep$(EXEEXT) | ||
| 67 | ln -s bzmore$(EXEEXT) $(DESTDIR)$(bindir)/bzless$(EXEEXT) | ||
| 68 | ln -s bzdiff$(EXEEXT) $(DESTDIR)$(bindir)/bzcmp$(EXEEXT) | ||
| 69 | |||
| 70 | install-data-hook: | ||
| 71 | echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzegrep.1 | ||
| 72 | echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzfgrep.1 | ||
| 73 | echo ".so man1/bzmore.1" > $(DESTDIR)$(mandir)/man1/bzless.1 | ||
| 74 | echo ".so man1/bzdiff.1" > $(DESTDIR)$(mandir)/man1/bzcmp.1 | ||
diff --git a/meta/recipes-extended/bzip2/bzip2/configure.ac b/meta/recipes-extended/bzip2/bzip2/configure.ac deleted file mode 100644 index b8abade2d9..0000000000 --- a/meta/recipes-extended/bzip2/bzip2/configure.ac +++ /dev/null | |||
| @@ -1,11 +0,0 @@ | |||
| 1 | AC_PREREQ([2.57]) | ||
| 2 | |||
| 3 | AC_INIT(bzip2, %BZIP2_VERSION%) | ||
| 4 | AM_INIT_AUTOMAKE(foreign) | ||
| 5 | AM_MAINTAINER_MODE | ||
| 6 | |||
| 7 | AC_PROG_CC | ||
| 8 | AC_PROG_LIBTOOL | ||
| 9 | |||
| 10 | AC_OUTPUT([Makefile]) | ||
| 11 | |||
diff --git a/meta/recipes-extended/bzip2/bzip2/run-ptest b/meta/recipes-extended/bzip2/bzip2/run-ptest deleted file mode 100644 index 3b20fce1ee..0000000000 --- a/meta/recipes-extended/bzip2/bzip2/run-ptest +++ /dev/null | |||
| @@ -1,2 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | make -k runtest | ||
diff --git a/meta/recipes-extended/bzip2/bzip2_1.0.8.bb b/meta/recipes-extended/bzip2/bzip2_1.0.8.bb deleted file mode 100644 index 9cecf6a331..0000000000 --- a/meta/recipes-extended/bzip2/bzip2_1.0.8.bb +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | SUMMARY = "Very high-quality data compression program" | ||
| 2 | DESCRIPTION = "bzip2 compresses files using the Burrows-Wheeler block-sorting text compression algorithm, and \ | ||
| 3 | Huffman coding. Compression is generally considerably better than that achieved by more conventional \ | ||
| 4 | LZ77/LZ78-based compressors, and approaches the performance of the PPM family of statistical compressors." | ||
| 5 | HOMEPAGE = "https://sourceware.org/bzip2/" | ||
| 6 | SECTION = "console/utils" | ||
| 7 | LICENSE = "bzip2-1.0.6 & GPL-3.0-or-later & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib" | ||
| 8 | LICENSE:${PN} = "bzip2-1.0.6" | ||
| 9 | LICENSE:${PN}-dev = "bzip2-1.0.6" | ||
| 10 | LICENSE:${PN}-dbg = "bzip2-1.0.6" | ||
| 11 | LICENSE:${PN}-doc = "bzip2-1.0.6" | ||
| 12 | LICENSE:${PN}-src = "bzip2-1.0.6" | ||
| 13 | LICENSE:libbz2 = "bzip2-1.0.6" | ||
| 14 | LICENSE:${PN}-ptest = "bzip2-1.0.6 & GPL-3.0-or-later & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib" | ||
| 15 | |||
| 16 | LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;endline=37;md5=600af43c50f1fcb82e32f19b32df4664 \ | ||
| 17 | file://${UNPACKDIR}/bzip2-tests/commons-compress/LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327 \ | ||
| 18 | file://${UNPACKDIR}/bzip2-tests/dotnetzip/License.txt;md5=9cb56871eed4e748c3bc7e8ff352a54f \ | ||
| 19 | file://${UNPACKDIR}/bzip2-tests/dotnetzip/License.zlib.txt;md5=cc421ccd22eeb2e5db6b79e6de0a029f \ | ||
| 20 | file://${UNPACKDIR}/bzip2-tests/go/LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707 \ | ||
| 21 | file://${UNPACKDIR}/bzip2-tests/lbzip2/COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
| 22 | " | ||
| 23 | |||
| 24 | SRC_URI = "https://sourceware.org/pub/${BPN}/${BPN}-${PV}.tar.gz \ | ||
| 25 | git://sourceware.org/git/bzip2-tests.git;name=bzip2-tests;branch=master;protocol=https;destsuffix=bzip2-tests/ \ | ||
| 26 | file://configure.ac;subdir=${BP} \ | ||
| 27 | file://Makefile.am;subdir=${BP} \ | ||
| 28 | file://run-ptest \ | ||
| 29 | file://0001-fix-bzip2-version-tmp-aaa-will-hang.patch;subdir=${BP} \ | ||
| 30 | " | ||
| 31 | SRC_URI[sha256sum] = "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269" | ||
| 32 | |||
| 33 | SRCREV_bzip2-tests = "f9061c030a25de5b6829e1abf373057309c734c0" | ||
| 34 | |||
| 35 | UPSTREAM_CHECK_URI = "https://www.sourceware.org/pub/bzip2/" | ||
| 36 | |||
| 37 | PACKAGES =+ "libbz2" | ||
| 38 | |||
| 39 | CFLAGS += "-fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64" | ||
| 40 | |||
| 41 | inherit autotools update-alternatives ptest | ||
| 42 | |||
| 43 | ALTERNATIVE_PRIORITY = "100" | ||
| 44 | ALTERNATIVE:${PN} = "bunzip2 bzcat bzip2" | ||
| 45 | |||
| 46 | #install binaries to bzip2-native under sysroot for replacement-native | ||
| 47 | EXTRA_OECONF:append:class-native = " --bindir=${STAGING_BINDIR_NATIVE}/${PN}" | ||
| 48 | |||
| 49 | do_configure:prepend () { | ||
| 50 | sed -i -e "s|%BZIP2_VERSION%|${PV}|" ${S}/configure.ac | ||
| 51 | } | ||
| 52 | |||
| 53 | do_install_ptest () { | ||
| 54 | install -d ${D}${PTEST_PATH}/bzip2-tests | ||
| 55 | cp -r ${UNPACKDIR}/bzip2-tests/commons-compress ${D}${PTEST_PATH}/bzip2-tests/commons-compress | ||
| 56 | cp -r ${UNPACKDIR}/bzip2-tests/dotnetzip ${D}${PTEST_PATH}/bzip2-tests/dotnetzip | ||
| 57 | cp -r ${UNPACKDIR}/bzip2-tests/go ${D}${PTEST_PATH}/bzip2-tests/go | ||
| 58 | cp -r ${UNPACKDIR}/bzip2-tests/lbzip2 ${D}${PTEST_PATH}/bzip2-tests/lbzip2 | ||
| 59 | cp -r ${UNPACKDIR}/bzip2-tests/pyflate ${D}${PTEST_PATH}/bzip2-tests/pyflate | ||
| 60 | cp ${UNPACKDIR}/bzip2-tests/README ${D}${PTEST_PATH}/bzip2-tests/ | ||
| 61 | cp ${UNPACKDIR}/bzip2-tests/run-tests.sh ${D}${PTEST_PATH}/bzip2-tests/ | ||
| 62 | sed -i -e "s|^Makefile:|_Makefile:|" ${D}${PTEST_PATH}/Makefile | ||
| 63 | } | ||
| 64 | |||
| 65 | FILES:libbz2 = "${libdir}/lib*${SOLIBS}" | ||
| 66 | |||
| 67 | RDEPENDS:${PN}-ptest += "make bash" | ||
| 68 | |||
| 69 | CVE_PRODUCT = "bzip:bzip2" | ||
| 70 | |||
| 71 | PROVIDES:append:class-native = " bzip2-replacement-native" | ||
| 72 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/cpio/cpio_2.15.bb b/meta/recipes-extended/cpio/cpio_2.15.bb deleted file mode 100644 index fa011251e2..0000000000 --- a/meta/recipes-extended/cpio/cpio_2.15.bb +++ /dev/null | |||
| @@ -1,90 +0,0 @@ | |||
| 1 | SUMMARY = "GNU cpio is a program to manage archives of files" | ||
| 2 | DESCRIPTION = "GNU cpio is a tool for creating and extracting archives, or copying files from one place to \ | ||
| 3 | another. It handles a number of cpio formats as well as reading and writing tar files." | ||
| 4 | HOMEPAGE = "http://www.gnu.org/software/cpio/" | ||
| 5 | SECTION = "base" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/cpio/cpio-${PV}.tar.gz \ | ||
| 10 | file://run-ptest \ | ||
| 11 | file://test.sh \ | ||
| 12 | " | ||
| 13 | |||
| 14 | SRC_URI[sha256sum] = "efa50ef983137eefc0a02fdb51509d624b5e3295c980aa127ceee4183455499e" | ||
| 15 | |||
| 16 | inherit autotools gettext texinfo ptest | ||
| 17 | |||
| 18 | CVE_STATUS[CVE-2010-4226] = "not-applicable-platform: Issue applies to use of cpio in SUSE/OBS" | ||
| 19 | CVE_STATUS[CVE-2023-7216] = "disputed: intended behaviour, see https://lists.gnu.org/archive/html/bug-cpio/2024-03/msg00000.html" | ||
| 20 | |||
| 21 | EXTRA_OECONF += "DEFAULT_RMT_DIR=${sbindir}" | ||
| 22 | |||
| 23 | CFLAGS += "-std=gnu17" | ||
| 24 | |||
| 25 | do_install () { | ||
| 26 | autotools_do_install | ||
| 27 | if [ "${base_bindir}" != "${bindir}" ]; then | ||
| 28 | install -d ${D}${base_bindir}/ | ||
| 29 | mv "${D}${bindir}/cpio" "${D}${base_bindir}/cpio" | ||
| 30 | if [ "${sbindir}" != "${bindir}" ]; then | ||
| 31 | rmdir ${D}${bindir}/ | ||
| 32 | fi | ||
| 33 | fi | ||
| 34 | |||
| 35 | # Avoid conflicts with the version from tar | ||
| 36 | mv "${D}${mandir}/man8/rmt.8" "${D}${mandir}/man8/rmt-cpio.8" | ||
| 37 | } | ||
| 38 | |||
| 39 | do_compile_ptest() { | ||
| 40 | # Forcibly regenerate this script so we get our --am-fmt option | ||
| 41 | rm -f ${S}/tests/testsuite | ||
| 42 | oe_runmake -C ${B}/tests/ testsuite | ||
| 43 | |||
| 44 | oe_runmake -C ${B}/tests/ genfile | ||
| 45 | } | ||
| 46 | |||
| 47 | do_install_ptest() { | ||
| 48 | install -d ${D}${PTEST_PATH}/tests/ | ||
| 49 | sed -i "/abs_/d" ${B}/tests/atconfig | ||
| 50 | install --mode=755 ${B}/tests/atconfig ${D}${PTEST_PATH}/tests/ | ||
| 51 | sed -i "s%${B}/tests:%%g" ${B}/tests/atlocal | ||
| 52 | sed -i "s%${B}/src:%%g" ${B}/tests/atlocal | ||
| 53 | install --mode=755 ${B}/tests/atlocal ${D}${PTEST_PATH}/tests/ | ||
| 54 | install --mode=755 ${B}/tests/genfile ${D}${PTEST_PATH}/tests/ | ||
| 55 | install --mode=755 ${S}/tests/testsuite ${D}${PTEST_PATH}/tests/ | ||
| 56 | install --mode=755 ${UNPACKDIR}/test.sh ${D}${PTEST_PATH}/test.sh | ||
| 57 | sed -i "s#@PTEST_PATH@#${PTEST_PATH}#g" ${D}${PTEST_PATH}/test.sh | ||
| 58 | } | ||
| 59 | |||
| 60 | # ptest.bbclass currently chowns the ptest directory explicitly, so we need to | ||
| 61 | # change permission after that has happened so the ptest user can write a | ||
| 62 | # temporary directory. | ||
| 63 | do_install_ptest_base:append() { | ||
| 64 | chgrp -R ptest ${D}${PTEST_PATH}/ | ||
| 65 | chmod -R g+w ${D}${PTEST_PATH}/ | ||
| 66 | } | ||
| 67 | |||
| 68 | # The tests need to run as a non-root user, so pull in the ptest user | ||
| 69 | DEPENDS:append:class-target = " ${@bb.utils.contains('PTEST_ENABLED', '1', 'ptest-runner', '', d)}" | ||
| 70 | PACKAGE_WRITE_DEPS:append:class-target = " ${@bb.utils.contains('PTEST_ENABLED', '1', 'ptest-runner', '', d)}" | ||
| 71 | |||
| 72 | RDEPENDS:${PN}-ptest += "ptest-runner coreutils" | ||
| 73 | |||
| 74 | PACKAGES =+ "${PN}-rmt" | ||
| 75 | |||
| 76 | FILES:${PN}-rmt = "${sbindir}/rmt*" | ||
| 77 | |||
| 78 | inherit update-alternatives | ||
| 79 | |||
| 80 | ALTERNATIVE_PRIORITY = "100" | ||
| 81 | |||
| 82 | ALTERNATIVE:${PN} = "cpio" | ||
| 83 | ALTERNATIVE:${PN}-rmt = "rmt" | ||
| 84 | |||
| 85 | ALTERNATIVE_LINK_NAME[cpio] = "${base_bindir}/cpio" | ||
| 86 | |||
| 87 | ALTERNATIVE_PRIORITY[rmt] = "50" | ||
| 88 | ALTERNATIVE_LINK_NAME[rmt] = "${sbindir}/rmt" | ||
| 89 | |||
| 90 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/cpio/files/run-ptest b/meta/recipes-extended/cpio/files/run-ptest deleted file mode 100755 index f35a756d6b..0000000000 --- a/meta/recipes-extended/cpio/files/run-ptest +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | su -c ./test.sh ptest | ||
diff --git a/meta/recipes-extended/cpio/files/test.sh b/meta/recipes-extended/cpio/files/test.sh deleted file mode 100644 index e966ed91f8..0000000000 --- a/meta/recipes-extended/cpio/files/test.sh +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | cd @PTEST_PATH@/tests/ | ||
| 4 | |||
| 5 | ./testsuite --am-fmt | ||
diff --git a/meta/recipes-extended/cracklib/cracklib_2.10.3.bb b/meta/recipes-extended/cracklib/cracklib_2.10.3.bb deleted file mode 100644 index 7feba2c950..0000000000 --- a/meta/recipes-extended/cracklib/cracklib_2.10.3.bb +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | SUMMARY = "Password strength checker library" | ||
| 2 | HOMEPAGE = "https://github.com/cracklib/cracklib" | ||
| 3 | DESCRIPTION = "${SUMMARY}" | ||
| 4 | |||
| 5 | LICENSE = "LGPL-2.1-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06" | ||
| 7 | |||
| 8 | DEPENDS = "cracklib-native zlib" | ||
| 9 | |||
| 10 | EXTRA_OECONF = "--without-python --libdir=${base_libdir}" | ||
| 11 | |||
| 12 | SRC_URI = "git://github.com/cracklib/cracklib;protocol=https;branch=main \ | ||
| 13 | " | ||
| 14 | |||
| 15 | SRCREV = "e73d5db1789d198b5f9ec44b68b9c775c3e6c042" | ||
| 16 | S = "${UNPACKDIR}/${BP}/src" | ||
| 17 | |||
| 18 | inherit autotools gettext | ||
| 19 | |||
| 20 | # This is custom stuff from upstream's autogen.sh | ||
| 21 | do_configure:prepend() { | ||
| 22 | mkdir -p ${S}/m4 | ||
| 23 | echo EXTRA_DIST = *.m4 > ${S}/m4/Makefile.am | ||
| 24 | touch ${S}/ABOUT-NLS | ||
| 25 | } | ||
| 26 | |||
| 27 | do_install:append:class-target() { | ||
| 28 | create-cracklib-dict -o ${D}${datadir}/cracklib/pw_dict ${D}${datadir}/cracklib/cracklib-small | ||
| 29 | } | ||
| 30 | |||
| 31 | BBCLASSEXTEND = "native nativesdk" | ||
| 32 | |||
diff --git a/meta/recipes-extended/cronie/cronie/crond.init b/meta/recipes-extended/cronie/cronie/crond.init deleted file mode 100755 index 53b8514caa..0000000000 --- a/meta/recipes-extended/cronie/cronie/crond.init +++ /dev/null | |||
| @@ -1,58 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | ### BEGIN INIT INFO | ||
| 3 | # Provides: crond crontab | ||
| 4 | # Default-Start: 2345 | ||
| 5 | # Default-Stop: 016 | ||
| 6 | # Short-Description: run cron daemon | ||
| 7 | # Description: cron is a standard UNIX program that runs user-specified | ||
| 8 | # programs at periodic scheduled times. vixie cron adds a | ||
| 9 | # number of features to the basic UNIX cron, including better | ||
| 10 | # security and more powerful configuration options. | ||
| 11 | ### END INIT INFO | ||
| 12 | |||
| 13 | CROND=/usr/sbin/crond | ||
| 14 | CONFIG=/etc/sysconfig/crond | ||
| 15 | |||
| 16 | [ -f $CONFIG ] || exit 1 | ||
| 17 | [ -x $CROND ] || exit 1 | ||
| 18 | |||
| 19 | . $CONFIG | ||
| 20 | |||
| 21 | # Source function library. | ||
| 22 | . /etc/init.d/functions | ||
| 23 | |||
| 24 | case "$1" in | ||
| 25 | start) | ||
| 26 | echo -n "Starting crond: " | ||
| 27 | start-stop-daemon --start --quiet --exec $CROND -- $CRONDARGS | ||
| 28 | RETVAL=$? | ||
| 29 | if [ $RETVAL -eq 0 ] ; then | ||
| 30 | echo "OK" | ||
| 31 | else | ||
| 32 | echo "FAIL" | ||
| 33 | fi | ||
| 34 | ;; | ||
| 35 | stop) | ||
| 36 | echo -n "Stopping crond: " | ||
| 37 | start-stop-daemon --stop --quiet --pidfile /var/run/crond.pid | ||
| 38 | RETVAL=$? | ||
| 39 | if [ $RETVAL -eq 0 ] ; then | ||
| 40 | echo "OK" | ||
| 41 | else | ||
| 42 | echo "FAIL" | ||
| 43 | fi | ||
| 44 | ;; | ||
| 45 | status) | ||
| 46 | status crond | ||
| 47 | exit $? | ||
| 48 | ;; | ||
| 49 | restart) | ||
| 50 | $0 stop && sleep 1 && $0 start | ||
| 51 | ;; | ||
| 52 | *) | ||
| 53 | echo "Usage: /etc/init.d/crond {start|stop|status|restart}" | ||
| 54 | exit 1 | ||
| 55 | esac | ||
| 56 | |||
| 57 | exit 0 | ||
| 58 | |||
diff --git a/meta/recipes-extended/cronie/cronie/crond.service b/meta/recipes-extended/cronie/cronie/crond.service deleted file mode 100644 index d435a6eb34..0000000000 --- a/meta/recipes-extended/cronie/cronie/crond.service +++ /dev/null | |||
| @@ -1,11 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=Periodic Command Scheduler | ||
| 3 | |||
| 4 | [Service] | ||
| 5 | EnvironmentFile=/etc/sysconfig/crond | ||
| 6 | ExecStart=@SBINDIR@/crond -n $CRONDARGS | ||
| 7 | ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID | ||
| 8 | Restart=always | ||
| 9 | |||
| 10 | [Install] | ||
| 11 | WantedBy=multi-user.target | ||
diff --git a/meta/recipes-extended/cronie/cronie/crond_pam_config.patch b/meta/recipes-extended/cronie/cronie/crond_pam_config.patch deleted file mode 100644 index 464d1470e3..0000000000 --- a/meta/recipes-extended/cronie/cronie/crond_pam_config.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From f5b325cba73018e5be984570fd4e680e59e7865d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Wenzong Fan <wenzong.fan@windriver.com> | ||
| 3 | Date: Wed, 20 Jul 2011 02:42:28 +0000 | ||
| 4 | Subject: [PATCH] cronie: enable PAM support for cronie | ||
| 5 | |||
| 6 | password-auth is the Fedora's common pam configure file, use oe common pam | ||
| 7 | configure files instead. | ||
| 8 | |||
| 9 | Upstream-Status: Pending | ||
| 10 | |||
| 11 | Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> | ||
| 12 | |||
| 13 | --- | ||
| 14 | pam/crond | 6 +++--- | ||
| 15 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/pam/crond b/pam/crond | ||
| 18 | index 560529d..95a6457 100644 | ||
| 19 | --- a/pam/crond | ||
| 20 | +++ b/pam/crond | ||
| 21 | @@ -4,8 +4,8 @@ | ||
| 22 | # | ||
| 23 | # Although no PAM authentication is called, auth modules | ||
| 24 | # are used for credential setting | ||
| 25 | -auth include system-auth | ||
| 26 | +auth include common-auth | ||
| 27 | account required pam_access.so | ||
| 28 | -account include system-auth | ||
| 29 | +account include common-auth | ||
| 30 | session required pam_loginuid.so | ||
| 31 | -session include system-auth | ||
| 32 | +session include common-session-noninteractive | ||
diff --git a/meta/recipes-extended/cronie/cronie/crontab b/meta/recipes-extended/cronie/cronie/crontab deleted file mode 100644 index 22c4feb2dc..0000000000 --- a/meta/recipes-extended/cronie/cronie/crontab +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | # /etc/crontab: system-wide crontab | ||
| 2 | # Unlike any other crontab you don't have to run the `crontab' | ||
| 3 | # command to install the new version when you edit this file | ||
| 4 | # and files in /etc/cron.d. These files also have username fields, | ||
| 5 | # that none of the other crontabs do. | ||
| 6 | |||
| 7 | SHELL=/bin/sh | ||
| 8 | PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | ||
| 9 | |||
| 10 | # m h dom mon dow user command | ||
| 11 | # 1 * * * * root cd / && run-parts /etc/cron.hourly | ||
| 12 | # 30 7 * * * root cd / && run-parts /etc/cron.daily | ||
| 13 | # 42 7 * * 7 root cd / && run-parts /etc/cron.weekly | ||
| 14 | # 55 7 1 * * root cd / && run-parts /etc/cron.monthly | ||
diff --git a/meta/recipes-extended/cronie/cronie/make_error_func_prototype_complete.patch b/meta/recipes-extended/cronie/cronie/make_error_func_prototype_complete.patch deleted file mode 100644 index 71f0153ec6..0000000000 --- a/meta/recipes-extended/cronie/cronie/make_error_func_prototype_complete.patch +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | From 09c630c654b2aeff06a90a412cce0a60ab4955a4 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Tomas Mraz <tmraz@fedoraproject.org> | ||
| 3 | Date: Mon, 18 Nov 2024 21:02:30 +0100 | ||
| 4 | Subject: [PATCH] load_entry(): Make error_func prototype complete | ||
| 5 | |||
| 6 | Fixes #193 | ||
| 7 | |||
| 8 | Upstream-Status: Backport [https://github.com/cronie-crond/cronie/commit/09c630c654b2aeff06a90a412cce0a60ab4955a4] | ||
| 9 | |||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | src/entry.c | 2 +- | ||
| 13 | src/funcs.h | 2 +- | ||
| 14 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/src/entry.c b/src/entry.c | ||
| 17 | index 586eb9d..a2077e8 100644 | ||
| 18 | --- a/src/entry.c | ||
| 19 | +++ b/src/entry.c | ||
| 20 | @@ -90,7 +90,7 @@ void free_entry(entry * e) { | ||
| 21 | /* return NULL if eof or syntax error occurs; | ||
| 22 | * otherwise return a pointer to a new entry. | ||
| 23 | */ | ||
| 24 | -entry *load_entry(FILE * file, void (*error_func) (), struct passwd *pw, | ||
| 25 | +entry *load_entry(FILE * file, void (*error_func) (const char *), struct passwd *pw, | ||
| 26 | char **envp) { | ||
| 27 | /* this function reads one crontab entry -- the next -- from a file. | ||
| 28 | * it skips any leading blank lines, ignores comments, and returns | ||
| 29 | diff --git a/src/funcs.h b/src/funcs.h | ||
| 30 | index 427e027..f28d634 100644 | ||
| 31 | --- a/src/funcs.h | ||
| 32 | +++ b/src/funcs.h | ||
| 33 | @@ -89,7 +89,7 @@ char *env_get(const char *, char **), | ||
| 34 | user *load_user(int, struct passwd *, const char *, const char *, const char *), | ||
| 35 | *find_user(cron_db *, const char *, const char *); | ||
| 36 | |||
| 37 | -entry *load_entry(FILE *, void (*)(), struct passwd *, char **); | ||
| 38 | +entry *load_entry(FILE *, void (*)(const char *), struct passwd *, char **); | ||
| 39 | |||
| 40 | FILE *cron_popen(char *, const char *, struct passwd *, char **); | ||
| 41 | |||
diff --git a/meta/recipes-extended/cronie/cronie_1.7.2.bb b/meta/recipes-extended/cronie/cronie_1.7.2.bb deleted file mode 100644 index b250717ab8..0000000000 --- a/meta/recipes-extended/cronie/cronie_1.7.2.bb +++ /dev/null | |||
| @@ -1,87 +0,0 @@ | |||
| 1 | SUMMARY = "Cron daemon for executing programs at set times" | ||
| 2 | DESCRIPTION = "Cronie contains the standard UNIX daemon crond that runs \ | ||
| 3 | specified programs at scheduled times and related tools. It is based on the \ | ||
| 4 | original cron and has security and configuration enhancements like the \ | ||
| 5 | ability to use pam and SELinux." | ||
| 6 | HOMEPAGE = "https://github.com/cronie-crond/cronie/" | ||
| 7 | BUGTRACKER = "https://bugzilla.redhat.com" | ||
| 8 | |||
| 9 | # Internet Systems Consortium License | ||
| 10 | LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & GPL-2.0-or-later" | ||
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=dd2a592170760e1386c769e1043b3722 \ | ||
| 12 | file://src/cron.c;endline=20;md5=b425c334265026177128353a142633b4 \ | ||
| 13 | file://src/popen.c;beginline=3;endline=31;md5=edd50742d8def712e9472dba353668a9" | ||
| 14 | |||
| 15 | SECTION = "utils" | ||
| 16 | |||
| 17 | GITHUB_BASE_URI = "https://github.com/cronie-crond/${BPN}/releases/" | ||
| 18 | |||
| 19 | SRC_URI = "${GITHUB_BASE_URI}/download/cronie-${PV}/cronie-${PV}.tar.gz \ | ||
| 20 | file://make_error_func_prototype_complete.patch \ | ||
| 21 | file://crond.init \ | ||
| 22 | file://crontab \ | ||
| 23 | file://crond.service \ | ||
| 24 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" | ||
| 25 | |||
| 26 | PAM_SRC_URI = "file://crond_pam_config.patch" | ||
| 27 | PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid" | ||
| 28 | |||
| 29 | SRC_URI[sha256sum] = "f1da374a15ba7605cf378347f96bc8b678d3d7c0765269c8242cfe5b0789c571" | ||
| 30 | |||
| 31 | inherit autotools update-rc.d useradd systemd github-releases | ||
| 32 | UPSTREAM_CHECK_REGEX = "releases/tag/cronie-(?P<pver>\d+(\.\d+)+)" | ||
| 33 | |||
| 34 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" | ||
| 35 | |||
| 36 | PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit," | ||
| 37 | PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,${PAM_DEPS}" | ||
| 38 | PACKAGECONFIG[anacron] = "--enable-anacron,--disable-anacron,anacron" | ||
| 39 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
| 40 | PACKAGECONFIG[inotify] = "--with-inotify,--without-inotify," | ||
| 41 | |||
| 42 | INITSCRIPT_NAME = "crond" | ||
| 43 | INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ." | ||
| 44 | |||
| 45 | USERADD_PACKAGES = "${PN}" | ||
| 46 | GROUPADD_PARAM:${PN} = "--system crontab" | ||
| 47 | |||
| 48 | SYSTEMD_SERVICE:${PN} = "crond.service" | ||
| 49 | |||
| 50 | do_install:append () { | ||
| 51 | install -d ${D}${sysconfdir}/sysconfig/ | ||
| 52 | install -d ${D}${sysconfdir}/init.d/ | ||
| 53 | install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond | ||
| 54 | install -m 0755 ${UNPACKDIR}/crond.init ${D}${sysconfdir}/init.d/crond | ||
| 55 | |||
| 56 | # install systemd unit files | ||
| 57 | install -d ${D}${systemd_system_unitdir} | ||
| 58 | install -m 0644 ${UNPACKDIR}/crond.service ${D}${systemd_system_unitdir} | ||
| 59 | sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
| 60 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 61 | ${D}${systemd_system_unitdir}/crond.service | ||
| 62 | |||
| 63 | # below are necessary for a complete cron environment | ||
| 64 | install -d ${D}${localstatedir}/spool/cron | ||
| 65 | install -m 0755 ${UNPACKDIR}/crontab ${D}${sysconfdir}/ | ||
| 66 | mkdir -p ${D}${sysconfdir}/cron.d | ||
| 67 | mkdir -p ${D}${sysconfdir}/cron.hourly | ||
| 68 | mkdir -p ${D}${sysconfdir}/cron.daily | ||
| 69 | mkdir -p ${D}${sysconfdir}/cron.weekly | ||
| 70 | mkdir -p ${D}${sysconfdir}/cron.monthly | ||
| 71 | touch ${D}${sysconfdir}/cron.deny | ||
| 72 | |||
| 73 | # below setting is necessary to allow normal user using crontab | ||
| 74 | |||
| 75 | # setgid for crontab binary | ||
| 76 | chown root:crontab ${D}${bindir}/crontab | ||
| 77 | chmod 2755 ${D}${bindir}/crontab | ||
| 78 | |||
| 79 | # allow 'crontab' group write to /var/spool/cron | ||
| 80 | chown root:crontab ${D}${localstatedir}/spool/cron | ||
| 81 | chmod 770 ${D}${localstatedir}/spool/cron | ||
| 82 | |||
| 83 | chmod 600 ${D}${sysconfdir}/crontab | ||
| 84 | } | ||
| 85 | |||
| 86 | FILES:${PN} += "${sysconfdir}/cron*" | ||
| 87 | CONFFILES:${PN} += "${sysconfdir}/crontab" | ||
diff --git a/meta/recipes-extended/cups/cups.inc b/meta/recipes-extended/cups/cups.inc deleted file mode 100644 index 24ebcc4aae..0000000000 --- a/meta/recipes-extended/cups/cups.inc +++ /dev/null | |||
| @@ -1,117 +0,0 @@ | |||
| 1 | SUMMARY = "An Internet printing system for Unix" | ||
| 2 | DESCRIPTION = "The Common UNIX Printing System is a printing system and \ | ||
| 3 | general replacement for lpd and the like. It supports the Internet Printing \ | ||
| 4 | Protocol (IPP), and has its own filtering driver model for handling various \ | ||
| 5 | document types." | ||
| 6 | HOMEPAGE = "https://www.cups.org/" | ||
| 7 | SECTION = "console/utils" | ||
| 8 | LICENSE = "Apache-2.0" | ||
| 9 | DEPENDS = "libpng jpeg dbus zlib libusb1" | ||
| 10 | |||
| 11 | SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/cups-${PV}-source.tar.gz \ | ||
| 12 | file://0001-use-echo-only-in-init.patch \ | ||
| 13 | file://0002-don-t-try-to-run-generated-binaries.patch \ | ||
| 14 | file://libexecdir.patch \ | ||
| 15 | file://0004-cups-fix-multilib-install-file-conflicts.patch \ | ||
| 16 | file://volatiles.99_cups \ | ||
| 17 | file://cups-volatiles.conf \ | ||
| 18 | " | ||
| 19 | |||
| 20 | GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases" | ||
| 21 | |||
| 22 | CVE_STATUS[CVE-2008-1033] = "not-applicable-platform: Issue only applies to MacOS" | ||
| 23 | CVE_STATUS[CVE-2009-0032] = "cpe-incorrect: Issue affects pdfdistiller plugin used with but not part of cups" | ||
| 24 | CVE_STATUS[CVE-2018-6553] = "not-applicable-platform: This is an Ubuntu only issue" | ||
| 25 | CVE_STATUS[CVE-2022-26691] = "fixed-version: This is fixed in 2.4.2 but the cve-check class still reports it" | ||
| 26 | |||
| 27 | LEAD_SONAME = "libcupsdriver.so" | ||
| 28 | |||
| 29 | CLEANBROKEN = "1" | ||
| 30 | |||
| 31 | inherit autotools-brokensep binconfig useradd systemd pkgconfig multilib_script github-releases | ||
| 32 | |||
| 33 | USERADD_PACKAGES = "${PN}" | ||
| 34 | GROUPADD_PARAM:${PN} = "--system lpadmin" | ||
| 35 | |||
| 36 | SYSTEMD_SERVICE:${PN} = "cups.socket cups.path cups.service cups-lpd.socket" | ||
| 37 | |||
| 38 | PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ | ||
| 39 | ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd', d)} \ | ||
| 40 | openssl \ | ||
| 41 | " | ||
| 42 | PACKAGECONFIG[avahi] = "--with-dnssd=avahi,--with-dnssd=no,avahi" | ||
| 43 | PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl" | ||
| 44 | PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls,,,openssl" | ||
| 45 | PACKAGECONFIG[openssl] = "--with-tls=openssl,,openssl,,,gnutls" | ||
| 46 | PACKAGECONFIG[pam] = "--enable-pam --with-pam-module=unix, --disable-pam, libpam" | ||
| 47 | PACKAGECONFIG[systemd] = "--with-systemd=${systemd_system_unitdir},--without-systemd,systemd" | ||
| 48 | PACKAGECONFIG[xinetd] = "--with-xinetd=${sysconfdir}/xinetd.d,--without-xinetd,xinetd" | ||
| 49 | PACKAGECONFIG[webif] = "--enable-webif,--disable-webif" | ||
| 50 | |||
| 51 | EXTRA_OECONF = " \ | ||
| 52 | --enable-dbus \ | ||
| 53 | --with-dbusdir=${sysconfdir}/dbus-1 \ | ||
| 54 | --enable-browsing \ | ||
| 55 | --disable-gssapi \ | ||
| 56 | --enable-debug \ | ||
| 57 | --disable-relro \ | ||
| 58 | --enable-libusb \ | ||
| 59 | --with-system-groups=lpadmin,root,sys,wheel \ | ||
| 60 | --with-cups-group=lp \ | ||
| 61 | --with-domainsocket=/run/cups/cups.sock \ | ||
| 62 | --with-pkgconfpath=${libdir}/pkgconfig \ | ||
| 63 | DSOFLAGS='${LDFLAGS}' \ | ||
| 64 | " | ||
| 65 | |||
| 66 | EXTRA_AUTORECONF += "--exclude=autoheader" | ||
| 67 | |||
| 68 | do_install () { | ||
| 69 | oe_runmake "BUILDROOT=${D}" install | ||
| 70 | |||
| 71 | # Remove /var/run from package as cupsd will populate it on startup | ||
| 72 | rm -fr ${D}/${localstatedir}/run | ||
| 73 | rm -fr ${D}/${localstatedir}/log | ||
| 74 | rmdir ${D}/${libexecdir}/${BPN}/driver | ||
| 75 | |||
| 76 | # Fix the pam configuration file permissions | ||
| 77 | if ${@bb.utils.contains('PACKAGECONFIG', 'pam', 'true', 'false', d)}; then | ||
| 78 | chmod 0644 ${D}${sysconfdir}/pam.d/cups | ||
| 79 | fi | ||
| 80 | |||
| 81 | # Remove sysinit script and symlinks if sysvinit is not in DISTRO_FEATURES | ||
| 82 | if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','false','true',d)}; then | ||
| 83 | rm -rf ${D}${sysconfdir}/init.d/ | ||
| 84 | rm -rf ${D}${sysconfdir}/rc* | ||
| 85 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
| 86 | install -m 0644 ${UNPACKDIR}/cups-volatiles.conf \ | ||
| 87 | ${D}${sysconfdir}/tmpfiles.d/cups.conf | ||
| 88 | else | ||
| 89 | install -d ${D}${sysconfdir}/default/volatiles | ||
| 90 | install -m 0644 ${UNPACKDIR}/volatiles.99_cups \ | ||
| 91 | ${D}${sysconfdir}/default/volatiles/99_cups | ||
| 92 | fi | ||
| 93 | } | ||
| 94 | |||
| 95 | PACKAGES =+ "${PN}-lib ${PN}-libimage ${PN}-webif" | ||
| 96 | |||
| 97 | RDEPENDS:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'procps', '', d)}" | ||
| 98 | FILES:${PN} += "${libexecdir}/cups/ ${systemd_system_unitdir}/system-cups.slice" | ||
| 99 | |||
| 100 | FILES:${PN}-lib = "${libdir}/libcups.so.*" | ||
| 101 | |||
| 102 | FILES:${PN}-libimage = "${libdir}/libcupsimage.so.*" | ||
| 103 | |||
| 104 | # put the html for the web interface into its own PACKAGE | ||
| 105 | FILES:${PN}-webif += "${datadir}/doc/cups/ ${datadir}/icons/" | ||
| 106 | RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'webif', '${PN}-webif', '', d)}" | ||
| 107 | |||
| 108 | CONFFILES:${PN} += "${sysconfdir}/cups/cupsd.conf" | ||
| 109 | |||
| 110 | MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/cups-config" | ||
| 111 | |||
| 112 | LOCALE_PATHS += "${datadir}/cups/templates" | ||
| 113 | |||
| 114 | SYSROOT_PREPROCESS_FUNCS += "cups_sysroot_preprocess" | ||
| 115 | cups_sysroot_preprocess () { | ||
| 116 | sed -i ${SYSROOT_DESTDIR}${bindir_crossscripts}/cups-config -e 's:cups_datadir=.*:cups_datadir=${datadir}/cups:' -e 's:cups_serverbin=.*:cups_serverbin=${libexecdir}/cups:' | ||
| 117 | } | ||
diff --git a/meta/recipes-extended/cups/cups/0001-use-echo-only-in-init.patch b/meta/recipes-extended/cups/cups/0001-use-echo-only-in-init.patch deleted file mode 100644 index c0cb7df581..0000000000 --- a/meta/recipes-extended/cups/cups/0001-use-echo-only-in-init.patch +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | From c5f943b1ac6e1c86ae64686e29e178fedf933e96 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Saul Wold <sgw@linux.intel.com> | ||
| 3 | Date: Thu, 13 Dec 2012 19:03:52 -0800 | ||
| 4 | Subject: [PATCH] use echo only in init | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [embedded specific] | ||
| 7 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
| 8 | --- | ||
| 9 | scheduler/cups.sh.in | 2 +- | ||
| 10 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 11 | |||
| 12 | diff --git a/scheduler/cups.sh.in b/scheduler/cups.sh.in | ||
| 13 | index 74cce18..c57f0db 100644 | ||
| 14 | --- a/scheduler/cups.sh.in | ||
| 15 | +++ b/scheduler/cups.sh.in | ||
| 16 | @@ -51,7 +51,7 @@ case "`uname`" in | ||
| 17 | ECHO_ERROR=: | ||
| 18 | ;; | ||
| 19 | |||
| 20 | - Linux*) | ||
| 21 | + DisableLinux*) | ||
| 22 | IS_ON=/bin/true | ||
| 23 | if test -f /etc/init.d/functions; then | ||
| 24 | . /etc/init.d/functions | ||
diff --git a/meta/recipes-extended/cups/cups/0002-don-t-try-to-run-generated-binaries.patch b/meta/recipes-extended/cups/cups/0002-don-t-try-to-run-generated-binaries.patch deleted file mode 100644 index cf2f1a6747..0000000000 --- a/meta/recipes-extended/cups/cups/0002-don-t-try-to-run-generated-binaries.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From da9a313ae5a2d1da683dd58572df0d7a660eb922 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Koen Kooi <koen@dominion.thruhere.net> | ||
| 3 | Date: Sun, 30 Jan 2011 16:37:27 +0100 | ||
| 4 | Subject: [PATCH] don't try to run generated binaries | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [embedded specific] | ||
| 7 | |||
| 8 | Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> | ||
| 9 | --- | ||
| 10 | ppdc/Makefile | 4 ++-- | ||
| 11 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 12 | |||
| 13 | diff --git a/ppdc/Makefile b/ppdc/Makefile | ||
| 14 | index e36ed11..3fe97e1 100644 | ||
| 15 | --- a/ppdc/Makefile | ||
| 16 | +++ b/ppdc/Makefile | ||
| 17 | @@ -187,8 +187,8 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \ | ||
| 18 | $(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o genstrings genstrings.o \ | ||
| 19 | libcupsppdc.a $(LINKCUPSSTATIC) | ||
| 20 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ | ||
| 21 | - echo Generating localization strings... | ||
| 22 | - ./genstrings >sample.c | ||
| 23 | +# echo Generating localization strings... | ||
| 24 | +# ./genstrings >sample.c | ||
| 25 | |||
| 26 | |||
| 27 | # | ||
diff --git a/meta/recipes-extended/cups/cups/0004-cups-fix-multilib-install-file-conflicts.patch b/meta/recipes-extended/cups/cups/0004-cups-fix-multilib-install-file-conflicts.patch deleted file mode 100644 index 31338822e6..0000000000 --- a/meta/recipes-extended/cups/cups/0004-cups-fix-multilib-install-file-conflicts.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From 880bad2c6b08afd2e2e303bc3ceea559edbe76d2 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Kai Kang <kai.kang@windriver.com> | ||
| 3 | Date: Wed, 3 Oct 2018 00:27:11 +0800 | ||
| 4 | Subject: [PATCH] cups: fix multilib install file conflicts | ||
| 5 | |||
| 6 | @CUPS_SERVERBIN@ is ${libdir} related that causes multilib install file | ||
| 7 | conflict. Remove @CUPS_SERVERBIN@ from the comment line of cups-files.conf to | ||
| 8 | avoid the conflict. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [OE specific] | ||
| 11 | |||
| 12 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
| 13 | --- | ||
| 14 | conf/cups-files.conf.in | 2 +- | ||
| 15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 16 | |||
| 17 | diff --git a/conf/cups-files.conf.in b/conf/cups-files.conf.in | ||
| 18 | index f96f745..27d8be9 100644 | ||
| 19 | --- a/conf/cups-files.conf.in | ||
| 20 | +++ b/conf/cups-files.conf.in | ||
| 21 | @@ -70,7 +70,7 @@ PageLog @CUPS_LOGDIR@/page_log | ||
| 22 | #RequestRoot @CUPS_REQUESTS@ | ||
| 23 | |||
| 24 | # Location of helper programs... | ||
| 25 | -#ServerBin @CUPS_SERVERBIN@ | ||
| 26 | +#ServerBin | ||
| 27 | |||
| 28 | # SSL/TLS keychain for the scheduler... | ||
| 29 | #ServerKeychain @CUPS_SERVERKEYCHAIN@ | ||
diff --git a/meta/recipes-extended/cups/cups/cups-volatiles.conf b/meta/recipes-extended/cups/cups/cups-volatiles.conf deleted file mode 100644 index 0ede78e1c8..0000000000 --- a/meta/recipes-extended/cups/cups/cups-volatiles.conf +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d /var/log/cups 0755 root root - | ||
diff --git a/meta/recipes-extended/cups/cups/libexecdir.patch b/meta/recipes-extended/cups/cups/libexecdir.patch deleted file mode 100644 index 493c7970ea..0000000000 --- a/meta/recipes-extended/cups/cups/libexecdir.patch +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | From 4ae7ad87aa022f5128be222dffbf0c50ec6e846e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ross Burton <ross.burton@arm.com> | ||
| 3 | Date: Tue, 13 Jul 2021 12:56:30 +0100 | ||
| 4 | Subject: [PATCH] Use $libexecdir instead of hardcoding $prefix/lib as this | ||
| 5 | breaks multilib builds. | ||
| 6 | |||
| 7 | Upstream-Status: Pending | ||
| 8 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 9 | --- | ||
| 10 | config-scripts/cups-directories.m4 | 4 ++-- | ||
| 11 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 12 | |||
| 13 | diff --git a/config-scripts/cups-directories.m4 b/config-scripts/cups-directories.m4 | ||
| 14 | index 069ee7b..2f67e5b 100644 | ||
| 15 | --- a/config-scripts/cups-directories.m4 | ||
| 16 | +++ b/config-scripts/cups-directories.m4 | ||
| 17 | @@ -239,7 +239,7 @@ AC_SUBST([CUPS_REQUESTS]) | ||
| 18 | AS_CASE(["$host_os_name"], [*-gnu], [ | ||
| 19 | # GNUs | ||
| 20 | INSTALL_SYSV="install-sysv" | ||
| 21 | - CUPS_SERVERBIN="$exec_prefix/lib/cups" | ||
| 22 | + CUPS_SERVERBIN="$libexecdir/cups" | ||
| 23 | ], [*bsd* | darwin*], [ | ||
| 24 | # *BSD and Darwin (macOS) | ||
| 25 | INSTALL_SYSV="" | ||
| 26 | @@ -247,7 +247,7 @@ AS_CASE(["$host_os_name"], [*-gnu], [ | ||
| 27 | ], [*], [ | ||
| 28 | # All others | ||
| 29 | INSTALL_SYSV="install-sysv" | ||
| 30 | - CUPS_SERVERBIN="$exec_prefix/lib/cups" | ||
| 31 | + CUPS_SERVERBIN="$libexecdir/cups" | ||
| 32 | ]) | ||
| 33 | |||
| 34 | AC_DEFINE_UNQUOTED([CUPS_SERVERBIN], ["$CUPS_SERVERBIN"], [Location of server programs.]) | ||
diff --git a/meta/recipes-extended/cups/cups/volatiles.99_cups b/meta/recipes-extended/cups/cups/volatiles.99_cups deleted file mode 100644 index cc0e19e4c8..0000000000 --- a/meta/recipes-extended/cups/cups/volatiles.99_cups +++ /dev/null | |||
| @@ -1,2 +0,0 @@ | |||
| 1 | # <type> <owner> <group> <mode> <path> <linksource> | ||
| 2 | d root root 0755 /var/log/cups none | ||
diff --git a/meta/recipes-extended/cups/cups_2.4.14.bb b/meta/recipes-extended/cups/cups_2.4.14.bb deleted file mode 100644 index 5d5a1dc97f..0000000000 --- a/meta/recipes-extended/cups/cups_2.4.14.bb +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | require cups.inc | ||
| 2 | |||
| 3 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" | ||
| 4 | |||
| 5 | SRC_URI[sha256sum] = "660288020dd6f79caf799811c4c1a3207a48689899ac2093959d70a3bdcb7699" | ||
diff --git a/meta/recipes-extended/diffutils/diffutils.inc b/meta/recipes-extended/diffutils/diffutils.inc deleted file mode 100644 index 194d6e5a1b..0000000000 --- a/meta/recipes-extended/diffutils/diffutils.inc +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | SUMMARY = "Diffutils contains tools used for finding differences between files" | ||
| 2 | HOMEPAGE = "https://www.gnu.org/software/diffutils/diffutils.html" | ||
| 3 | DESCRIPTION = "Diffutils contains the GNU diff, diff3, \ | ||
| 4 | sdiff, and cmp utilities. These programs are usually \ | ||
| 5 | used for creating patch files." | ||
| 6 | SECTION = "base" | ||
| 7 | |||
| 8 | inherit autotools texinfo update-alternatives gettext | ||
| 9 | |||
| 10 | ALTERNATIVE:${PN} = "diff cmp" | ||
| 11 | ALTERNATIVE_PRIORITY = "100" | ||
| 12 | |||
| 13 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/diffutils/diffutils/0001-Skip-strip-trailing-cr-test-case.patch b/meta/recipes-extended/diffutils/diffutils/0001-Skip-strip-trailing-cr-test-case.patch deleted file mode 100644 index 32793233f9..0000000000 --- a/meta/recipes-extended/diffutils/diffutils/0001-Skip-strip-trailing-cr-test-case.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From f31395c931bc633206eccfcfaaaa5d15021a3e86 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Peiran Hong <peiran.hong@windriver.com> | ||
| 3 | Date: Thu, 5 Sep 2019 15:42:22 -0400 | ||
| 4 | Subject: [PATCH] Skip strip-trailing-cr test case | ||
| 5 | |||
| 6 | Skip the test "strip-trailing-cr" since it requires valgrind to | ||
| 7 | work, but valgrind is considered too heavy-weight for diffutils | ||
| 8 | package. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [embedded specific] | ||
| 11 | |||
| 12 | Signed-off-by: Peiran Hong <peiran.hong@windriver.com> | ||
| 13 | |||
| 14 | --- | ||
| 15 | tests/Makefile.am | 1 - | ||
| 16 | 1 file changed, 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/tests/Makefile.am b/tests/Makefile.am | ||
| 19 | index 79bacfb..4adb4d7 100644 | ||
| 20 | --- a/tests/Makefile.am | ||
| 21 | +++ b/tests/Makefile.am | ||
| 22 | @@ -22,7 +22,6 @@ TESTS = \ | ||
| 23 | stdin \ | ||
| 24 | strcoll-0-names \ | ||
| 25 | filename-quoting \ | ||
| 26 | - strip-trailing-cr \ | ||
| 27 | timezone \ | ||
| 28 | colors \ | ||
| 29 | y2038-vs-32bit | ||
diff --git a/meta/recipes-extended/diffutils/diffutils/run-ptest b/meta/recipes-extended/diffutils/diffutils/run-ptest deleted file mode 100644 index ad467d9bd0..0000000000 --- a/meta/recipes-extended/diffutils/diffutils/run-ptest +++ /dev/null | |||
| @@ -1,4 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | abs_ptestdir=`echo "$(cd "$(dirname "$0")"; pwd)"` | ||
| 4 | make -C $abs_ptestdir/tests check-TESTS abs_top_srcdir="$abs_ptestdir" | ||
diff --git a/meta/recipes-extended/diffutils/diffutils_3.12.bb b/meta/recipes-extended/diffutils/diffutils_3.12.bb deleted file mode 100644 index d00dd772ad..0000000000 --- a/meta/recipes-extended/diffutils/diffutils_3.12.bb +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | LICENSE = "GPL-3.0-or-later" | ||
| 2 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 3 | |||
| 4 | require diffutils.inc | ||
| 5 | |||
| 6 | SRC_URI = "${GNU_MIRROR}/diffutils/diffutils-${PV}.tar.xz \ | ||
| 7 | file://run-ptest \ | ||
| 8 | file://0001-Skip-strip-trailing-cr-test-case.patch \ | ||
| 9 | " | ||
| 10 | |||
| 11 | SRC_URI[sha256sum] = "7c8b7f9fc8609141fdea9cece85249d308624391ff61dedaf528fcb337727dfd" | ||
| 12 | |||
| 13 | EXTRA_OECONF += "ac_cv_path_PR_PROGRAM=${bindir}/pr --without-libsigsegv-prefix" | ||
| 14 | EXTRA_OECONF += "gl_cv_func_strcasecmp_works=yes" | ||
| 15 | |||
| 16 | # latest gnulib is no longer able to handle this - I dare not try to fix that maze of abstractions and generators | ||
| 17 | CFLAGS:mingw32 = " -DSA_RESTART=0" | ||
| 18 | |||
| 19 | EXTRA_OEMAKE:append:mingw32 = " LIBS='-lbcrypt'" | ||
| 20 | inherit ptest | ||
| 21 | |||
| 22 | RDEPENDS:${PN}-ptest += "make perl" | ||
| 23 | |||
| 24 | do_install_ptest() { | ||
| 25 | t=${D}${PTEST_PATH} | ||
| 26 | install -D ${S}/build-aux/test-driver $t/build-aux/test-driver | ||
| 27 | cp -r ${S}/tests $t/ | ||
| 28 | install ${B}/tests/Makefile $t/tests/ | ||
| 29 | sed -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ | ||
| 30 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 31 | -e 's:${HOSTTOOLS_DIR}/::g' \ | ||
| 32 | -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ | ||
| 33 | -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ | ||
| 34 | -e 's|^Makefile:|_Makefile:|' \ | ||
| 35 | -e 's|bash|sh|' \ | ||
| 36 | -e 's|^top_srcdir = \(.*\)|top_srcdir = ..\/|' \ | ||
| 37 | -e 's|^srcdir = \(.*\)|srcdir = .|' \ | ||
| 38 | -e 's|"`$(built_programs)`"|diff|' \ | ||
| 39 | -e 's|gawk|awk|g' \ | ||
| 40 | -i $t/tests/Makefile | ||
| 41 | } | ||
diff --git a/meta/recipes-extended/ed/ed_1.22.2.bb b/meta/recipes-extended/ed/ed_1.22.2.bb deleted file mode 100644 index 80d4e116ac..0000000000 --- a/meta/recipes-extended/ed/ed_1.22.2.bb +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | SUMMARY = "Line-oriented text editor" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/ed/" | ||
| 3 | DESCRIPTION = "GNU ed is a line-oriented text editor. It is used to create, display, modify and otherwise manipulate text files, both interactively and via shell scripts. A restricted version of ed, red, can only edit files in the current directory and cannot execute shell commands." | ||
| 4 | |||
| 5 | LICENSE = "GPL-2.0-only" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=cca7f74ec83b7a9ce7ccd195aad471bd \ | ||
| 7 | file://ed.h;endline=20;md5=a24e7f91c0fb83e65a746f5994762a49 \ | ||
| 8 | file://main.c;endline=17;md5=fd6ad9f1853f123f4ae7a31d59761f09 \ | ||
| 9 | " | ||
| 10 | |||
| 11 | SECTION = "base" | ||
| 12 | |||
| 13 | CVE_PRODUCT = "gnu:ed" | ||
| 14 | |||
| 15 | # LSB states that ed should be in /bin/ | ||
| 16 | bindir = "${base_bindir}" | ||
| 17 | |||
| 18 | # Upstream regularly removes previous releases from https://ftp.gnu.org/gnu/ed/ | ||
| 19 | SRC_URI = "${GNU_MIRROR}/ed/${BP}.tar.lz" | ||
| 20 | UPSTREAM_CHECK_URI = "${GNU_MIRROR}/ed/" | ||
| 21 | |||
| 22 | SRC_URI[sha256sum] = "f58d15242056e15af76f13f34c60d890fa2a2d5cb0abef91c115e4d83794ffe3" | ||
| 23 | |||
| 24 | EXTRA_OEMAKE = "-e MAKEFLAGS=" | ||
| 25 | |||
| 26 | inherit texinfo | ||
| 27 | |||
| 28 | do_configure() { | ||
| 29 | ${S}/configure | ||
| 30 | } | ||
| 31 | |||
| 32 | do_install() { | ||
| 33 | oe_runmake 'DESTDIR=${D}' install | ||
| 34 | # Info dir listing isn't interesting at this point so remove it if it exists. | ||
| 35 | if [ -e "${D}${infodir}/dir" ]; then | ||
| 36 | rm -f ${D}${infodir}/dir | ||
| 37 | fi | ||
| 38 | } | ||
diff --git a/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch b/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch deleted file mode 100644 index 79232a6b00..0000000000 --- a/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | From 27757ce1a8956591d22e7f9dc8cef37e37be8e9f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Tudor Florea <tudor.florea@enea.com> | ||
| 3 | Date: Wed, 28 May 2014 18:59:54 +0200 | ||
| 4 | Subject: [PATCH] ethtool: use serial-tests config needed by ptest. | ||
| 5 | |||
| 6 | ptest needs buildtest-TESTS and runtest-TESTS targets. | ||
| 7 | serial-tests is required to generate those targets. | ||
| 8 | |||
| 9 | Signed-off-by: Tudor Florea <tudor.florea@enea.com> | ||
| 10 | Upstream-Status: Inappropriate | ||
| 11 | (default automake behavior incompatible with ptest) | ||
| 12 | --- | ||
| 13 | configure.ac | 2 +- | ||
| 14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 15 | |||
| 16 | diff --git a/configure.ac b/configure.ac | ||
| 17 | index f5fdc8b..3eab387 100644 | ||
| 18 | --- a/configure.ac | ||
| 19 | +++ b/configure.ac | ||
| 20 | @@ -3,7 +3,7 @@ AC_INIT(ethtool, 6.15, netdev@vger.kernel.org) | ||
| 21 | AC_PREREQ(2.52) | ||
| 22 | AC_CONFIG_MACRO_DIR([m4]) | ||
| 23 | AC_CONFIG_SRCDIR([ethtool.c]) | ||
| 24 | -AM_INIT_AUTOMAKE([gnu subdir-objects]) | ||
| 25 | +AM_INIT_AUTOMAKE([gnu subdir-objects serial-tests]) | ||
| 26 | AC_CONFIG_HEADERS([ethtool-config.h]) | ||
| 27 | |||
| 28 | AM_MAINTAINER_MODE | ||
diff --git a/meta/recipes-extended/ethtool/ethtool/run-ptest b/meta/recipes-extended/ethtool/ethtool/run-ptest deleted file mode 100644 index 1e245da112..0000000000 --- a/meta/recipes-extended/ethtool/ethtool/run-ptest +++ /dev/null | |||
| @@ -1,2 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | make -k runtest-TESTS | ||
diff --git a/meta/recipes-extended/ethtool/ethtool_6.15.bb b/meta/recipes-extended/ethtool/ethtool_6.15.bb deleted file mode 100644 index eb6b272d4a..0000000000 --- a/meta/recipes-extended/ethtool/ethtool_6.15.bb +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | SUMMARY = "Display or change ethernet card settings" | ||
| 2 | DESCRIPTION = "A small utility for examining and tuning the settings of your ethernet-based network interfaces." | ||
| 3 | HOMEPAGE = "http://www.kernel.org/pub/software/network/ethtool/" | ||
| 4 | SECTION = "console/network" | ||
| 5 | LICENSE = "GPL-2.0-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 7 | file://ethtool.c;beginline=4;endline=17;md5=c19b30548c582577fc6b443626fc1216" | ||
| 8 | |||
| 9 | SRC_URI = "${KERNELORG_MIRROR}/software/network/ethtool/ethtool-${PV}.tar.gz \ | ||
| 10 | file://run-ptest \ | ||
| 11 | file://avoid_parallel_tests.patch \ | ||
| 12 | " | ||
| 13 | |||
| 14 | SRC_URI[sha256sum] = "5d21a75b54c5e617b8ac0fe161e2ef3a75ecdf569ab64831474882dd3ece6077" | ||
| 15 | |||
| 16 | UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/software/network/ethtool/" | ||
| 17 | |||
| 18 | inherit autotools ptest bash-completion pkgconfig | ||
| 19 | |||
| 20 | RDEPENDS:${PN}-ptest += "make bash" | ||
| 21 | |||
| 22 | PACKAGECONFIG ?= "netlink" | ||
| 23 | PACKAGECONFIG[netlink] = "--enable-netlink,--disable-netlink,libmnl," | ||
| 24 | |||
| 25 | FILES:${PN} += "${datadir}/metainfo/org.kernel.software.network.ethtool.metainfo.xml" | ||
| 26 | |||
| 27 | do_compile_ptest() { | ||
| 28 | oe_runmake buildtest-TESTS | ||
| 29 | } | ||
| 30 | |||
| 31 | do_install_ptest () { | ||
| 32 | cp ${B}/Makefile ${D}${PTEST_PATH} | ||
| 33 | install ${B}/test-cmdline ${D}${PTEST_PATH} | ||
| 34 | if ${@bb.utils.contains('PACKAGECONFIG', 'netlink', 'false', 'true', d)}; then | ||
| 35 | install ${B}/test-features ${D}${PTEST_PATH} | ||
| 36 | fi | ||
| 37 | install ${B}/ethtool ${D}${PTEST_PATH}/ethtool | ||
| 38 | sed -i 's/^Makefile/_Makefile/' ${D}${PTEST_PATH}/Makefile | ||
| 39 | } | ||
diff --git a/meta/recipes-extended/findutils/findutils.inc b/meta/recipes-extended/findutils/findutils.inc deleted file mode 100644 index ddcc05750b..0000000000 --- a/meta/recipes-extended/findutils/findutils.inc +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | SUMMARY = "find, locate, and xargs binaries" | ||
| 2 | DESCRIPTION = "The GNU Find Utilities are the basic directory searching utilities of the GNU operating system. \ | ||
| 3 | These programs are typically used in conjunction with other programs to provide modular and powerful directory \ | ||
| 4 | search and file locating capabilities to other commands." | ||
| 5 | HOMEPAGE = "http://www.gnu.org/software/findutils/" | ||
| 6 | BUGTRACKER = "http://savannah.gnu.org/bugs/?group=findutils" | ||
| 7 | SECTION = "console/utils" | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.xz \ | ||
| 10 | file://run-ptest \ | ||
| 11 | " | ||
| 12 | |||
| 13 | inherit autotools gettext texinfo update-alternatives ptest | ||
| 14 | |||
| 15 | ALTERNATIVE:${PN} = "find xargs" | ||
| 16 | ALTERNATIVE_PRIORITY = "100" | ||
| 17 | |||
| 18 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/findutils/findutils/run-ptest b/meta/recipes-extended/findutils/findutils/run-ptest deleted file mode 100644 index afe004b01a..0000000000 --- a/meta/recipes-extended/findutils/findutils/run-ptest +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | #!/bin/bash | ||
| 2 | |||
| 3 | # create temporary symlink to workaround missing oldfind | ||
| 4 | ln -s /usr/bin/find /tmp/oldfind | ||
| 5 | # make oldfind visible | ||
| 6 | export PATH="/tmp:${PATH}" | ||
| 7 | |||
| 8 | # Add findutils ptest directory to PATH for getlimits | ||
| 9 | export PATH="/usr/lib/findutils/ptest:${PATH}" | ||
| 10 | |||
| 11 | export built_programs="find xargs locate updatedb" | ||
| 12 | |||
| 13 | # this gets substituted by sed during build | ||
| 14 | export VERSION="__run_ptest_version__" | ||
| 15 | |||
| 16 | # Force ASCII quotes so exp vs err comparisons are stable across locales. | ||
| 17 | export LC_ALL=C | ||
| 18 | |||
| 19 | for f in tests/*/*.sh; do | ||
| 20 | bash $f ; | ||
| 21 | case $? in | ||
| 22 | 0 ) | ||
| 23 | echo -n "PASS";; | ||
| 24 | 77 ) | ||
| 25 | echo -n "SKIP";; | ||
| 26 | * ) | ||
| 27 | echo -n "FAIL";; | ||
| 28 | esac | ||
| 29 | echo ": $f" | ||
| 30 | done | ||
| 31 | |||
| 32 | #remove symlink | ||
| 33 | rm -f /tmp/oldfind | ||
| 34 | |||
| 35 | echo | ||
diff --git a/meta/recipes-extended/findutils/findutils_4.10.0.bb b/meta/recipes-extended/findutils/findutils_4.10.0.bb deleted file mode 100644 index 29ad6c7350..0000000000 --- a/meta/recipes-extended/findutils/findutils_4.10.0.bb +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | require findutils.inc | ||
| 2 | |||
| 3 | # GPL-2.0-or-later (<< 4.2.32), GPL-3.0-or-later (>= 4.2.32) | ||
| 4 | LICENSE = "GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" | ||
| 6 | |||
| 7 | DEPENDS = "bison-native" | ||
| 8 | |||
| 9 | SRC_URI[sha256sum] = "1387e0b67ff247d2abde998f90dfbf70c1491391a59ddfecb8ae698789f0a4f5" | ||
| 10 | |||
| 11 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
| 12 | |||
| 13 | EXTRA_OECONF += "ac_cv_path_SORT=${bindir}/sort" | ||
| 14 | |||
| 15 | # need od from coreutils for -t option | ||
| 16 | RDEPENDS:${PN}-ptest += "bash sed grep coreutils" | ||
| 17 | |||
| 18 | do_install_ptest:class-target() { | ||
| 19 | mkdir -p ${D}${PTEST_PATH}/tests/ | ||
| 20 | cp ${S}/init.cfg ${D}${PTEST_PATH} | ||
| 21 | cp -r ${S}/tests/* ${D}${PTEST_PATH}/tests/ | ||
| 22 | install -m 755 ${B}/find/getlimits ${D}${PTEST_PATH}/ | ||
| 23 | |||
| 24 | # substitute value in run-ptest with actual version | ||
| 25 | sed -i -e 's/__run_ptest_version__/${PV}/' ${D}${PTEST_PATH}/run-ptest | ||
| 26 | } | ||
diff --git a/meta/recipes-extended/gawk/gawk/0001-configure.ac-re-enable-disabled-printf-features.patch b/meta/recipes-extended/gawk/gawk/0001-configure.ac-re-enable-disabled-printf-features.patch deleted file mode 100644 index bcbc569531..0000000000 --- a/meta/recipes-extended/gawk/gawk/0001-configure.ac-re-enable-disabled-printf-features.patch +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | From 9ce3184188e3fa275fde0258a165f4446a6e80f7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Kanavin <alex@linutronix.de> | ||
| 3 | Date: Fri, 22 Nov 2024 12:13:58 +0100 | ||
| 4 | Subject: [PATCH] configure.ac: re-enable disabled printf features | ||
| 5 | |||
| 6 | This is needed for ptests to pass for one thing. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [needs a config option] | ||
| 9 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 10 | --- | ||
| 11 | configure.ac | 4 ++-- | ||
| 12 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 13 | |||
| 14 | diff --git a/configure.ac b/configure.ac | ||
| 15 | index 0ccd460..7df7e5b 100644 | ||
| 16 | --- a/configure.ac | ||
| 17 | +++ b/configure.ac | ||
| 18 | @@ -400,7 +400,7 @@ int main() | ||
| 19 | ])], | ||
| 20 | has_f_format=yes, | ||
| 21 | has_f_format=no, | ||
| 22 | - has_f_format=no dnl Cross-compiling, assuming the worst. | ||
| 23 | + has_f_format=yes dnl Cross-compiling in oe-core | ||
| 24 | ) | ||
| 25 | if test "$has_f_format" = yes | ||
| 26 | then | ||
| 27 | @@ -429,7 +429,7 @@ int main() | ||
| 28 | ])], | ||
| 29 | has_a_format=yes, | ||
| 30 | has_a_format=no, | ||
| 31 | - has_a_format=no dnl Cross-compiling, assuming the worst. | ||
| 32 | + has_a_format=yes dnl Cross-compiling in oe-core | ||
| 33 | ) | ||
| 34 | if test "$has_a_format" = yes | ||
| 35 | then | ||
diff --git a/meta/recipes-extended/gawk/gawk/run-ptest b/meta/recipes-extended/gawk/gawk/run-ptest deleted file mode 100644 index f4ef3e7bd4..0000000000 --- a/meta/recipes-extended/gawk/gawk/run-ptest +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | cd test | ||
| 4 | for i in `grep -E "^[a-z0-9_-]*:$" Maketests |awk -F: '{print $1}'`; do | ||
| 5 | unset LANG | ||
| 6 | grep -q "^$i$" skipped.txt | ||
| 7 | if [ $? -eq 0 ]; then | ||
| 8 | echo "SKIP: $i" | ||
| 9 | continue | ||
| 10 | fi | ||
| 11 | srcdir=`pwd` AWKPROG=gawk AWK=gawk CMP=cmp make -f Maketests $i >$i.tmp 2>&1 | ||
| 12 | if [ -e _$i ]; then | ||
| 13 | cat _$i | ||
| 14 | grep -q "support not compiled in" _$i | ||
| 15 | if [ $? -eq 0 ]; then | ||
| 16 | echo "SKIP: $i" | ||
| 17 | continue | ||
| 18 | fi | ||
| 19 | fi | ||
| 20 | grep -q "Error" $i.tmp | ||
| 21 | if [ $? -eq 0 ]; then | ||
| 22 | echo "FAIL: $i" | ||
| 23 | else | ||
| 24 | echo "PASS: $i" | ||
| 25 | rm -f $i.tmp | ||
| 26 | fi | ||
| 27 | done | ||
diff --git a/meta/recipes-extended/gawk/gawk_5.3.2.bb b/meta/recipes-extended/gawk/gawk_5.3.2.bb deleted file mode 100644 index 0448d90ba7..0000000000 --- a/meta/recipes-extended/gawk/gawk_5.3.2.bb +++ /dev/null | |||
| @@ -1,97 +0,0 @@ | |||
| 1 | SUMMARY = "GNU awk text processing utility" | ||
| 2 | DESCRIPTION = "The GNU version of awk, a text processing utility. \ | ||
| 3 | Awk interprets a special-purpose programming language to do \ | ||
| 4 | quick and easy text pattern matching and reformatting jobs." | ||
| 5 | HOMEPAGE = "https://www.gnu.org/software/gawk/" | ||
| 6 | BUGTRACKER = "bug-gawk@gnu.org" | ||
| 7 | SECTION = "console/utils" | ||
| 8 | |||
| 9 | LICENSE = "GPL-3.0-or-later & AGPL-3.0-or-later" | ||
| 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
| 11 | file://support/pma.c;md5=bb0026ee5e8b950e67d670dd2d60cc93;beginline=8;endline=19 \ | ||
| 12 | file://support/pma.h;md5=bb0026ee5e8b950e67d670dd2d60cc93;beginline=8;endline=19" | ||
| 13 | |||
| 14 | LICENSE:${PN} = "GPL-3.0-or-later" | ||
| 15 | LICENSE:${PN}:append = " ${@bb.utils.contains('PACKAGECONFIG', 'pma-if-64bit', ' & AGPL-3.0-or-later', '', d)}" | ||
| 16 | |||
| 17 | PACKAGECONFIG ??= "readline mpfr" | ||
| 18 | PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" | ||
| 19 | PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr" | ||
| 20 | # pma: persistent memory allocator: | ||
| 21 | # Disabled by default due to AGPL license. | ||
| 22 | # Note that PMA works only for 64-bit targets and is automatically disabled at configure time otherwise. | ||
| 23 | PACKAGECONFIG[pma-if-64bit] = "--enable-pma,--disable-pma, " | ||
| 24 | |||
| 25 | SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \ | ||
| 26 | file://run-ptest \ | ||
| 27 | file://0001-configure.ac-re-enable-disabled-printf-features.patch \ | ||
| 28 | " | ||
| 29 | |||
| 30 | SRC_URI[sha256sum] = "8639a1a88fb411a1be02663739d03e902a6d313b5c6fe024d0bfeb3341a19a11" | ||
| 31 | |||
| 32 | inherit autotools gettext texinfo update-alternatives | ||
| 33 | |||
| 34 | FILES:${PN} += "${datadir}/awk" | ||
| 35 | FILES:${PN}-dev += "${libdir}/${BPN}/*.la" | ||
| 36 | |||
| 37 | PACKAGES =+ "${PN}-gawkbug" | ||
| 38 | FILES:${PN}-gawkbug += "${bindir}/gawkbug" | ||
| 39 | |||
| 40 | ALTERNATIVE:${PN} = "awk" | ||
| 41 | ALTERNATIVE_TARGET[awk] = "${bindir}/gawk" | ||
| 42 | ALTERNATIVE_PRIORITY = "100" | ||
| 43 | |||
| 44 | do_install:append() { | ||
| 45 | # remove the link since we don't package it | ||
| 46 | rm ${D}${bindir}/awk | ||
| 47 | # Strip non-reproducible build flags (containing build paths) | ||
| 48 | sed -i -e 's|^CC.*|CC=""|g' -e 's|^CFLAGS.*|CFLAGS=""|g' ${D}${bindir}/gawkbug | ||
| 49 | } | ||
| 50 | |||
| 51 | inherit ptest | ||
| 52 | |||
| 53 | do_install_ptest() { | ||
| 54 | mkdir ${D}${PTEST_PATH}/test | ||
| 55 | ln -s ${bindir}/gawk ${D}${PTEST_PATH}/gawk | ||
| 56 | # The list of tests is all targets in Maketests, apart from the dummy Gt-dummy | ||
| 57 | TESTS=$(awk -F: '$1 == "Gt-dummy" { next } /[[:alnum:]]+:$/ { print $1 }' ${S}/test/Maketests) | ||
| 58 | for i in $TESTS Maketests inclib.awk; do | ||
| 59 | cp ${S}/test/$i* ${D}${PTEST_PATH}/test | ||
| 60 | done | ||
| 61 | sed -i \ | ||
| 62 | -e 's|#! /bin/gawk|#! ${bindir}/gawk|g' \ | ||
| 63 | -e 's|#! /usr/local/bin/gawk|#! ${bindir}/gawk|g' \ | ||
| 64 | -e 's|#!${base_bindir}/awk|#!${bindir}/awk|g' ${D}${PTEST_PATH}/test/*.awk | ||
| 65 | |||
| 66 | sed -i -e "s|GAWKLOCALE|LANG|g" ${D}${PTEST_PATH}/test/Maketests | ||
| 67 | |||
| 68 | # These tests require an unloaded host as otherwise timing sensitive tests can fail | ||
| 69 | # https://bugzilla.yoctoproject.org/show_bug.cgi?id=14371 | ||
| 70 | rm -f ${D}${PTEST_PATH}/test/time.* | ||
| 71 | rm -f ${D}${PTEST_PATH}/test/timeout.* | ||
| 72 | for t in time timeout; do | ||
| 73 | echo $t >> ${D}${PTEST_PATH}/test/skipped.txt | ||
| 74 | done | ||
| 75 | } | ||
| 76 | |||
| 77 | do_install_ptest:append:libc-musl() { | ||
| 78 | # Reported https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html | ||
| 79 | rm -f ${D}${PTEST_PATH}/test/clos1way6.* | ||
| 80 | # Needs en_US.UTF-8 but then does not work with musl | ||
| 81 | rm -f ${D}${PTEST_PATH}/test/backsmalls1.* | ||
| 82 | # Needs en_US.UTF-8 but then does not work with musl | ||
| 83 | rm -f ${D}${PTEST_PATH}/test/commas.* | ||
| 84 | # The below two need LANG=C inside the make rule for musl | ||
| 85 | rm -f ${D}${PTEST_PATH}/test/rebt8b1.* | ||
| 86 | rm -f ${D}${PTEST_PATH}/test/regx8bit.* | ||
| 87 | for t in clos1way6 backsmalls1 commas rebt8b1 regx8bit; do | ||
| 88 | echo $t >> ${D}${PTEST_PATH}/test/skipped.txt | ||
| 89 | done | ||
| 90 | } | ||
| 91 | |||
| 92 | RDEPENDS:${PN}-ptest += "make locale-base-en-us coreutils" | ||
| 93 | |||
| 94 | RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us.iso-8859-1" | ||
| 95 | RDEPENDS:${PN}-ptest:append:libc-musl = " musl-locales" | ||
| 96 | |||
| 97 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/ghostscript/ghostscript/0001-Fix-32-bit-build.patch b/meta/recipes-extended/ghostscript/ghostscript/0001-Fix-32-bit-build.patch deleted file mode 100644 index 8d1e9d46e6..0000000000 --- a/meta/recipes-extended/ghostscript/ghostscript/0001-Fix-32-bit-build.patch +++ /dev/null | |||
| @@ -1,63 +0,0 @@ | |||
| 1 | From 3c0be6e4fcffa63e4a5a1b0aec057cebc4d2562f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ken Sharp <Ken.Sharp@artifex.com> | ||
| 3 | Date: Wed, 10 Sep 2025 08:55:30 +0100 | ||
| 4 | Subject: [PATCH] Fix 32-bit build | ||
| 5 | |||
| 6 | Bug #708824 "ghostscript 10.06.0 compilation failure on 32-bit archs" | ||
| 7 | |||
| 8 | nbytes shiouldn't be an intptr_t, it doesn't get used for pointer | ||
| 9 | arithmetic. Previously it was a uint, should be a int64_t, to fit with | ||
| 10 | all the other devices. | ||
| 11 | |||
| 12 | Checked other warnings, and found a (very minor) one in gdevdbit.c, fix | ||
| 13 | that while we're here (signed/unsigned mismatch, we don't really care). | ||
| 14 | |||
| 15 | Upstream-Status: Backport [https://github.com/ArtifexSoftware/ghostpdl/commit/3c0be6e4fcffa63e4a5a1b0aec057cebc4d2562f] | ||
| 16 | |||
| 17 | Signed-off-by: Vijay Anusuri <vanusuri@mvista.com> | ||
| 18 | --- | ||
| 19 | base/gdevdbit.c | 2 +- | ||
| 20 | base/gdevmpla.c | 6 +++--- | ||
| 21 | 2 files changed, 4 insertions(+), 4 deletions(-) | ||
| 22 | |||
| 23 | diff --git a/base/gdevdbit.c b/base/gdevdbit.c | ||
| 24 | index e07cc3f3b8..1b5c69325b 100644 | ||
| 25 | --- a/base/gdevdbit.c | ||
| 26 | +++ b/base/gdevdbit.c | ||
| 27 | @@ -191,7 +191,7 @@ gx_default_copy_alpha_hl_color(gx_device * dev, const byte * data, int data_x, | ||
| 28 | fit_copy(dev, data, data_x, raster, id, x, y, width, height); | ||
| 29 | row_alpha = data; | ||
| 30 | out_raster = bitmap_raster(width * (size_t)byte_depth); | ||
| 31 | - if (check_64bit_multiply(out_raster, ncomps, &product) != 0) | ||
| 32 | + if (check_64bit_multiply(out_raster, ncomps, (int64_t *) &product) != 0) | ||
| 33 | return gs_note_error(gs_error_undefinedresult); | ||
| 34 | gb_buff = gs_alloc_bytes(mem, product, "copy_alpha_hl_color(gb_buff)"); | ||
| 35 | if (gb_buff == 0) { | ||
| 36 | diff --git a/base/gdevmpla.c b/base/gdevmpla.c | ||
| 37 | index 2f0d522561..ffc5ff42e6 100644 | ||
| 38 | --- a/base/gdevmpla.c | ||
| 39 | +++ b/base/gdevmpla.c | ||
| 40 | @@ -1954,12 +1954,12 @@ mem_planar_strip_copy_rop2(gx_device * dev, | ||
| 41 | int i; | ||
| 42 | int j; | ||
| 43 | intptr_t chunky_sraster; | ||
| 44 | - intptr_t nbytes; | ||
| 45 | + int64_t nbytes; | ||
| 46 | byte **line_ptrs; | ||
| 47 | byte *sbuf, *buf; | ||
| 48 | |||
| 49 | chunky_sraster = sraster * (intptr_t)mdev->num_planar_planes; | ||
| 50 | - if (check_64bit_multiply(height, chunky_sraster, (size_t *)&nbytes) != 0) | ||
| 51 | + if (check_64bit_multiply(height, chunky_sraster, &nbytes) != 0) | ||
| 52 | return gs_note_error(gs_error_undefinedresult); | ||
| 53 | buf = gs_alloc_bytes(mdev->memory, nbytes, "mem_planar_strip_copy_rop(buf)"); | ||
| 54 | if (buf == NULL) { | ||
| 55 | @@ -2003,7 +2003,7 @@ mem_planar_strip_copy_rop2(gx_device * dev, | ||
| 56 | intptr_t i; | ||
| 57 | intptr_t chunky_t_raster; | ||
| 58 | int chunky_t_height; | ||
| 59 | - intptr_t nbytes; | ||
| 60 | + int64_t nbytes; | ||
| 61 | byte **line_ptrs; | ||
| 62 | byte *tbuf, *buf; | ||
| 63 | gx_strip_bitmap newtex; | ||
diff --git a/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch b/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch deleted file mode 100644 index d191231c7b..0000000000 --- a/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From 85905ce3b1bc63f0be9eda9888e40d8e7a803d21 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Kai Kang <kai.kang@windriver.com> | ||
| 3 | Date: Thu, 29 Mar 2018 16:02:05 +0800 | ||
| 4 | Subject: [PATCH] avoid host contamination | ||
| 5 | |||
| 6 | Remove hardcode path refer to host to avoid host contamination. | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
| 10 | |||
| 11 | Rebase to 9.23 | ||
| 12 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 13 | --- | ||
| 14 | devices/devs.mak | 2 +- | ||
| 15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 16 | |||
| 17 | diff --git a/devices/devs.mak b/devices/devs.mak | ||
| 18 | index a5dbc7a..27b55f2 100644 | ||
| 19 | --- a/devices/devs.mak | ||
| 20 | +++ b/devices/devs.mak | ||
| 21 | @@ -403,7 +403,7 @@ $(DEVOBJ)gdevxalt.$(OBJ) : $(DEVSRC)gdevxalt.c $(GDEVX) $(math__h) $(memory__h)\ | ||
| 22 | ### NON PORTABLE, ONLY UNIX WITH GCC SUPPORT | ||
| 23 | |||
| 24 | $(DEVOBJ)X11.so : $(x11alt_) $(x11_) $(DEVS_MAK) $(MAKEDIRS) | ||
| 25 | - $(CCLD) $(LDFLAGS) -shared -o $(DEVOBJ)X11.so $(x11alt_) $(x11_) -L/usr/X11R6/lib -lXt -lSM -lICE -lXext -lX11 $(XLIBDIRS) | ||
| 26 | + $(CCLD) $(LDFLAGS) -shared -o $(DEVOBJ)X11.so $(x11alt_) $(x11_) -lXt -lSM -lICE -lXext -lX11 $(XLIBDIRS) | ||
| 27 | |||
| 28 | ###### --------------- Memory-buffered printer devices --------------- ###### | ||
| 29 | |||
diff --git a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.16-Werror-return-type.patch b/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.16-Werror-return-type.patch deleted file mode 100644 index 0598c3dcd2..0000000000 --- a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.16-Werror-return-type.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From c23b787f9a38be2cdc57133915c402b69acedd1a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Robert Yang <liezhi.yang@windriver.com> | ||
| 3 | Date: Mon, 4 May 2015 22:31:48 -0700 | ||
| 4 | Subject: [PATCH] base/gendev.c: fix for -Werror=return-type | ||
| 5 | |||
| 6 | Fixed: | ||
| 7 | base/gendev.c:80:1: error: return type defaults to 'int' [-Werror=return-type] | ||
| 8 | |||
| 9 | Upstream-Status: Pending | ||
| 10 | |||
| 11 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
| 12 | --- | ||
| 13 | base/gendev.c | 1 + | ||
| 14 | 1 file changed, 1 insertion(+) | ||
| 15 | |||
| 16 | diff --git a/base/gendev.c b/base/gendev.c | ||
| 17 | index f36cfe2..031f30b 100644 | ||
| 18 | --- a/base/gendev.c | ||
| 19 | +++ b/base/gendev.c | ||
| 20 | @@ -77,6 +77,7 @@ static const char *indent_item = ""; | ||
| 21 | /* Forward definitions */ | ||
| 22 | void add_entry(config *, const char *, const char *, bool); | ||
| 23 | |||
| 24 | +int | ||
| 25 | main(int argc, char *argv[]) | ||
| 26 | { | ||
| 27 | config conf; | ||
diff --git a/meta/recipes-extended/ghostscript/ghostscript_10.06.0.bb b/meta/recipes-extended/ghostscript/ghostscript_10.06.0.bb deleted file mode 100644 index 4cea898432..0000000000 --- a/meta/recipes-extended/ghostscript/ghostscript_10.06.0.bb +++ /dev/null | |||
| @@ -1,76 +0,0 @@ | |||
| 1 | SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" | ||
| 2 | DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ | ||
| 3 | a back-end to a program such as ghostview, it can display PostScript and PDF \ | ||
| 4 | documents in an X11 environment. \ | ||
| 5 | \ | ||
| 6 | Furthermore, it can render PostScript and PDF files as graphics to be printed \ | ||
| 7 | on non-PostScript printers. Supported printers include common \ | ||
| 8 | dot-matrix, inkjet and laser models. \ | ||
| 9 | " | ||
| 10 | HOMEPAGE = "http://www.ghostscript.com" | ||
| 11 | SECTION = "console/utils" | ||
| 12 | |||
| 13 | LICENSE = "AGPL-3.0-or-later" | ||
| 14 | LIC_FILES_CHKSUM = "file://LICENSE;md5=f98ffa763e50cded76f49bce73aade16" | ||
| 15 | |||
| 16 | DEPENDS = "tiff jpeg fontconfig cups libpng freetype zlib" | ||
| 17 | |||
| 18 | UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" | ||
| 19 | UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" | ||
| 20 | |||
| 21 | def gs_verdir(v): | ||
| 22 | return "".join(v.split(".")) | ||
| 23 | |||
| 24 | SRC_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${@gs_verdir("${PV}")}/${BPN}-${PV}.tar.gz \ | ||
| 25 | file://ghostscript-9.16-Werror-return-type.patch \ | ||
| 26 | file://avoid-host-contamination.patch \ | ||
| 27 | file://0001-Fix-32-bit-build.patch \ | ||
| 28 | " | ||
| 29 | |||
| 30 | SRC_URI[sha256sum] = "5bd6da34794928cc7e616f288e32bd0be7f9a5ca2d3c206a0af2c19a4e3a318f" | ||
| 31 | |||
| 32 | PACKAGECONFIG ??= "" | ||
| 33 | PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+3" | ||
| 34 | PACKAGECONFIG[libidn] = "--with-libidn,--without-libidn,libidn" | ||
| 35 | PACKAGECONFIG[libpaper] = "--with-libpaper,--without-libpaper,libpaper" | ||
| 36 | PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ | ||
| 37 | --without-x, virtual/libx11 libxext libxt" | ||
| 38 | |||
| 39 | EXTRA_OECONF = "--with-jbig2dec \ | ||
| 40 | --with-fontpath=${datadir}/fonts \ | ||
| 41 | CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ | ||
| 42 | PKGCONFIG=pkg-config \ | ||
| 43 | " | ||
| 44 | |||
| 45 | EXTRA_OECONF:append:mipsarcho32 = " --with-large_color_index=0" | ||
| 46 | |||
| 47 | EXTRA_OECONF:append:armv7a = "${@bb.utils.contains('TUNE_FEATURES','neon','',' --disable-neon',d)}" | ||
| 48 | EXTRA_OECONF:append:armv7ve = "${@bb.utils.contains('TUNE_FEATURES','neon','',' --disable-neon',d)}" | ||
| 49 | |||
| 50 | TARGET_CFLAGS += "-std=gnu17 -Wno-error=declaration-after-statement -fPIC" | ||
| 51 | |||
| 52 | # Uses autoconf but not automake, can't do out-of-tree | ||
| 53 | inherit autotools-brokensep pkgconfig | ||
| 54 | |||
| 55 | # Prune the source tree of libraries that we're using our packaging of, so that | ||
| 56 | # ghostscript can't link to them. Can't prune zlib as that's needed for the | ||
| 57 | # native tools. | ||
| 58 | prune_sources() { | ||
| 59 | rm -rf ${S}/jpeg/ ${S}/libpng/ ${S}/tiff/ ${S}/expat/ ${S}/freetype/ ${S}/cups/lib | ||
| 60 | } | ||
| 61 | do_unpack[postfuncs] += "prune_sources" | ||
| 62 | |||
| 63 | do_install:append () { | ||
| 64 | oe_runmake DESTDIR=${D} install-so | ||
| 65 | oe_runmake DESTDIR=${D} install-data | ||
| 66 | cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ | ||
| 67 | cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ | ||
| 68 | } | ||
| 69 | |||
| 70 | # ghostscript does not supports "arc" | ||
| 71 | COMPATIBLE_HOST = "^(?!arc).*" | ||
| 72 | |||
| 73 | # some entries in NVD uses gpl_ghostscript | ||
| 74 | CVE_PRODUCT = "ghostscript gpl_ghostscript" | ||
| 75 | |||
| 76 | CVE_STATUS[CVE-2023-38560] = "not-applicable-config: PCL isn't part of the Ghostscript release" | ||
diff --git a/meta/recipes-extended/go-examples/go-helloworld_0.1.bb b/meta/recipes-extended/go-examples/go-helloworld_0.1.bb deleted file mode 100644 index e12dcb15f6..0000000000 --- a/meta/recipes-extended/go-examples/go-helloworld_0.1.bb +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | SUMMARY = "This is a simple example recipe that cross-compiles a Go program." | ||
| 2 | SECTION = "examples" | ||
| 3 | HOMEPAGE = "https://golang.org/" | ||
| 4 | |||
| 5 | LICENSE = "MIT" | ||
| 6 | LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" | ||
| 7 | |||
| 8 | SRC_URI = "git://go.googlesource.com/example;branch=master;protocol=https;destsuffix=${GO_SRCURI_DESTSUFFIX}" | ||
| 9 | SRCREV = "8b405629c4a5215871be932097e099c05ec5cb2e" | ||
| 10 | UPSTREAM_CHECK_COMMITS = "1" | ||
| 11 | |||
| 12 | GO_IMPORT = "golang.org/x/example" | ||
| 13 | GO_INSTALL = "${GO_IMPORT}/hello" | ||
| 14 | |||
| 15 | export GO111MODULE = "off" | ||
| 16 | |||
| 17 | inherit go | ||
| 18 | |||
| 19 | # This is just to make clear where this example is | ||
| 20 | do_install:append() { | ||
| 21 | mv ${D}${bindir}/hello ${D}${bindir}/${BPN} | ||
| 22 | } | ||
| 23 | |||
| 24 | # /usr/lib/go/src/golang.org/x/example/ragserver/tests/weaviate-show-all.sh is requiring bash | ||
| 25 | RDEPENDS:${PN}-dev += "bash" | ||
diff --git a/meta/recipes-extended/gperf/gperf_3.3.bb b/meta/recipes-extended/gperf/gperf_3.3.bb deleted file mode 100644 index 7af2130114..0000000000 --- a/meta/recipes-extended/gperf/gperf_3.3.bb +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | DESCRIPTION = "GNU gperf is a perfect hash function generator" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/gperf" | ||
| 3 | SUMMARY = "Generate a perfect hash function from a set of keywords" | ||
| 4 | LICENSE = "GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
| 6 | file://src/main.cc;beginline=8;endline=19;md5=ca1c43fa02be95aa2e10d567684e6fd5" | ||
| 7 | |||
| 8 | SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz" | ||
| 9 | SRC_URI[sha256sum] = "fd87e0aba7e43ae054837afd6cd4db03a3f2693deb3619085e6ed9d8d9604ad8" | ||
| 10 | |||
| 11 | inherit autotools | ||
| 12 | |||
| 13 | # The nested configures don't find the parent aclocal.m4 out of the box, so tell | ||
| 14 | # it where to look explicitly (mirroring the behaviour of upstream's Makefile.devel). | ||
| 15 | EXTRA_AUTORECONF += " -I ${S} --exclude=aclocal" | ||
| 16 | |||
| 17 | CFLAGS += "-std=gnu17" | ||
| 18 | |||
| 19 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/grep/grep_3.12.bb b/meta/recipes-extended/grep/grep_3.12.bb deleted file mode 100644 index 2678d2d41e..0000000000 --- a/meta/recipes-extended/grep/grep_3.12.bb +++ /dev/null | |||
| @@ -1,43 +0,0 @@ | |||
| 1 | SUMMARY = "GNU grep utility" | ||
| 2 | HOMEPAGE = "http://savannah.gnu.org/projects/grep/" | ||
| 3 | DESCRIPTION = "Grep searches one or more input files for lines containing a match to a specified pattern. By default, grep prints the matching lines." | ||
| 4 | BUGTRACKER = "http://savannah.gnu.org/bugs/?group=grep" | ||
| 5 | SECTION = "console/utils" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.xz" | ||
| 10 | |||
| 11 | SRC_URI[sha256sum] = "2649b27c0e90e632eadcd757be06c6e9a4f48d941de51e7c0f83ff76408a07b9" | ||
| 12 | |||
| 13 | inherit autotools gettext texinfo pkgconfig | ||
| 14 | |||
| 15 | do_configure:prepend () { | ||
| 16 | sed -i -e '1s,#!@SHELL@,#!/bin/sh,' ${S}/src/egrep.sh | ||
| 17 | rm -f ${S}/m4/init.m4 | ||
| 18 | } | ||
| 19 | |||
| 20 | do_install () { | ||
| 21 | autotools_do_install | ||
| 22 | if [ "${base_bindir}" != "${bindir}" ]; then | ||
| 23 | install -d ${D}${base_bindir} | ||
| 24 | mv ${D}${bindir}/grep ${D}${base_bindir}/grep | ||
| 25 | mv ${D}${bindir}/egrep ${D}${base_bindir}/egrep | ||
| 26 | mv ${D}${bindir}/fgrep ${D}${base_bindir}/fgrep | ||
| 27 | rmdir ${D}${bindir}/ | ||
| 28 | fi | ||
| 29 | } | ||
| 30 | |||
| 31 | inherit update-alternatives | ||
| 32 | |||
| 33 | PACKAGECONFIG ??= "pcre" | ||
| 34 | PACKAGECONFIG[pcre] = "--enable-perl-regexp,--disable-perl-regexp,libpcre2" | ||
| 35 | |||
| 36 | ALTERNATIVE_PRIORITY = "100" | ||
| 37 | |||
| 38 | ALTERNATIVE:${PN} = "grep egrep fgrep" | ||
| 39 | ALTERNATIVE_LINK_NAME[grep] = "${base_bindir}/grep" | ||
| 40 | ALTERNATIVE_LINK_NAME[egrep] = "${base_bindir}/egrep" | ||
| 41 | ALTERNATIVE_LINK_NAME[fgrep] = "${base_bindir}/fgrep" | ||
| 42 | |||
| 43 | BBCLASSEXTEND = "nativesdk" | ||
diff --git a/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch b/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch deleted file mode 100644 index 6dc84c9062..0000000000 --- a/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | From aa1f37f1e0ff0dc0eeb199b52959e0deb275721e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jeremy Puhlman <jpuhlman@mvista.com> | ||
| 3 | Date: Sat, 7 Mar 2020 00:59:13 +0000 | ||
| 4 | Subject: [PATCH] Make manpages mulitlib identical | ||
| 5 | |||
| 6 | Upstream-Status: Submitted [by email to g.branden.robinson@gmail.com] | ||
| 7 | Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> | ||
| 8 | |||
| 9 | --- | ||
| 10 | Makefile.am | 2 +- | ||
| 11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 12 | |||
| 13 | diff --git a/Makefile.am b/Makefile.am | ||
| 14 | index f7ab410..7e1f3fb 100644 | ||
| 15 | --- a/Makefile.am | ||
| 16 | +++ b/Makefile.am | ||
| 17 | @@ -891,7 +891,7 @@ SUFFIXES += .man | ||
| 18 | -e "s|[@]PAGE[@]|\\\\%$(PAGE)|g" \ | ||
| 19 | -e "s|[@]PDFDOCDIR[@]|`echo $(pdfdocdir) | sed -f $(makevarescape)`|g" \ | ||
| 20 | -e "s|[@]PSPRINT[@]|`echo $(PSPRINT) | sed -f $(makevarescape)`|g" \ | ||
| 21 | - -e "s|[@]SYSTEMMACRODIR[@]|`echo $(systemtmacdir) | sed -f $(makevarescape)`|g" \ | ||
| 22 | + -e "s|[@]SYSTEMMACRODIR[@]|`echo $(systemtmacdir) | sed -e 's,$(libdir),$(prefix)/lib*,' | sed -f $(makevarescape)`|g" \ | ||
| 23 | -e "s|[@]TMAC_AN_PREFIX[@]|\\\\%$(tmac_an_prefix)|g" \ | ||
| 24 | -e "s|[@]TMAC_M_PREFIX[@]|\\\\%$(tmac_m_prefix)|g" \ | ||
| 25 | -e "s|[@]TMAC_MDIR[@]|`echo $(tmacdir) | sed -f $(makevarescape)`/mm|g" \ | ||
diff --git a/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch b/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch deleted file mode 100644 index eae5dc9998..0000000000 --- a/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch +++ /dev/null | |||
| @@ -1,51 +0,0 @@ | |||
| 1 | From c75965053124149381ada3c394da74be078076cf Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "G. Branden Robinson" <g.branden.robinson@gmail.com> | ||
| 3 | Date: Sat, 16 Sep 2023 16:28:00 -0500 | ||
| 4 | Subject: [PATCH] [build]: Fix Savannah #64681 (webpage.ps deps). | ||
| 5 | |||
| 6 | * doc/doc.am (doc/webpage.ps, doc/webpage.html): Update and parallelize | ||
| 7 | target dependencies. Resolve race by requiring "grn" and "soelim" to | ||
| 8 | be built first. Also add dependency on `$(TMAC_PACKAGE_MS)`. | ||
| 9 | |||
| 10 | Fixes <https://savannah.gnu.org/bugs/?64681>. Thanks to Alexander | ||
| 11 | Kanavin for the report. | ||
| 12 | |||
| 13 | ANNOUNCE: Acknowledge Alexander. | ||
| 14 | |||
| 15 | Upstream-Status: Backport | ||
| 16 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 17 | --- | ||
| 18 | doc/doc.am | 12 ++++++++---- | ||
| 19 | 1 file changed, 8 insertions(+), 4 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/doc/doc.am b/doc/doc.am | ||
| 22 | index cddc51907..d3c9ab6b7 100644 | ||
| 23 | --- a/doc/doc.am | ||
| 24 | +++ b/doc/doc.am | ||
| 25 | @@ -346,6 +346,9 @@ doc/pic.ps: $(doc_srcdir)/pic.ms eqn pic tbl | ||
| 26 | $(GROFF_V)$(MKDIR_P) `dirname $@` \ | ||
| 27 | && $(DOC_GROFF) -pet -Tps -ms $(doc_srcdir)/pic.ms >$@ | ||
| 28 | |||
| 29 | +# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and | ||
| 30 | +# soelim even though the document doesn't require them. | ||
| 31 | +doc/webpage.ps: grn soelim | ||
| 32 | doc/webpage.ps: $(DOC_GNU_EPS) tmac/www.tmac tbl | ||
| 33 | doc/webpage.ps: $(doc_srcdir)/webpage.ms | ||
| 34 | $(GROFF_V)$(MKDIR_P) `dirname $@` \ | ||
| 35 | @@ -365,11 +368,12 @@ doc/pic.html: $(doc_srcdir)/pic.ms | ||
| 36 | && $(DOC_GROFF) -pet -P-Ipic -P-Dimg -P-jpic -Thtml -ms \ | ||
| 37 | $(doc_srcdir)/pic.ms > pic.html | ||
| 38 | |||
| 39 | -doc/webpage.html: tbl | ||
| 40 | -doc/webpage.html: tmac/www.tmac | ||
| 41 | -doc/webpage.html: $(DOC_GNU_EPS) | ||
| 42 | +# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and | ||
| 43 | +# soelim even though the document doesn't require them. | ||
| 44 | +doc/webpage.html: grn soelim | ||
| 45 | +doc/webpage.html: $(DOC_GNU_EPS) tmac/www.tmac tbl | ||
| 46 | doc/webpage.html: $(doc_srcdir)/groff.css | ||
| 47 | -doc/webpage.html: $(doc_srcdir)/webpage.ms | ||
| 48 | +doc/webpage.html: $(doc_srcdir)/webpage.ms $(TMAC_PACKAGE_MS) | ||
| 49 | $(GROFF_V)$(MKDIR_P) $(doc_builddir) \ | ||
| 50 | && cd $(doc_builddir) \ | ||
| 51 | && $(DOC_GROFF) -t -I $(doc_srcdir) -P-jwebpage -P-nrb \ | ||
diff --git a/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch b/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch deleted file mode 100644 index 3e81b86ac8..0000000000 --- a/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From f21e9f13beb57a1e0666edf9693d7c83f2189897 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "G. Branden Robinson" <g.branden.robinson@gmail.com> | ||
| 3 | Date: Fri, 22 Sep 2023 01:27:57 -0500 | ||
| 4 | Subject: [PATCH] [build]: meintro_fr.ps depends on tbl. | ||
| 5 | |||
| 6 | * doc/doc.am (doc/meintro_fr.ps): Depend on tbl, resolving race in | ||
| 7 | sufficiently parallelized builds. Overlooked in commit 92349ae223, | ||
| 8 | 2022-05-30. | ||
| 9 | |||
| 10 | Fixes <https://savannah.gnu.org/bugs/?64695>. Thanks to Alexander | ||
| 11 | Kanavin for the report. | ||
| 12 | |||
| 13 | Upstream-Status: Backport | ||
| 14 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 15 | --- | ||
| 16 | doc/doc.am | 2 +- | ||
| 17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/doc/doc.am b/doc/doc.am | ||
| 20 | index d3c9ab6b7..0f95c7774 100644 | ||
| 21 | --- a/doc/doc.am | ||
| 22 | +++ b/doc/doc.am | ||
| 23 | @@ -334,7 +334,7 @@ SUFFIXES += .me.in .me | ||
| 24 | |||
| 25 | # Use '-K utf8', not '-k', in case 'configure' didn't find uchardet. | ||
| 26 | # The French translation uses tbl; its English counterpart does not. | ||
| 27 | -doc/meintro_fr.ps: doc/meintro_fr.me preconv | ||
| 28 | +doc/meintro_fr.ps: doc/meintro_fr.me preconv tbl | ||
| 29 | $(GROFF_V)$(MKDIR_P) `dirname $@` \ | ||
| 30 | && $(DOC_GROFF) -K utf8 -t -Tps -me -mfr $< >$@ | ||
| 31 | |||
diff --git a/meta/recipes-extended/groff/files/0001-contrib-hdtbl-hdtbl.am-Fix-race-issues-for-parallel-.patch b/meta/recipes-extended/groff/files/0001-contrib-hdtbl-hdtbl.am-Fix-race-issues-for-parallel-.patch deleted file mode 100644 index de4a55bbab..0000000000 --- a/meta/recipes-extended/groff/files/0001-contrib-hdtbl-hdtbl.am-Fix-race-issues-for-parallel-.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From 771686c042d5f494550d0399f36e00b1ca557b2d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Robert Yang <liezhi.yang@windriver.com> | ||
| 3 | Date: Mon, 11 Nov 2024 14:12:51 +0000 | ||
| 4 | Subject: [PATCH] contrib/hdtbl/hdtbl.am: Fix race issues for parallel build | ||
| 5 | |||
| 6 | Fixed race issues for parallel build: | ||
| 7 | groff: error: couldn't exec soelim: Permission | ||
| 8 | |||
| 9 | And: | ||
| 10 | groff: error: couldn't exec grn: Permission denied | ||
| 11 | |||
| 12 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/groff/2024-11/msg00097.html] | ||
| 13 | |||
| 14 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
| 15 | --- | ||
| 16 | contrib/hdtbl/hdtbl.am | 2 +- | ||
| 17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/contrib/hdtbl/hdtbl.am b/contrib/hdtbl/hdtbl.am | ||
| 20 | index 9384fac..70f7bc9 100644 | ||
| 21 | --- a/contrib/hdtbl/hdtbl.am | ||
| 22 | +++ b/contrib/hdtbl/hdtbl.am | ||
| 23 | @@ -119,7 +119,7 @@ SUFFIXES += .roff .in .ps | ||
| 24 | -e "s|[@]EGREP[@]|$(EGREP)|" $< >$@ | ||
| 25 | |||
| 26 | $(HDTBLPROCESSEDEXAMPLEFILES): $(DOC_GNU_EPS) groff troff eqn pic tbl \ | ||
| 27 | - grops grn font/devps/stamp contrib/hdtbl/examples/common.roff | ||
| 28 | + grops grn soelim font/devps/stamp contrib/hdtbl/examples/common.roff | ||
| 29 | |||
| 30 | uninstall_groffdirs: uninstall-hdtbl-hook | ||
| 31 | uninstall-hdtbl-hook: | ||
diff --git a/meta/recipes-extended/groff/files/0001-getopt-Fix-type-signature-for-getenv.patch b/meta/recipes-extended/groff/files/0001-getopt-Fix-type-signature-for-getenv.patch deleted file mode 100644 index c69a2b4f67..0000000000 --- a/meta/recipes-extended/groff/files/0001-getopt-Fix-type-signature-for-getenv.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From b68b3c6157c531bdcf5812fd93aadff9c18de6bd Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sat, 22 Mar 2025 14:41:23 -0700 | ||
| 4 | Subject: [PATCH] getopt: Fix type signature for getenv() | ||
| 5 | |||
| 6 | This fixes build on musl with GCC 15 | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [Next version is use getopt.c from gnulib] | ||
| 9 | |||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | src/libs/libgroff/getopt.c | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/src/libs/libgroff/getopt.c b/src/libs/libgroff/getopt.c | ||
| 16 | index 6efa529..ce39115 100644 | ||
| 17 | --- a/src/libs/libgroff/getopt.c | ||
| 18 | +++ b/src/libs/libgroff/getopt.c | ||
| 19 | @@ -122,7 +122,7 @@ static struct _getopt_data getopt_data; | ||
| 20 | whose names are inconsistent. */ | ||
| 21 | |||
| 22 | #ifndef getenv | ||
| 23 | -extern char *getenv (); | ||
| 24 | +extern char *getenv (const char *); | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #endif /* not __GNU_LIBRARY__ */ | ||
diff --git a/meta/recipes-extended/groff/files/0001-hdtbl-Fix-Savannah-66316-missing-grn-dep.patch b/meta/recipes-extended/groff/files/0001-hdtbl-Fix-Savannah-66316-missing-grn-dep.patch deleted file mode 100644 index d9455af2ac..0000000000 --- a/meta/recipes-extended/groff/files/0001-hdtbl-Fix-Savannah-66316-missing-grn-dep.patch +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | From 12169aa269341753d491a69e9adb86c58dca039a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "G. Branden Robinson" <g.branden.robinson@gmail.com> | ||
| 3 | Date: Thu, 10 Oct 2024 18:17:08 -0500 | ||
| 4 | Subject: [PATCH] [hdtbl]: Fix Savannah #66316 (missing `grn` dep). | ||
| 5 | |||
| 6 | * hdtbl.am (HDTBLPROCESSEDEXAMPLEFILES): Declare dependency on `grn`; | ||
| 7 | because `-I` flags are used, it is dragged in even though not | ||
| 8 | explicitly needed. Resolves race against `grn`'s availability in the | ||
| 9 | build tree. | ||
| 10 | |||
| 11 | Fixes <https://savannah.gnu.org/bugs/?66316>. Thanks to Ross Burton for | ||
| 12 | the report. | ||
| 13 | |||
| 14 | Upstream-Status: Backport | ||
| 15 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 16 | --- | ||
| 17 | contrib/hdtbl/ChangeLog | 10 ++++++++++ | ||
| 18 | contrib/hdtbl/hdtbl.am | 3 +-- | ||
| 19 | 2 files changed, 11 insertions(+), 2 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/contrib/hdtbl/hdtbl.am b/contrib/hdtbl/hdtbl.am | ||
| 22 | index b6c334c18..3c37174f2 100644 | ||
| 23 | --- a/contrib/hdtbl/hdtbl.am | ||
| 24 | +++ b/contrib/hdtbl/hdtbl.am | ||
| 25 | @@ -119,9 +119,8 @@ SUFFIXES += .roff .in .ps | ||
| 26 | && sed -e "s|[@]fontdir[@]|$(fontdir)|" \ | ||
| 27 | -e "s|[@]EGREP[@]|$(EGREP)|" $< >$@ | ||
| 28 | |||
| 29 | - | ||
| 30 | $(HDTBLPROCESSEDEXAMPLEFILES): $(DOC_GNU_EPS) groff troff eqn pic tbl \ | ||
| 31 | - grops font/devps/stamp contrib/hdtbl/examples/common.roff | ||
| 32 | + grops grn font/devps/stamp contrib/hdtbl/examples/common.roff | ||
| 33 | |||
| 34 | uninstall_groffdirs: uninstall-hdtbl-hook | ||
| 35 | uninstall-hdtbl-hook: | ||
| 36 | -- | ||
| 37 | 2.34.1 | ||
| 38 | |||
diff --git a/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch b/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch deleted file mode 100644 index 23992576f9..0000000000 --- a/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | From eb16276c3e2e34aa2e57f6a0e68554657b90cd28 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 3 | Date: Sat, 11 May 2019 17:06:29 +0800 | ||
| 4 | Subject: [PATCH] groff searchs fonts which are provided by ghostscript on | ||
| 5 | build host. It causes non-determinism issue. So not search font dirs on host. | ||
| 6 | |||
| 7 | Upstream-Status: Inappropriate [cross build specific] | ||
| 8 | |||
| 9 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
| 10 | |||
| 11 | Rebase to 1.22.4 | ||
| 12 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 13 | |||
| 14 | --- | ||
| 15 | font/devpdf/Foundry.in | 4 ++-- | ||
| 16 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in | ||
| 19 | index e5aba65..5441734 100644 | ||
| 20 | --- a/font/devpdf/Foundry.in | ||
| 21 | +++ b/font/devpdf/Foundry.in | ||
| 22 | @@ -20,7 +20,7 @@ | ||
| 23 | |||
| 24 | #======================================================================= | ||
| 25 | #Foundry|Name|Search path | ||
| 26 | -foundry||@urwfontsdir@:(gs):/usr/share/fonts/type1/gsfonts:/usr/share/fonts/default/Type1:/usr/share/fonts/default/Type1/adobestd35:/usr/share/fonts/type1/urw-base35:/opt/local/share/fonts/urw-fonts:/usr/local/share/fonts/ghostscript | ||
| 27 | +foundry||(gs) | ||
| 28 | |||
| 29 | # Enable the font description files for grops (generated from Adobe | ||
| 30 | # foundry font files) to be used with gropdf. afmtodit must not be | ||
| 31 | @@ -72,7 +72,7 @@ EURO|N||||*../devps/freeeuro.pfa | ||
| 32 | # URW fonts are typically shipped with Ghostscript, but can be replaced. | ||
| 33 | |||
| 34 | #Foundry|Name|Search path | ||
| 35 | -foundry|U|@urwfontsdir@:/usr/share/fonts/type1/gsfonts:/usr/share/fonts/default/Type1:/usr/share/fonts/default/Type1/adobestd35:/usr/share/fonts/type1/urw-base35:/opt/local/share/fonts/urw-fonts:/usr/local/share/fonts/ghostscript:(gs) | ||
| 36 | +foundry|U|(gs) | ||
| 37 | |||
| 38 | # Define flags for afmtodit. | ||
| 39 | |||
diff --git a/meta/recipes-extended/groff/groff_1.23.0.bb b/meta/recipes-extended/groff/groff_1.23.0.bb deleted file mode 100644 index 0c2ef61758..0000000000 --- a/meta/recipes-extended/groff/groff_1.23.0.bb +++ /dev/null | |||
| @@ -1,81 +0,0 @@ | |||
| 1 | SUMMARY = "GNU Troff software" | ||
| 2 | DESCRIPTION = "The groff (GNU troff) software is a typesetting package which reads plain text mixed with \ | ||
| 3 | formatting commands and produces formatted output." | ||
| 4 | SECTION = "base" | ||
| 5 | HOMEPAGE = "http://www.gnu.org/software/groff/" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | |||
| 8 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 9 | |||
| 10 | SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ | ||
| 11 | file://groff-not-search-fonts-on-build-host.patch \ | ||
| 12 | file://0001-Make-manpages-mulitlib-identical.patch \ | ||
| 13 | file://0001-build-Fix-Savannah-64681-webpage.ps-deps.patch \ | ||
| 14 | file://0001-build-meintro_fr.ps-depends-on-tbl.patch \ | ||
| 15 | file://0001-hdtbl-Fix-Savannah-66316-missing-grn-dep.patch \ | ||
| 16 | file://0001-contrib-hdtbl-hdtbl.am-Fix-race-issues-for-parallel-.patch \ | ||
| 17 | file://0001-getopt-Fix-type-signature-for-getenv.patch \ | ||
| 18 | " | ||
| 19 | |||
| 20 | SRC_URI[sha256sum] = "6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13" | ||
| 21 | |||
| 22 | DEPENDS = "bison-native groff-native" | ||
| 23 | RDEPENDS:${PN} += "perl sed" | ||
| 24 | |||
| 25 | inherit autotools-brokensep texinfo multilib_script pkgconfig | ||
| 26 | |||
| 27 | MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/grog" | ||
| 28 | |||
| 29 | EXTRA_OECONF = "--without-x --with-urw-fonts-dir=/completely/bogus/dir/" | ||
| 30 | EXTRA_OEMAKE:class-target = "GROFFBIN=groff GROFF_BIN_PATH=${STAGING_BINDIR_NATIVE}" | ||
| 31 | |||
| 32 | CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl' ac_cv_path_BASH_PROG='no' PAGE=A4" | ||
| 33 | |||
| 34 | # Delete these generated files since we depend on bison-native | ||
| 35 | # and regenerate them. Do it deterministically (always). | ||
| 36 | do_configure:prepend() { | ||
| 37 | rm -f ${S}/src/preproc/eqn/eqn.cpp | ||
| 38 | rm -f ${S}/src/preproc/eqn/eqn.hpp | ||
| 39 | } | ||
| 40 | |||
| 41 | do_install:append() { | ||
| 42 | # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location | ||
| 43 | # for target as /usr/bin/perl, so fix it to /usr/bin/perl. | ||
| 44 | for i in afmtodit mmroff gropdf pdfmom grog; do | ||
| 45 | if [ -f ${D}${bindir}/$i ]; then | ||
| 46 | sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/$i | ||
| 47 | fi | ||
| 48 | done | ||
| 49 | if [ -e ${D}${libdir}/charset.alias ]; then | ||
| 50 | rm -rf ${D}${libdir}/charset.alias | ||
| 51 | fi | ||
| 52 | |||
| 53 | # awk is located at /usr/bin/, not /bin/ | ||
| 54 | SPECIAL_AWK=`find ${D} -name special.awk` | ||
| 55 | if [ -f ${SPECIAL_AWK} ]; then | ||
| 56 | sed -i -e 's:#!.*awk:#! ${USRBINPATH}/awk:' ${SPECIAL_AWK} | ||
| 57 | fi | ||
| 58 | |||
| 59 | # not ship /usr/bin/glilypond and its releated files in embedded target system | ||
| 60 | rm -rf ${D}${bindir}/glilypond | ||
| 61 | rm -rf ${D}${libdir}/groff/glilypond | ||
| 62 | rm -rf ${D}${mandir}/man1/glilypond* | ||
| 63 | |||
| 64 | # not ship /usr/bin/grap2graph and its releated man files | ||
| 65 | rm -rf ${D}${bindir}/grap2graph | ||
| 66 | rm -rf ${D}${mandir}/man1/grap2graph* | ||
| 67 | |||
| 68 | # strip hosttool path out of generated files | ||
| 69 | sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${docdir}/${BP}/examples/hdtbl/*.roff | ||
| 70 | } | ||
| 71 | |||
| 72 | do_install:append:class-native() { | ||
| 73 | create_cmdline_wrapper ${D}/${bindir}/groff \ | ||
| 74 | -F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \ | ||
| 75 | -M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac | ||
| 76 | } | ||
| 77 | |||
| 78 | FILES:${PN} += "${libdir}/${BPN}/site-tmac \ | ||
| 79 | ${libdir}/${BPN}/groffer/" | ||
| 80 | |||
| 81 | BBCLASSEXTEND = "native" | ||
diff --git a/meta/recipes-extended/gzip/files/run-ptest b/meta/recipes-extended/gzip/files/run-ptest deleted file mode 100644 index ee6b4326fa..0000000000 --- a/meta/recipes-extended/gzip/files/run-ptest +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | VERBOSE=1 make -C src/tests check | ||
diff --git a/meta/recipes-extended/gzip/gzip-1.14/wrong-path-fix.patch b/meta/recipes-extended/gzip/gzip-1.14/wrong-path-fix.patch deleted file mode 100644 index 4d5e7a8e02..0000000000 --- a/meta/recipes-extended/gzip/gzip-1.14/wrong-path-fix.patch +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | From eda9b1d08c517acbdc5b26c24c94a3985f29c749 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ming Liu <ming.liu@windriver.com> | ||
| 3 | Date: Fri, 21 Nov 2014 04:50:57 -0500 | ||
| 4 | Subject: [PATCH] fix MakeMaker issues with using wrong SHELL/GREP | ||
| 5 | |||
| 6 | A set of substitution is being processed to all target scripts with sed by | ||
| 7 | replacing some key words with the detected values at configure time, this | ||
| 8 | is exactly not compliant with cross compling, and will cause missing path | ||
| 9 | errors at run time like: | ||
| 10 | "/usr/bin/zgrep: line 230: /usr/bin/grep: No such file or directory" | ||
| 11 | |||
| 12 | Fixed by removing unneeded substitution and using real runtime paths | ||
| 13 | instead. | ||
| 14 | |||
| 15 | Signed-off-by: Ming Liu <ming.liu@windriver.com> | ||
| 16 | |||
| 17 | Upstream-Status: Pending | ||
| 18 | --- | ||
| 19 | Makefile.am | 3 +-- | ||
| 20 | 1 file changed, 1 insertion(+), 2 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/Makefile.am b/Makefile.am | ||
| 23 | index 23e0d3e..3455878 100644 | ||
| 24 | --- a/Makefile.am | ||
| 25 | +++ b/Makefile.am | ||
| 26 | @@ -95,8 +95,7 @@ SUFFIXES = .in | ||
| 27 | .in: | ||
| 28 | $(AM_V_GEN)rm -f $@-t $@ \ | ||
| 29 | && sed \ | ||
| 30 | - -e 's|/bin/sh|$(SHELL)|g' \ | ||
| 31 | - -e 's|[@]GREP@|$(GREP)|g' \ | ||
| 32 | + -e 's|[@]GREP@|$(base_bindir)/grep|g' \ | ||
| 33 | -e "s|'gzip'|$(GZIP_TRANSFORMED)|g" \ | ||
| 34 | -e "s|'zdiff'|$(ZDIFF_TRANSFORMED)|g" \ | ||
| 35 | -e "s|'zgrep'|$(ZGREP_TRANSFORMED)|g" \ | ||
diff --git a/meta/recipes-extended/gzip/gzip.inc b/meta/recipes-extended/gzip/gzip.inc deleted file mode 100644 index 12232dd4da..0000000000 --- a/meta/recipes-extended/gzip/gzip.inc +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | SUMMARY = "Standard GNU compressor" | ||
| 2 | DESCRIPTION = "GNU Gzip is a popular data compression program originally written by Jean-loup Gailly for the GNU \ | ||
| 3 | project. Mark Adler wrote the decompression part" | ||
| 4 | HOMEPAGE = "http://www.gnu.org/software/gzip/" | ||
| 5 | SECTION = "console/utils" | ||
| 6 | |||
| 7 | inherit autotools texinfo | ||
| 8 | export DEFS = "NO_ASM" | ||
| 9 | |||
| 10 | EXTRA_OEMAKE:class-target = "GREP=${base_bindir}/grep" | ||
| 11 | EXTRA_OEMAKE:append:class-nativesdk = " GREP=grep" | ||
| 12 | EXTRA_OECONF:append:libc-musl = " gl_cv_func_fflush_stdin=yes " | ||
| 13 | |||
| 14 | do_install:append () { | ||
| 15 | if [ "${base_bindir}" != "${bindir}" ]; then | ||
| 16 | # Rename and move files into /bin (FHS), which is typical place for gzip | ||
| 17 | install -d ${D}${base_bindir} | ||
| 18 | mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip | ||
| 19 | mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip | ||
| 20 | mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat | ||
| 21 | mv ${D}${bindir}/uncompress ${D}${base_bindir}/uncompress | ||
| 22 | fi | ||
| 23 | } | ||
| 24 | |||
| 25 | inherit update-alternatives | ||
| 26 | |||
| 27 | ALTERNATIVE_PRIORITY = "100" | ||
| 28 | ALTERNATIVE:${PN} = "gunzip gzip zcat" | ||
| 29 | ALTERNATIVE_LINK_NAME[gunzip] = "${base_bindir}/gunzip" | ||
| 30 | ALTERNATIVE_LINK_NAME[gzip] = "${base_bindir}/gzip" | ||
| 31 | ALTERNATIVE_LINK_NAME[zcat] = "${base_bindir}/zcat" | ||
| 32 | |||
| 33 | export CONFIG_SHELL = "/bin/sh" | ||
diff --git a/meta/recipes-extended/gzip/gzip_1.14.bb b/meta/recipes-extended/gzip/gzip_1.14.bb deleted file mode 100644 index c7837cdae0..0000000000 --- a/meta/recipes-extended/gzip/gzip_1.14.bb +++ /dev/null | |||
| @@ -1,43 +0,0 @@ | |||
| 1 | require gzip.inc | ||
| 2 | |||
| 3 | # change to GPL-3.0-or-later in 2007/07. Previous GPL-2.0-or-later version is | ||
| 4 | # 1.3.12 | ||
| 5 | LICENSE = "GPL-3.0-or-later" | ||
| 6 | |||
| 7 | SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz \ | ||
| 8 | file://run-ptest \ | ||
| 9 | " | ||
| 10 | SRC_URI:append:class-target = " file://wrong-path-fix.patch" | ||
| 11 | |||
| 12 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 13 | file://gzip.h;beginline=8;endline=20;md5=a22158dc3dd3f5cf6e5a556940a49212 \ | ||
| 14 | " | ||
| 15 | |||
| 16 | PROVIDES:append:class-native = " gzip-replacement-native" | ||
| 17 | |||
| 18 | RDEPENDS:${PN}-ptest += "make perl grep diffutils coreutils" | ||
| 19 | |||
| 20 | BBCLASSEXTEND = "native nativesdk" | ||
| 21 | |||
| 22 | inherit ptest | ||
| 23 | |||
| 24 | do_install_ptest() { | ||
| 25 | mkdir -p ${D}${PTEST_PATH}/src/build-aux | ||
| 26 | cp ${S}/build-aux/test-driver ${D}${PTEST_PATH}/src/build-aux/ | ||
| 27 | mkdir -p ${D}${PTEST_PATH}/src/tests | ||
| 28 | cp -r ${S}/tests/* ${D}${PTEST_PATH}/src/tests | ||
| 29 | sed -e 's/^abs_srcdir = ..*/abs_srcdir = \.\./' \ | ||
| 30 | -e 's/^top_srcdir = ..*/top_srcdir = \.\./' \ | ||
| 31 | -e 's/^GREP = ..*/GREP = grep/' \ | ||
| 32 | -e 's/^AWK = ..*/AWK = awk/' \ | ||
| 33 | -e 's/^srcdir = ..*/srcdir = \./' \ | ||
| 34 | -e 's/^Makefile: ..*/Makefile: /' \ | ||
| 35 | -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ | ||
| 36 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 37 | -e 's|${BUILD_LDFLAGS}||g' \ | ||
| 38 | -e 's:${HOSTTOOLS_DIR}/::g' \ | ||
| 39 | -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ | ||
| 40 | ${B}/tests/Makefile > ${D}${PTEST_PATH}/src/tests/Makefile | ||
| 41 | } | ||
| 42 | |||
| 43 | SRC_URI[sha256sum] = "613d6ea44f1248d7370c7ccdeee0dd0017a09e6c39de894b3c6f03f981191c6b" | ||
diff --git a/meta/recipes-extended/hdparm/hdparm/wiper.sh-fix-stat-path.patch b/meta/recipes-extended/hdparm/hdparm/wiper.sh-fix-stat-path.patch deleted file mode 100644 index 4af1b617ed..0000000000 --- a/meta/recipes-extended/hdparm/hdparm/wiper.sh-fix-stat-path.patch +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | From e233006ee212109d2a1401dac37a9a851cc493d8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yi Zhao <yi.zhao@windriver.com> | ||
| 3 | Date: Thu, 14 Dec 2017 15:23:47 +0800 | ||
| 4 | Subject: [PATCH] wiper.sh: fix stat path | ||
| 5 | |||
| 6 | Fix the stat path for OE. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [OE specific] | ||
| 9 | |||
| 10 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 11 | --- | ||
| 12 | wiper/wiper.sh | 3 +-- | ||
| 13 | 1 file changed, 1 insertion(+), 2 deletions(-) | ||
| 14 | |||
| 15 | diff --git a/wiper/wiper.sh b/wiper/wiper.sh | ||
| 16 | index 79eddc8..9ef2840 100755 | ||
| 17 | --- a/wiper/wiper.sh | ||
| 18 | +++ b/wiper/wiper.sh | ||
| 19 | @@ -97,7 +97,6 @@ function find_prog(){ | ||
| 20 | hash -r ## Refresh bash's cached PATH entries | ||
| 21 | HDPARM=`find_prog /sbin/hdparm` || exit 1 | ||
| 22 | FIND=`find_prog /usr/bin/find` || exit 1 | ||
| 23 | -STAT=`find_prog /usr/bin/stat` || exit 1 | ||
| 24 | GAWK=`find_prog /usr/bin/gawk` || exit 1 | ||
| 25 | BLKID=`find_prog /sbin/blkid` || exit 1 | ||
| 26 | GREP=`find_prog /bin/grep` || exit 1 | ||
| 27 | @@ -105,7 +104,7 @@ ID=`find_prog /usr/bin/id` || exit 1 | ||
| 28 | LS=`find_prog /bin/ls` || exit 1 | ||
| 29 | DF=`find_prog /bin/df` || exit 1 | ||
| 30 | RM=`find_prog /bin/rm` || exit 1 | ||
| 31 | -STAT=`find_prog /usr/bin/stat` || exit 1 | ||
| 32 | +STAT=`find_prog /bin/stat` || exit 1 | ||
| 33 | |||
| 34 | [ $verbose -gt 1 ] && HDPARM="$HDPARM --verbose" | ||
| 35 | |||
| 36 | -- | ||
| 37 | 2.7.4 | ||
| 38 | |||
diff --git a/meta/recipes-extended/hdparm/hdparm_9.65.bb b/meta/recipes-extended/hdparm/hdparm_9.65.bb deleted file mode 100644 index e541d58fa5..0000000000 --- a/meta/recipes-extended/hdparm/hdparm_9.65.bb +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | SUMMARY = "Utility for viewing/manipulating IDE disk drive/driver parameters" | ||
| 2 | HOMEPAGE = "http://sourceforge.net/projects/hdparm/" | ||
| 3 | DESCRIPTION = "hdparm is a Linux shell utility for viewing \ | ||
| 4 | and manipulating various IDE drive and driver parameters." | ||
| 5 | SECTION = "console/utils" | ||
| 6 | |||
| 7 | LICENSE = "BSD-2-Clause & GPL-2.0-only & hdparm" | ||
| 8 | LICENSE:${PN} = "BSD-2-Clause & hdparm" | ||
| 9 | LICENSE:${PN}-dbg = "BSD-2-Clause & hdparm" | ||
| 10 | LICENSE:wiper = "GPL-2.0-only" | ||
| 11 | |||
| 12 | LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=495d03e50dc6c89d6a30107ab0df5b03 \ | ||
| 13 | file://debian/copyright;md5=a82d7ba3ade9e8ec902749db98c592f3 \ | ||
| 14 | file://wiper/GPLv2.txt;md5=fcb02dc552a041dee27e4b85c7396067 \ | ||
| 15 | file://wiper/wiper.sh;beginline=7;endline=31;md5=b7bc642addc152ea307505bf1a296f09" | ||
| 16 | |||
| 17 | PACKAGES =+ "wiper" | ||
| 18 | |||
| 19 | FILES:wiper = "${bindir}/wiper.sh" | ||
| 20 | |||
| 21 | RDEPENDS:wiper = "bash gawk coreutils" | ||
| 22 | |||
| 23 | SRC_URI = "${SOURCEFORGE_MIRROR}/hdparm/${BP}.tar.gz \ | ||
| 24 | file://wiper.sh-fix-stat-path.patch \ | ||
| 25 | " | ||
| 26 | |||
| 27 | SRC_URI[sha256sum] = "d14929f910d060932e717e9382425d47c2e7144235a53713d55a94f7de535a4b" | ||
| 28 | UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/hdparm/files/hdparm/" | ||
| 29 | |||
| 30 | EXTRA_OEMAKE = 'STRIP="echo" LDFLAGS="${LDFLAGS}"' | ||
| 31 | |||
| 32 | inherit update-alternatives | ||
| 33 | |||
| 34 | ALTERNATIVE:${PN} = "hdparm" | ||
| 35 | ALTERNATIVE_LINK_NAME[hdparm] = "${base_sbindir}/hdparm" | ||
| 36 | ALTERNATIVE_PRIORITY = "100" | ||
| 37 | |||
| 38 | do_install () { | ||
| 39 | install -d ${D}/${base_sbindir} ${D}/${mandir}/man8 ${D}/${bindir} | ||
| 40 | oe_runmake 'DESTDIR=${D}' 'sbindir=${base_sbindir}' install | ||
| 41 | cp ${S}/wiper/wiper.sh ${D}/${bindir} | ||
| 42 | } | ||
diff --git a/meta/recipes-extended/images/core-image-full-cmdline.bb b/meta/recipes-extended/images/core-image-full-cmdline.bb deleted file mode 100644 index b034cd0aeb..0000000000 --- a/meta/recipes-extended/images/core-image-full-cmdline.bb +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | SUMMARY = "A console-only image with more full-featured Linux system \ | ||
| 2 | functionality installed." | ||
| 3 | |||
| 4 | IMAGE_FEATURES += "splash ssh-server-openssh package-management" | ||
| 5 | |||
| 6 | IMAGE_INSTALL = "\ | ||
| 7 | packagegroup-core-boot \ | ||
| 8 | packagegroup-core-full-cmdline \ | ||
| 9 | ${CORE_IMAGE_EXTRA_INSTALL} \ | ||
| 10 | " | ||
| 11 | |||
| 12 | inherit core-image | ||
diff --git a/meta/recipes-extended/images/core-image-kernel-dev.bb b/meta/recipes-extended/images/core-image-kernel-dev.bb deleted file mode 100644 index 4018af7a3a..0000000000 --- a/meta/recipes-extended/images/core-image-kernel-dev.bb +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | DESCRIPTION = "A development image that builds the kernel and packages that are \ | ||
| 2 | sensitive to kernel updates and version changes" | ||
| 3 | |||
| 4 | # Could also be core-image-basic, but we'll keep this small for now | ||
| 5 | require recipes-core/images/core-image-minimal.bb | ||
| 6 | |||
| 7 | KERNEL_DEV_UTILS ?= "dropbear connman" | ||
| 8 | KERNEL_DEV_TOOLS ?= "packagegroup-core-tools-profile packagegroup-core-buildessential kernel-devsrc" | ||
| 9 | KERNEL_DEV_MODULE ?= "kernel-modules" | ||
| 10 | |||
| 11 | CORE_IMAGE_EXTRA_INSTALL += "${KERNEL_DEV_MODULE} \ | ||
| 12 | ${KERNEL_DEV_UTILS} \ | ||
| 13 | ${KERNEL_DEV_TOOLS} \ | ||
| 14 | systemtap \ | ||
| 15 | " | ||
| 16 | |||
| 17 | # We need extra space for things like kernel builds, etc. | ||
| 18 | IMAGE_ROOTFS_EXTRA_SPACE:append = " + 3000000" | ||
| 19 | |||
| 20 | # Let's define our own subset to test, we can later add a on-target kernel build even! | ||
| 21 | DEFAULT_TEST_SUITES = "ping ssh df connman syslog scp date parselogs" | ||
| 22 | |||
| 23 | IMAGE_FEATURES += "tools-profile" | ||
diff --git a/meta/recipes-extended/images/core-image-testcontroller-initramfs.bb b/meta/recipes-extended/images/core-image-testcontroller-initramfs.bb deleted file mode 100644 index 3b81afd7c0..0000000000 --- a/meta/recipes-extended/images/core-image-testcontroller-initramfs.bb +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | SUMMARY = "Small image capable of booting a device with custom install scripts, \ | ||
| 2 | adding a second rootfs, used for testing." | ||
| 3 | |||
| 4 | # use -testfs live-install scripts | ||
| 5 | PACKAGE_INSTALL = "initramfs-live-boot initramfs-live-install-testfs initramfs-live-install-efi-testfs busybox udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" | ||
| 6 | |||
| 7 | # Do not pollute the initrd image with rootfs features | ||
| 8 | IMAGE_FEATURES = "" | ||
| 9 | |||
| 10 | IMAGE_NAME_SUFFIX ?= "" | ||
| 11 | IMAGE_LINGUAS = "" | ||
| 12 | |||
| 13 | LICENSE = "MIT" | ||
| 14 | |||
| 15 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" | ||
| 16 | inherit core-image | ||
| 17 | |||
| 18 | IMAGE_ROOTFS_SIZE = "8192" | ||
| 19 | IMAGE_ROOTFS_EXTRA_SPACE = "0" | ||
| 20 | BAD_RECOMMENDATIONS += "busybox-syslog" | ||
| 21 | |||
| 22 | # Use the same restriction as initramfs-live-install-testfs | ||
| 23 | COMPATIBLE_HOST = "(i.86|x86_64).*-linux" | ||
diff --git a/meta/recipes-extended/images/core-image-testcontroller.bb b/meta/recipes-extended/images/core-image-testcontroller.bb deleted file mode 100644 index ff79bde0c5..0000000000 --- a/meta/recipes-extended/images/core-image-testcontroller.bb +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | SUMMARY = "A test controller image to be deployed on a target useful for testing other images using the OEQA runtime tests" | ||
| 2 | |||
| 3 | IMAGE_FEATURES += "ssh-server-openssh package-management" | ||
| 4 | |||
| 5 | inherit core-image | ||
| 6 | |||
| 7 | # the deploy code requires bash and | ||
| 8 | # normal linux utilities not busybox ones | ||
| 9 | IMAGE_INSTALL += "\ | ||
| 10 | bash coreutils util-linux tar gzip bzip2 kmod \ | ||
| 11 | python3-modules python3-misc \ | ||
| 12 | e2fsprogs e2fsprogs-mke2fs parted \ | ||
| 13 | " | ||
| 14 | # we need a particular initramfs for live images | ||
| 15 | # that pulls custom install scripts which take | ||
| 16 | # care of partitioning for us | ||
| 17 | INITRD_IMAGE = "core-image-testcontroller-initramfs" | ||
| 18 | |||
diff --git a/meta/recipes-extended/iptables/iptables/ip6tables.rules b/meta/recipes-extended/iptables/iptables/ip6tables.rules deleted file mode 100644 index e69de29bb2..0000000000 --- a/meta/recipes-extended/iptables/iptables/ip6tables.rules +++ /dev/null | |||
diff --git a/meta/recipes-extended/iptables/iptables/ip6tables.service b/meta/recipes-extended/iptables/iptables/ip6tables.service deleted file mode 100644 index 6c059fca49..0000000000 --- a/meta/recipes-extended/iptables/iptables/ip6tables.service +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=IPv6 Packet Filtering Framework | ||
| 3 | Before=network-pre.target | ||
| 4 | Wants=network-pre.target | ||
| 5 | |||
| 6 | [Service] | ||
| 7 | Type=oneshot | ||
| 8 | ExecStart=@SBINDIR@/ip6tables-restore -w -- @RULESDIR@/ip6tables.rules | ||
| 9 | ExecReload=@SBINDIR@/ip6tables-restore -w -- @RULESDIR@/ip6tables.rules | ||
| 10 | RemainAfterExit=yes | ||
| 11 | |||
| 12 | [Install] | ||
| 13 | WantedBy=multi-user.target | ||
diff --git a/meta/recipes-extended/iptables/iptables/iptables.rules b/meta/recipes-extended/iptables/iptables/iptables.rules deleted file mode 100644 index e69de29bb2..0000000000 --- a/meta/recipes-extended/iptables/iptables/iptables.rules +++ /dev/null | |||
diff --git a/meta/recipes-extended/iptables/iptables/iptables.service b/meta/recipes-extended/iptables/iptables/iptables.service deleted file mode 100644 index 0eb3c343de..0000000000 --- a/meta/recipes-extended/iptables/iptables/iptables.service +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=IPv4 Packet Filtering Framework | ||
| 3 | Before=network-pre.target | ||
| 4 | Wants=network-pre.target | ||
| 5 | |||
| 6 | [Service] | ||
| 7 | Type=oneshot | ||
| 8 | ExecStart=@SBINDIR@/iptables-restore -w -- @RULESDIR@/iptables.rules | ||
| 9 | ExecReload=@SBINDIR@/iptables-restore -w -- @RULESDIR@/iptables.rules | ||
| 10 | RemainAfterExit=yes | ||
| 11 | |||
| 12 | [Install] | ||
| 13 | WantedBy=multi-user.target | ||
diff --git a/meta/recipes-extended/iptables/iptables_1.8.11.bb b/meta/recipes-extended/iptables/iptables_1.8.11.bb deleted file mode 100644 index 686dc5afe5..0000000000 --- a/meta/recipes-extended/iptables/iptables_1.8.11.bb +++ /dev/null | |||
| @@ -1,124 +0,0 @@ | |||
| 1 | SUMMARY = "Tools for managing kernel packet filtering capabilities" | ||
| 2 | DESCRIPTION = "iptables is the userspace command line program used to configure and control network packet \ | ||
| 3 | filtering code in Linux." | ||
| 4 | HOMEPAGE = "http://www.netfilter.org/" | ||
| 5 | BUGTRACKER = "http://bugzilla.netfilter.org/" | ||
| 6 | LICENSE = "GPL-2.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 8 | file://iptables/iptables.c;beginline=13;endline=25;md5=c5cffd09974558cf27d0f763df2a12dc \ | ||
| 9 | " | ||
| 10 | |||
| 11 | SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.xz \ | ||
| 12 | file://iptables.service \ | ||
| 13 | file://iptables.rules \ | ||
| 14 | file://ip6tables.service \ | ||
| 15 | file://ip6tables.rules \ | ||
| 16 | " | ||
| 17 | SRC_URI[sha256sum] = "d87303d55ef8c92bcad4dd3f978b26d272013642b029425775f5bad1009fe7b2" | ||
| 18 | |||
| 19 | SYSTEMD_SERVICE:${PN} = "\ | ||
| 20 | iptables.service \ | ||
| 21 | ${@bb.utils.contains('PACKAGECONFIG', 'ipv6', 'ip6tables.service', '', d)} \ | ||
| 22 | " | ||
| 23 | |||
| 24 | inherit autotools pkgconfig systemd | ||
| 25 | |||
| 26 | EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR}" | ||
| 27 | |||
| 28 | CFLAGS:append:libc-musl = " -D__UAPI_DEF_ETHHDR=0" | ||
| 29 | |||
| 30 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" | ||
| 31 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," | ||
| 32 | |||
| 33 | # libnfnetlink recipe is in meta-networking layer | ||
| 34 | PACKAGECONFIG[libnfnetlink] = "--enable-libnfnetlink --enable-connlabel,--disable-libnfnetlink --disable-connlabel,libnfnetlink libnetfilter-conntrack" | ||
| 35 | |||
| 36 | # libnftnl recipe is in meta-networking layer(previously known as libnftables) | ||
| 37 | PACKAGECONFIG[libnftnl] = "--enable-nftables,--disable-nftables,libnftnl" | ||
| 38 | |||
| 39 | do_configure:prepend() { | ||
| 40 | # Remove some libtool m4 files | ||
| 41 | # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive. | ||
| 42 | rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 | ||
| 43 | |||
| 44 | # Copy a header to fix out of tree builds | ||
| 45 | cp -f ${S}/libiptc/linux_list.h ${S}/include/libiptc/ | ||
| 46 | } | ||
| 47 | |||
| 48 | IPTABLES_RULES_DIR ?= "${sysconfdir}/${BPN}" | ||
| 49 | |||
| 50 | do_install:append() { | ||
| 51 | install -d ${D}${IPTABLES_RULES_DIR} | ||
| 52 | install -m 0644 ${UNPACKDIR}/iptables.rules ${D}${IPTABLES_RULES_DIR} | ||
| 53 | |||
| 54 | install -d ${D}${systemd_system_unitdir} | ||
| 55 | install -m 0644 ${UNPACKDIR}/iptables.service ${D}${systemd_system_unitdir} | ||
| 56 | |||
| 57 | sed -i \ | ||
| 58 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 59 | -e 's,@RULESDIR@,${IPTABLES_RULES_DIR},g' \ | ||
| 60 | ${D}${systemd_system_unitdir}/iptables.service | ||
| 61 | |||
| 62 | if ${@bb.utils.contains('PACKAGECONFIG', 'ipv6', 'true', 'false', d)} ; then | ||
| 63 | install -m 0644 ${UNPACKDIR}/ip6tables.rules ${D}${IPTABLES_RULES_DIR} | ||
| 64 | install -m 0644 ${UNPACKDIR}/ip6tables.service ${D}${systemd_system_unitdir} | ||
| 65 | |||
| 66 | sed -i \ | ||
| 67 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 68 | -e 's,@RULESDIR@,${IPTABLES_RULES_DIR},g' \ | ||
| 69 | ${D}${systemd_system_unitdir}/ip6tables.service | ||
| 70 | fi | ||
| 71 | |||
| 72 | # if libnftnl is included, make the iptables symlink point to the nft-based binary by default | ||
| 73 | if ${@bb.utils.contains('PACKAGECONFIG', 'libnftnl', 'true', 'false', d)} ; then | ||
| 74 | ln -sf ${sbindir}/xtables-nft-multi ${D}${sbindir}/iptables | ||
| 75 | ln -sf ${sbindir}/xtables-nft-multi ${D}${sbindir}/iptables-save | ||
| 76 | ln -sf ${sbindir}/xtables-nft-multi ${D}${sbindir}/iptables-restore | ||
| 77 | # ethertypes is provided by the netbase package | ||
| 78 | rm -f ${D}${sysconfdir}/ethertypes | ||
| 79 | fi | ||
| 80 | } | ||
| 81 | |||
| 82 | PACKAGES =+ "${PN}-modules ${PN}-apply" | ||
| 83 | PACKAGES_DYNAMIC += "^${PN}-module-.*" | ||
| 84 | |||
| 85 | python populate_packages:prepend() { | ||
| 86 | modules = do_split_packages(d, '${libdir}/xtables', r'lib(.*)\.so$', '${PN}-module-%s', '${PN} module %s', extra_depends='') | ||
| 87 | if modules: | ||
| 88 | metapkg = d.getVar('PN') + '-modules' | ||
| 89 | d.appendVar('RDEPENDS:' + metapkg, ' ' + ' '.join(modules)) | ||
| 90 | } | ||
| 91 | |||
| 92 | RDEPENDS:${PN} = "${PN}-module-xt-standard" | ||
| 93 | RRECOMMENDS:${PN} = " \ | ||
| 94 | ${PN}-modules \ | ||
| 95 | kernel-module-x-tables \ | ||
| 96 | kernel-module-ip-tables \ | ||
| 97 | kernel-module-iptable-filter \ | ||
| 98 | kernel-module-iptable-nat \ | ||
| 99 | kernel-module-nf-defrag-ipv4 \ | ||
| 100 | kernel-module-nf-conntrack \ | ||
| 101 | kernel-module-nf-conntrack-ipv4 \ | ||
| 102 | kernel-module-nf-nat \ | ||
| 103 | kernel-module-ipt-masquerade \ | ||
| 104 | ${@bb.utils.contains('PACKAGECONFIG', 'ipv6', '\ | ||
| 105 | kernel-module-ip6table-filter \ | ||
| 106 | kernel-module-ip6-tables \ | ||
| 107 | ', '', d)} \ | ||
| 108 | " | ||
| 109 | |||
| 110 | FILES:${PN} += "${datadir}/xtables" | ||
| 111 | |||
| 112 | FILES:${PN}-apply = "${sbindir}/ip*-apply" | ||
| 113 | RDEPENDS:${PN}-apply = "${PN} bash" | ||
| 114 | |||
| 115 | # Include the symlinks as well in respective packages | ||
| 116 | FILES:${PN}-module-xt-conntrack += "${libdir}/xtables/libxt_state.so" | ||
| 117 | FILES:${PN}-module-xt-ct += "${libdir}/xtables/libxt_NOTRACK.so ${libdir}/xtables/libxt_REDIRECT.so" | ||
| 118 | FILES:${PN}-module-xt-nat += "${libdir}/xtables/libxt_SNAT.so ${libdir}/xtables/libxt_DNAT.so ${libdir}/xtables/libxt_MASQUERADE.so" | ||
| 119 | |||
| 120 | ALLOW_EMPTY:${PN}-modules = "1" | ||
| 121 | |||
| 122 | INSANE_SKIP:${PN}-module-xt-conntrack = "dev-so" | ||
| 123 | INSANE_SKIP:${PN}-module-xt-ct = "dev-so" | ||
| 124 | INSANE_SKIP:${PN}-module-xt-nat = "dev-so" | ||
diff --git a/meta/recipes-extended/iputils/iputils_20250605.bb b/meta/recipes-extended/iputils/iputils_20250605.bb deleted file mode 100644 index 31eb51e56d..0000000000 --- a/meta/recipes-extended/iputils/iputils_20250605.bb +++ /dev/null | |||
| @@ -1,57 +0,0 @@ | |||
| 1 | SUMMARY = "Network monitoring tools" | ||
| 2 | DESCRIPTION = "Utilities for the IP protocol, including \ | ||
| 3 | tracepath, tracepath6, ping, ping6 and arping." | ||
| 4 | HOMEPAGE = "https://github.com/iputils/iputils" | ||
| 5 | SECTION = "console/network" | ||
| 6 | |||
| 7 | LICENSE = "BSD-3-Clause & GPL-2.0-or-later" | ||
| 8 | |||
| 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=627cc07ec86a45951d43e30658bbd819" | ||
| 10 | |||
| 11 | SRC_URI = "git://github.com/iputils/iputils;branch=master;protocol=https \ | ||
| 12 | " | ||
| 13 | SRCREV = "6e1cb146547eb6fbb127ffc8397a9241be0d33c2" | ||
| 14 | |||
| 15 | UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>20\d+)" | ||
| 16 | |||
| 17 | # these currently don't show up in CVE metrics for FKIE (as 2000 is not covered by it), but they would show for NVD2 | ||
| 18 | CVE_STATUS[CVE-2000-1213] = "fixed-version: Fixed in 2000-10-10, but the versioning of iputils breaks the version order." | ||
| 19 | CVE_STATUS[CVE-2000-1214] = "fixed-version: Fixed in 2000-10-10, but the versioning of iputils breaks the version order." | ||
| 20 | |||
| 21 | PACKAGECONFIG ??= "libcap" | ||
| 22 | PACKAGECONFIG[libcap] = "-DUSE_CAP=true, -DUSE_CAP=false -DNO_SETCAP_OR_SUID=true, libcap libcap-native" | ||
| 23 | PACKAGECONFIG[libidn] = "-DUSE_IDN=true, -DUSE_IDN=false, libidn2" | ||
| 24 | PACKAGECONFIG[gettext] = "-DUSE_GETTEXT=true, -DUSE_GETTEXT=false, gettext" | ||
| 25 | PACKAGECONFIG[docs] = "-DBUILD_HTML_MANS=true -DBUILD_MANS=true,-DBUILD_HTML_MANS=false -DBUILD_MANS=false, libxslt" | ||
| 26 | |||
| 27 | inherit meson update-alternatives pkgconfig | ||
| 28 | |||
| 29 | EXTRA_OEMESON += "--prefix=${root_prefix}/ -DSKIP_TESTS=true" | ||
| 30 | |||
| 31 | ALTERNATIVE_PRIORITY = "100" | ||
| 32 | |||
| 33 | ALTERNATIVE:${PN}-ping = "ping" | ||
| 34 | ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" | ||
| 35 | |||
| 36 | ALTERNATIVE:${PN}-ping6 = "ping6" | ||
| 37 | ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6" | ||
| 38 | |||
| 39 | SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff \ | ||
| 40 | ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ping6', '', d)}" | ||
| 41 | PACKAGES += "${SPLITPKGS}" | ||
| 42 | |||
| 43 | ALLOW_EMPTY:${PN} = "1" | ||
| 44 | RDEPENDS:${PN} += "${SPLITPKGS}" | ||
| 45 | |||
| 46 | FILES:${PN} = "" | ||
| 47 | FILES:${PN}-ping = "${base_bindir}/ping.${BPN}" | ||
| 48 | FILES:${PN}-ping6 = "${base_bindir}/ping6.${BPN}" | ||
| 49 | FILES:${PN}-arping = "${base_bindir}/arping" | ||
| 50 | FILES:${PN}-tracepath = "${base_bindir}/tracepath" | ||
| 51 | FILES:${PN}-clockdiff = "${base_bindir}/clockdiff" | ||
| 52 | |||
| 53 | do_install:append() { | ||
| 54 | if ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'true', 'false', d)}; then | ||
| 55 | ln -sf ping ${D}/${base_bindir}/ping6 | ||
| 56 | fi | ||
| 57 | } | ||
diff --git a/meta/recipes-extended/less/files/run-ptest b/meta/recipes-extended/less/files/run-ptest deleted file mode 100644 index 42a2869c84..0000000000 --- a/meta/recipes-extended/less/files/run-ptest +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #! /bin/sh | ||
| 2 | |||
| 3 | ./runtest -l /usr/bin/less -t lesstest -O d lt/* | ||
diff --git a/meta/recipes-extended/less/less_679.bb b/meta/recipes-extended/less/less_679.bb deleted file mode 100644 index 613c71f571..0000000000 --- a/meta/recipes-extended/less/less_679.bb +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | SUMMARY = "Text file viewer similar to more" | ||
| 2 | DESCRIPTION = "Less is a program similar to more, i.e. a terminal \ | ||
| 3 | based program for viewing text files and the output from other \ | ||
| 4 | programs. Less offers many features beyond those that more does." | ||
| 5 | HOMEPAGE = "http://www.greenwoodsoftware.com/" | ||
| 6 | SECTION = "console/utils" | ||
| 7 | |||
| 8 | # (GPL-2.0-or-later (<< 418), GPL-3.0-or-later (>= 418)) | less | ||
| 9 | # Including email author giving permissing to use BSD | ||
| 10 | # | ||
| 11 | # From: Mark Nudelman <markn@greenwoodsoftware.com> | ||
| 12 | # To: Elizabeth Flanagan <elizabeth.flanagan@intel.com | ||
| 13 | # Date: 12/19/11 | ||
| 14 | # | ||
| 15 | # Hi Elizabeth, | ||
| 16 | # Using a generic BSD license for less is fine with me. | ||
| 17 | # Thanks, | ||
| 18 | # | ||
| 19 | # --Mark | ||
| 20 | # | ||
| 21 | |||
| 22 | LICENSE = "GPL-3.0-or-later | BSD-2-Clause" | ||
| 23 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 24 | file://LICENSE;md5=8051a271adb36d1462531a3b40c22878 \ | ||
| 25 | " | ||
| 26 | DEPENDS = "ncurses" | ||
| 27 | |||
| 28 | SRC_URI = "http://www.greenwoodsoftware.com/${BPN}/${BPN}-${PV}.tar.gz \ | ||
| 29 | file://run-ptest \ | ||
| 30 | " | ||
| 31 | |||
| 32 | SRC_URI[sha256sum] = "9b68820c34fa8a0af6b0e01b74f0298bcdd40a0489c61649b47058908a153d78" | ||
| 33 | |||
| 34 | UPSTREAM_CHECK_URI = "http://www.greenwoodsoftware.com/less/download.html" | ||
| 35 | |||
| 36 | inherit autotools ptest update-alternatives | ||
| 37 | |||
| 38 | EXTRA_OEMAKE += " LESSTEST=1" | ||
| 39 | |||
| 40 | inherit autotools update-alternatives | ||
| 41 | |||
| 42 | do_compile_ptest () { | ||
| 43 | cd ${S}/lesstest | ||
| 44 | oe_runmake | ||
| 45 | } | ||
| 46 | |||
| 47 | do_install () { | ||
| 48 | oe_runmake 'bindir=${D}${bindir}' 'mandir=${D}${mandir}' install | ||
| 49 | } | ||
| 50 | |||
| 51 | do_install_ptest () { | ||
| 52 | cp ${S}/lesstest/lesstest ${D}${PTEST_PATH} | ||
| 53 | cp ${S}/lesstest/runtest ${D}${PTEST_PATH} | ||
| 54 | cp ${S}/lesstest/lt_screen ${D}${PTEST_PATH} | ||
| 55 | cp -r ${S}/lesstest/lt ${D}${PTEST_PATH} | ||
| 56 | } | ||
| 57 | |||
| 58 | RDEPENDS:${PN}-ptest:append = " perl-module-getopt-std perl-module-cwd perl-module-file-basename locale-base-en-us" | ||
| 59 | |||
| 60 | ALTERNATIVE:${PN} = "less" | ||
| 61 | ALTERNATIVE_PRIORITY = "100" | ||
diff --git a/meta/recipes-extended/libaio/libaio/00_arches.patch b/meta/recipes-extended/libaio/libaio/00_arches.patch deleted file mode 100644 index 18c8c546c1..0000000000 --- a/meta/recipes-extended/libaio/libaio/00_arches.patch +++ /dev/null | |||
| @@ -1,501 +0,0 @@ | |||
| 1 | From 546f2708ffa1aa44018be65172013289cf896710 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Qing He <qing.he@intel.com> | ||
| 3 | Date: Fri, 27 Aug 2010 10:15:31 +0800 | ||
| 4 | Subject: [PATCH] libaio: add new recipe | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [embedded specific] | ||
| 7 | |||
| 8 | from openembedded, added by Qing He <qing.he@intel.com> | ||
| 9 | |||
| 10 | --- | ||
| 11 | src/syscall-m68k.h | 78 +++++++++++++++ | ||
| 12 | src/syscall-mips.h | 223 +++++++++++++++++++++++++++++++++++++++++++ | ||
| 13 | src/syscall-parisc.h | 146 ++++++++++++++++++++++++++++ | ||
| 14 | src/syscall.h | 6 ++ | ||
| 15 | 4 files changed, 453 insertions(+) | ||
| 16 | create mode 100644 src/syscall-m68k.h | ||
| 17 | create mode 100644 src/syscall-mips.h | ||
| 18 | create mode 100644 src/syscall-parisc.h | ||
| 19 | |||
| 20 | diff --git a/src/syscall-m68k.h b/src/syscall-m68k.h | ||
| 21 | new file mode 100644 | ||
| 22 | index 0000000..f440412 | ||
| 23 | --- /dev/null | ||
| 24 | +++ b/src/syscall-m68k.h | ||
| 25 | @@ -0,0 +1,78 @@ | ||
| 26 | +#define __NR_io_setup 241 | ||
| 27 | +#define __NR_io_destroy 242 | ||
| 28 | +#define __NR_io_getevents 243 | ||
| 29 | +#define __NR_io_submit 244 | ||
| 30 | +#define __NR_io_cancel 245 | ||
| 31 | + | ||
| 32 | +#define io_syscall1(type,fname,sname,atype,a) \ | ||
| 33 | +type fname(atype a) \ | ||
| 34 | +{ \ | ||
| 35 | +register long __res __asm__ ("%d0") = __NR_##sname; \ | ||
| 36 | +register long __a __asm__ ("%d1") = (long)(a); \ | ||
| 37 | +__asm__ __volatile__ ("trap #0" \ | ||
| 38 | + : "+d" (__res) \ | ||
| 39 | + : "d" (__a) ); \ | ||
| 40 | +return (type) __res; \ | ||
| 41 | +} | ||
| 42 | + | ||
| 43 | +#define io_syscall2(type,fname,sname,atype,a,btype,b) \ | ||
| 44 | +type fname(atype a,btype b) \ | ||
| 45 | +{ \ | ||
| 46 | +register long __res __asm__ ("%d0") = __NR_##sname; \ | ||
| 47 | +register long __a __asm__ ("%d1") = (long)(a); \ | ||
| 48 | +register long __b __asm__ ("%d2") = (long)(b); \ | ||
| 49 | +__asm__ __volatile__ ("trap #0" \ | ||
| 50 | + : "+d" (__res) \ | ||
| 51 | + : "d" (__a), "d" (__b) \ | ||
| 52 | + ); \ | ||
| 53 | +return (type) __res; \ | ||
| 54 | +} | ||
| 55 | + | ||
| 56 | +#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \ | ||
| 57 | +type fname(atype a,btype b,ctype c) \ | ||
| 58 | +{ \ | ||
| 59 | +register long __res __asm__ ("%d0") = __NR_##sname; \ | ||
| 60 | +register long __a __asm__ ("%d1") = (long)(a); \ | ||
| 61 | +register long __b __asm__ ("%d2") = (long)(b); \ | ||
| 62 | +register long __c __asm__ ("%d3") = (long)(c); \ | ||
| 63 | +__asm__ __volatile__ ("trap #0" \ | ||
| 64 | + : "+d" (__res) \ | ||
| 65 | + : "d" (__a), "d" (__b), \ | ||
| 66 | + "d" (__c) \ | ||
| 67 | + ); \ | ||
| 68 | +return (type) __res; \ | ||
| 69 | +} | ||
| 70 | + | ||
| 71 | +#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \ | ||
| 72 | +type fname (atype a, btype b, ctype c, dtype d) \ | ||
| 73 | +{ \ | ||
| 74 | +register long __res __asm__ ("%d0") = __NR_##sname; \ | ||
| 75 | +register long __a __asm__ ("%d1") = (long)(a); \ | ||
| 76 | +register long __b __asm__ ("%d2") = (long)(b); \ | ||
| 77 | +register long __c __asm__ ("%d3") = (long)(c); \ | ||
| 78 | +register long __d __asm__ ("%d4") = (long)(d); \ | ||
| 79 | +__asm__ __volatile__ ("trap #0" \ | ||
| 80 | + : "+d" (__res) \ | ||
| 81 | + : "d" (__a), "d" (__b), \ | ||
| 82 | + "d" (__c), "d" (__d) \ | ||
| 83 | + ); \ | ||
| 84 | +return (type) __res; \ | ||
| 85 | +} | ||
| 86 | + | ||
| 87 | +#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ | ||
| 88 | +type fname (atype a,btype b,ctype c,dtype d,etype e) \ | ||
| 89 | +{ \ | ||
| 90 | +register long __res __asm__ ("%d0") = __NR_##sname; \ | ||
| 91 | +register long __a __asm__ ("%d1") = (long)(a); \ | ||
| 92 | +register long __b __asm__ ("%d2") = (long)(b); \ | ||
| 93 | +register long __c __asm__ ("%d3") = (long)(c); \ | ||
| 94 | +register long __d __asm__ ("%d4") = (long)(d); \ | ||
| 95 | +register long __e __asm__ ("%d5") = (long)(e); \ | ||
| 96 | +__asm__ __volatile__ ("trap #0" \ | ||
| 97 | + : "+d" (__res) \ | ||
| 98 | + : "d" (__a), "d" (__b), \ | ||
| 99 | + "d" (__c), "d" (__d), "d" (__e) \ | ||
| 100 | + ); \ | ||
| 101 | +return (type) __res; \ | ||
| 102 | +} | ||
| 103 | + | ||
| 104 | diff --git a/src/syscall-mips.h b/src/syscall-mips.h | ||
| 105 | new file mode 100644 | ||
| 106 | index 0000000..4142499 | ||
| 107 | --- /dev/null | ||
| 108 | +++ b/src/syscall-mips.h | ||
| 109 | @@ -0,0 +1,223 @@ | ||
| 110 | +/* | ||
| 111 | + * This file is subject to the terms and conditions of the GNU General Public | ||
| 112 | + * License. See the file "COPYING" in the main directory of this archive | ||
| 113 | + * for more details. | ||
| 114 | + * | ||
| 115 | + * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle | ||
| 116 | + * Copyright (C) 1999, 2000 Silicon Graphics, Inc. | ||
| 117 | + * | ||
| 118 | + * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto | ||
| 119 | + * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A | ||
| 120 | + */ | ||
| 121 | + | ||
| 122 | +#ifndef _MIPS_SIM_ABI32 | ||
| 123 | +#define _MIPS_SIM_ABI32 1 | ||
| 124 | +#define _MIPS_SIM_NABI32 2 | ||
| 125 | +#define _MIPS_SIM_ABI64 3 | ||
| 126 | +#endif | ||
| 127 | + | ||
| 128 | +#if _MIPS_SIM == _MIPS_SIM_ABI32 | ||
| 129 | + | ||
| 130 | +/* | ||
| 131 | + * Linux o32 style syscalls are in the range from 4000 to 4999. | ||
| 132 | + */ | ||
| 133 | +#define __NR_Linux 4000 | ||
| 134 | +#define __NR_io_setup (__NR_Linux + 241) | ||
| 135 | +#define __NR_io_destroy (__NR_Linux + 242) | ||
| 136 | +#define __NR_io_getevents (__NR_Linux + 243) | ||
| 137 | +#define __NR_io_submit (__NR_Linux + 244) | ||
| 138 | +#define __NR_io_cancel (__NR_Linux + 245) | ||
| 139 | + | ||
| 140 | +#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ | ||
| 141 | + | ||
| 142 | +#if _MIPS_SIM == _MIPS_SIM_ABI64 | ||
| 143 | + | ||
| 144 | +/* | ||
| 145 | + * Linux 64-bit syscalls are in the range from 5000 to 5999. | ||
| 146 | + */ | ||
| 147 | +#define __NR_Linux 5000 | ||
| 148 | +#define __NR_io_setup (__NR_Linux + 200) | ||
| 149 | +#define __NR_io_destroy (__NR_Linux + 201) | ||
| 150 | +#define __NR_io_getevents (__NR_Linux + 202) | ||
| 151 | +#define __NR_io_submit (__NR_Linux + 203) | ||
| 152 | +#define __NR_io_cancel (__NR_Linux + 204) | ||
| 153 | +#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ | ||
| 154 | + | ||
| 155 | +#if _MIPS_SIM == _MIPS_SIM_NABI32 | ||
| 156 | + | ||
| 157 | +/* | ||
| 158 | + * Linux N32 syscalls are in the range from 6000 to 6999. | ||
| 159 | + */ | ||
| 160 | +#define __NR_Linux 6000 | ||
| 161 | +#define __NR_io_setup (__NR_Linux + 200) | ||
| 162 | +#define __NR_io_destroy (__NR_Linux + 201) | ||
| 163 | +#define __NR_io_getevents (__NR_Linux + 202) | ||
| 164 | +#define __NR_io_submit (__NR_Linux + 203) | ||
| 165 | +#define __NR_io_cancel (__NR_Linux + 204) | ||
| 166 | +#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ | ||
| 167 | + | ||
| 168 | +#define io_syscall1(type,fname,sname,atype,a) \ | ||
| 169 | +type fname(atype a) \ | ||
| 170 | +{ \ | ||
| 171 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 172 | + register unsigned long __a3 asm("$7"); \ | ||
| 173 | + unsigned long __v0; \ | ||
| 174 | + \ | ||
| 175 | + __asm__ volatile ( \ | ||
| 176 | + ".set\tnoreorder\n\t" \ | ||
| 177 | + "li\t$2, %3\t\t\t# " #fname "\n\t" \ | ||
| 178 | + "syscall\n\t" \ | ||
| 179 | + "move\t%0, $2\n\t" \ | ||
| 180 | + ".set\treorder" \ | ||
| 181 | + : "=&r" (__v0), "=r" (__a3) \ | ||
| 182 | + : "r" (__a0), "i" (__NR_##sname) \ | ||
| 183 | + : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 184 | + "memory"); \ | ||
| 185 | + \ | ||
| 186 | + if (__a3 == 0) \ | ||
| 187 | + return (type) __v0; \ | ||
| 188 | + return (type) -1; \ | ||
| 189 | +} | ||
| 190 | + | ||
| 191 | +#define io_syscall2(type,fname,sname,atype,a,btype,b) \ | ||
| 192 | +type fname(atype a, btype b) \ | ||
| 193 | +{ \ | ||
| 194 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 195 | + register unsigned long __a1 asm("$5") = (unsigned long) b; \ | ||
| 196 | + register unsigned long __a3 asm("$7"); \ | ||
| 197 | + unsigned long __v0; \ | ||
| 198 | + \ | ||
| 199 | + __asm__ volatile ( \ | ||
| 200 | + ".set\tnoreorder\n\t" \ | ||
| 201 | + "li\t$2, %4\t\t\t# " #fname "\n\t" \ | ||
| 202 | + "syscall\n\t" \ | ||
| 203 | + "move\t%0, $2\n\t" \ | ||
| 204 | + ".set\treorder" \ | ||
| 205 | + : "=&r" (__v0), "=r" (__a3) \ | ||
| 206 | + : "r" (__a0), "r" (__a1), "i" (__NR_##sname) \ | ||
| 207 | + : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 208 | + "memory"); \ | ||
| 209 | + \ | ||
| 210 | + if (__a3 == 0) \ | ||
| 211 | + return (type) __v0; \ | ||
| 212 | + return (type) -1; \ | ||
| 213 | +} | ||
| 214 | + | ||
| 215 | +#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \ | ||
| 216 | +type fname(atype a, btype b, ctype c) \ | ||
| 217 | +{ \ | ||
| 218 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 219 | + register unsigned long __a1 asm("$5") = (unsigned long) b; \ | ||
| 220 | + register unsigned long __a2 asm("$6") = (unsigned long) c; \ | ||
| 221 | + register unsigned long __a3 asm("$7"); \ | ||
| 222 | + unsigned long __v0; \ | ||
| 223 | + \ | ||
| 224 | + __asm__ volatile ( \ | ||
| 225 | + ".set\tnoreorder\n\t" \ | ||
| 226 | + "li\t$2, %5\t\t\t# " #fname "\n\t" \ | ||
| 227 | + "syscall\n\t" \ | ||
| 228 | + "move\t%0, $2\n\t" \ | ||
| 229 | + ".set\treorder" \ | ||
| 230 | + : "=&r" (__v0), "=r" (__a3) \ | ||
| 231 | + : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \ | ||
| 232 | + : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 233 | + "memory"); \ | ||
| 234 | + \ | ||
| 235 | + if (__a3 == 0) \ | ||
| 236 | + return (type) __v0; \ | ||
| 237 | + return (type) -1; \ | ||
| 238 | +} | ||
| 239 | + | ||
| 240 | +#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \ | ||
| 241 | +type fname(atype a, btype b, ctype c, dtype d) \ | ||
| 242 | +{ \ | ||
| 243 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 244 | + register unsigned long __a1 asm("$5") = (unsigned long) b; \ | ||
| 245 | + register unsigned long __a2 asm("$6") = (unsigned long) c; \ | ||
| 246 | + register unsigned long __a3 asm("$7") = (unsigned long) d; \ | ||
| 247 | + unsigned long __v0; \ | ||
| 248 | + \ | ||
| 249 | + __asm__ volatile ( \ | ||
| 250 | + ".set\tnoreorder\n\t" \ | ||
| 251 | + "li\t$2, %5\t\t\t# " #fname "\n\t" \ | ||
| 252 | + "syscall\n\t" \ | ||
| 253 | + "move\t%0, $2\n\t" \ | ||
| 254 | + ".set\treorder" \ | ||
| 255 | + : "=&r" (__v0), "+r" (__a3) \ | ||
| 256 | + : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \ | ||
| 257 | + : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 258 | + "memory"); \ | ||
| 259 | + \ | ||
| 260 | + if (__a3 == 0) \ | ||
| 261 | + return (type) __v0; \ | ||
| 262 | + return (type) -1; \ | ||
| 263 | +} | ||
| 264 | + | ||
| 265 | +#if (_MIPS_SIM == _MIPS_SIM_ABI32) | ||
| 266 | + | ||
| 267 | +/* | ||
| 268 | + * Using those means your brain needs more than an oil change ;-) | ||
| 269 | + */ | ||
| 270 | + | ||
| 271 | +#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ | ||
| 272 | +type fname(atype a, btype b, ctype c, dtype d, etype e) \ | ||
| 273 | +{ \ | ||
| 274 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 275 | + register unsigned long __a1 asm("$5") = (unsigned long) b; \ | ||
| 276 | + register unsigned long __a2 asm("$6") = (unsigned long) c; \ | ||
| 277 | + register unsigned long __a3 asm("$7") = (unsigned long) d; \ | ||
| 278 | + unsigned long __v0; \ | ||
| 279 | + \ | ||
| 280 | + __asm__ volatile ( \ | ||
| 281 | + ".set\tnoreorder\n\t" \ | ||
| 282 | + "lw\t$2, %6\n\t" \ | ||
| 283 | + "subu\t$29, 32\n\t" \ | ||
| 284 | + "sw\t$2, 16($29)\n\t" \ | ||
| 285 | + "li\t$2, %5\t\t\t# " #fname "\n\t" \ | ||
| 286 | + "syscall\n\t" \ | ||
| 287 | + "move\t%0, $2\n\t" \ | ||
| 288 | + "addiu\t$29, 32\n\t" \ | ||
| 289 | + ".set\treorder" \ | ||
| 290 | + : "=&r" (__v0), "+r" (__a3) \ | ||
| 291 | + : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname), \ | ||
| 292 | + "m" ((unsigned long)e) \ | ||
| 293 | + : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 294 | + "memory"); \ | ||
| 295 | + \ | ||
| 296 | + if (__a3 == 0) \ | ||
| 297 | + return (type) __v0; \ | ||
| 298 | + return (type) -1; \ | ||
| 299 | +} | ||
| 300 | + | ||
| 301 | +#endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */ | ||
| 302 | + | ||
| 303 | +#if (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) | ||
| 304 | + | ||
| 305 | +#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ | ||
| 306 | +type fname (atype a,btype b,ctype c,dtype d,etype e) \ | ||
| 307 | +{ \ | ||
| 308 | + register unsigned long __a0 asm("$4") = (unsigned long) a; \ | ||
| 309 | + register unsigned long __a1 asm("$5") = (unsigned long) b; \ | ||
| 310 | + register unsigned long __a2 asm("$6") = (unsigned long) c; \ | ||
| 311 | + register unsigned long __a3 asm("$7") = (unsigned long) d; \ | ||
| 312 | + register unsigned long __a4 asm("$8") = (unsigned long) e; \ | ||
| 313 | + unsigned long __v0; \ | ||
| 314 | + \ | ||
| 315 | + __asm__ volatile ( \ | ||
| 316 | + ".set\tnoreorder\n\t" \ | ||
| 317 | + "li\t$2, %6\t\t\t# " #fname "\n\t" \ | ||
| 318 | + "syscall\n\t" \ | ||
| 319 | + "move\t%0, $2\n\t" \ | ||
| 320 | + ".set\treorder" \ | ||
| 321 | + : "=&r" (__v0), "+r" (__a3) \ | ||
| 322 | + : "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), "i" (__NR_##sname) \ | ||
| 323 | + : "$2", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ | ||
| 324 | + "memory"); \ | ||
| 325 | + \ | ||
| 326 | + if (__a3 == 0) \ | ||
| 327 | + return (type) __v0; \ | ||
| 328 | + return (type) -1; \ | ||
| 329 | +} | ||
| 330 | + | ||
| 331 | +#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ | ||
| 332 | + | ||
| 333 | diff --git a/src/syscall-parisc.h b/src/syscall-parisc.h | ||
| 334 | new file mode 100644 | ||
| 335 | index 0000000..ff61746 | ||
| 336 | --- /dev/null | ||
| 337 | +++ b/src/syscall-parisc.h | ||
| 338 | @@ -0,0 +1,146 @@ | ||
| 339 | +/* | ||
| 340 | + * Linux system call numbers. | ||
| 341 | + * | ||
| 342 | + * Cary Coutant says that we should just use another syscall gateway | ||
| 343 | + * page to avoid clashing with the HPUX space, and I think he's right: | ||
| 344 | + * it will would keep a branch out of our syscall entry path, at the | ||
| 345 | + * very least. If we decide to change it later, we can ``just'' tweak | ||
| 346 | + * the LINUX_GATEWAY_ADDR define at the bottom and make __NR_Linux be | ||
| 347 | + * 1024 or something. Oh, and recompile libc. =) | ||
| 348 | + * | ||
| 349 | + * 64-bit HPUX binaries get the syscall gateway address passed in a register | ||
| 350 | + * from the kernel at startup, which seems a sane strategy. | ||
| 351 | + */ | ||
| 352 | + | ||
| 353 | +#define __NR_Linux 0 | ||
| 354 | +#define __NR_io_setup (__NR_Linux + 215) | ||
| 355 | +#define __NR_io_destroy (__NR_Linux + 216) | ||
| 356 | +#define __NR_io_getevents (__NR_Linux + 217) | ||
| 357 | +#define __NR_io_submit (__NR_Linux + 218) | ||
| 358 | +#define __NR_io_cancel (__NR_Linux + 219) | ||
| 359 | + | ||
| 360 | +#define SYS_ify(syscall_name) __NR_##syscall_name | ||
| 361 | + | ||
| 362 | +/* Assume all syscalls are done from PIC code just to be | ||
| 363 | + * safe. The worst case scenario is that you lose a register | ||
| 364 | + * and save/restore r19 across the syscall. */ | ||
| 365 | +#define PIC | ||
| 366 | + | ||
| 367 | +/* Definition taken from glibc 2.3.3 | ||
| 368 | + * sysdeps/unix/sysv/linux/hppa/sysdep.h | ||
| 369 | + */ | ||
| 370 | + | ||
| 371 | +#ifdef PIC | ||
| 372 | +/* WARNING: CANNOT BE USED IN A NOP! */ | ||
| 373 | +# define K_STW_ASM_PIC " copy %%r19, %%r4\n" | ||
| 374 | +# define K_LDW_ASM_PIC " copy %%r4, %%r19\n" | ||
| 375 | +# define K_USING_GR4 "%r4", | ||
| 376 | +#else | ||
| 377 | +# define K_STW_ASM_PIC " \n" | ||
| 378 | +# define K_LDW_ASM_PIC " \n" | ||
| 379 | +# define K_USING_GR4 | ||
| 380 | +#endif | ||
| 381 | + | ||
| 382 | +/* GCC has to be warned that a syscall may clobber all the ABI | ||
| 383 | + registers listed as "caller-saves", see page 8, Table 2 | ||
| 384 | + in section 2.2.6 of the PA-RISC RUN-TIME architecture | ||
| 385 | + document. However! r28 is the result and will conflict with | ||
| 386 | + the clobber list so it is left out. Also the input arguments | ||
| 387 | + registers r20 -> r26 will conflict with the list so they | ||
| 388 | + are treated specially. Although r19 is clobbered by the syscall | ||
| 389 | + we cannot say this because it would violate ABI, thus we say | ||
| 390 | + r4 is clobbered and use that register to save/restore r19 | ||
| 391 | + across the syscall. */ | ||
| 392 | + | ||
| 393 | +#define K_CALL_CLOB_REGS "%r1", "%r2", K_USING_GR4 \ | ||
| 394 | + "%r20", "%r29", "%r31" | ||
| 395 | + | ||
| 396 | +#undef K_INLINE_SYSCALL | ||
| 397 | +#define K_INLINE_SYSCALL(name, nr, args...) ({ \ | ||
| 398 | + long __sys_res; \ | ||
| 399 | + { \ | ||
| 400 | + register unsigned long __res __asm__("r28"); \ | ||
| 401 | + K_LOAD_ARGS_##nr(args) \ | ||
| 402 | + /* FIXME: HACK stw/ldw r19 around syscall */ \ | ||
| 403 | + __asm__ volatile( \ | ||
| 404 | + K_STW_ASM_PIC \ | ||
| 405 | + " ble 0x100(%%sr2, %%r0)\n" \ | ||
| 406 | + " ldi %1, %%r20\n" \ | ||
| 407 | + K_LDW_ASM_PIC \ | ||
| 408 | + : "=r" (__res) \ | ||
| 409 | + : "i" (SYS_ify(name)) K_ASM_ARGS_##nr \ | ||
| 410 | + : "memory", K_CALL_CLOB_REGS K_CLOB_ARGS_##nr \ | ||
| 411 | + ); \ | ||
| 412 | + __sys_res = (long)__res; \ | ||
| 413 | + } \ | ||
| 414 | + __sys_res; \ | ||
| 415 | +}) | ||
| 416 | + | ||
| 417 | +#define K_LOAD_ARGS_0() | ||
| 418 | +#define K_LOAD_ARGS_1(r26) \ | ||
| 419 | + register unsigned long __r26 __asm__("r26") = (unsigned long)(r26); \ | ||
| 420 | + K_LOAD_ARGS_0() | ||
| 421 | +#define K_LOAD_ARGS_2(r26,r25) \ | ||
| 422 | + register unsigned long __r25 __asm__("r25") = (unsigned long)(r25); \ | ||
| 423 | + K_LOAD_ARGS_1(r26) | ||
| 424 | +#define K_LOAD_ARGS_3(r26,r25,r24) \ | ||
| 425 | + register unsigned long __r24 __asm__("r24") = (unsigned long)(r24); \ | ||
| 426 | + K_LOAD_ARGS_2(r26,r25) | ||
| 427 | +#define K_LOAD_ARGS_4(r26,r25,r24,r23) \ | ||
| 428 | + register unsigned long __r23 __asm__("r23") = (unsigned long)(r23); \ | ||
| 429 | + K_LOAD_ARGS_3(r26,r25,r24) | ||
| 430 | +#define K_LOAD_ARGS_5(r26,r25,r24,r23,r22) \ | ||
| 431 | + register unsigned long __r22 __asm__("r22") = (unsigned long)(r22); \ | ||
| 432 | + K_LOAD_ARGS_4(r26,r25,r24,r23) | ||
| 433 | +#define K_LOAD_ARGS_6(r26,r25,r24,r23,r22,r21) \ | ||
| 434 | + register unsigned long __r21 __asm__("r21") = (unsigned long)(r21); \ | ||
| 435 | + K_LOAD_ARGS_5(r26,r25,r24,r23,r22) | ||
| 436 | + | ||
| 437 | +/* Even with zero args we use r20 for the syscall number */ | ||
| 438 | +#define K_ASM_ARGS_0 | ||
| 439 | +#define K_ASM_ARGS_1 K_ASM_ARGS_0, "r" (__r26) | ||
| 440 | +#define K_ASM_ARGS_2 K_ASM_ARGS_1, "r" (__r25) | ||
| 441 | +#define K_ASM_ARGS_3 K_ASM_ARGS_2, "r" (__r24) | ||
| 442 | +#define K_ASM_ARGS_4 K_ASM_ARGS_3, "r" (__r23) | ||
| 443 | +#define K_ASM_ARGS_5 K_ASM_ARGS_4, "r" (__r22) | ||
| 444 | +#define K_ASM_ARGS_6 K_ASM_ARGS_5, "r" (__r21) | ||
| 445 | + | ||
| 446 | +/* The registers not listed as inputs but clobbered */ | ||
| 447 | +#define K_CLOB_ARGS_6 | ||
| 448 | +#define K_CLOB_ARGS_5 K_CLOB_ARGS_6, "%r21" | ||
| 449 | +#define K_CLOB_ARGS_4 K_CLOB_ARGS_5, "%r22" | ||
| 450 | +#define K_CLOB_ARGS_3 K_CLOB_ARGS_4, "%r23" | ||
| 451 | +#define K_CLOB_ARGS_2 K_CLOB_ARGS_3, "%r24" | ||
| 452 | +#define K_CLOB_ARGS_1 K_CLOB_ARGS_2, "%r25" | ||
| 453 | +#define K_CLOB_ARGS_0 K_CLOB_ARGS_1, "%r26" | ||
| 454 | + | ||
| 455 | +#define io_syscall1(type,fname,sname,type1,arg1) \ | ||
| 456 | +type fname(type1 arg1) \ | ||
| 457 | +{ \ | ||
| 458 | + return K_INLINE_SYSCALL(sname, 1, arg1); \ | ||
| 459 | +} | ||
| 460 | + | ||
| 461 | +#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \ | ||
| 462 | +type fname(type1 arg1, type2 arg2) \ | ||
| 463 | +{ \ | ||
| 464 | + return K_INLINE_SYSCALL(sname, 2, arg1, arg2); \ | ||
| 465 | +} | ||
| 466 | + | ||
| 467 | +#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \ | ||
| 468 | +type fname(type1 arg1, type2 arg2, type3 arg3) \ | ||
| 469 | +{ \ | ||
| 470 | + return K_INLINE_SYSCALL(sname, 3, arg1, arg2, arg3); \ | ||
| 471 | +} | ||
| 472 | + | ||
| 473 | +#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \ | ||
| 474 | +type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) \ | ||
| 475 | +{ \ | ||
| 476 | + return K_INLINE_SYSCALL(sname, 4, arg1, arg2, arg3, arg4); \ | ||
| 477 | +} | ||
| 478 | + | ||
| 479 | +#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \ | ||
| 480 | +type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) \ | ||
| 481 | +{ \ | ||
| 482 | + return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5); \ | ||
| 483 | +} | ||
| 484 | + | ||
| 485 | diff --git a/src/syscall.h b/src/syscall.h | ||
| 486 | index d2a117b..8cf8470 100644 | ||
| 487 | --- a/src/syscall.h | ||
| 488 | +++ b/src/syscall.h | ||
| 489 | @@ -29,6 +29,12 @@ | ||
| 490 | #include "syscall-sparc.h" | ||
| 491 | #elif defined(__aarch64__) || defined(__loongarch__) || defined(__riscv) | ||
| 492 | #include "syscall-generic.h" | ||
| 493 | +#elif defined(__m68k__) | ||
| 494 | +#include "syscall-m68k.h" | ||
| 495 | +#elif defined(__hppa__) | ||
| 496 | +#include "syscall-parisc.h" | ||
| 497 | +#elif defined(__mips__) | ||
| 498 | +#include "syscall-mips.h" | ||
| 499 | #else | ||
| 500 | #warning "using system call numbers from sys/syscall.h" | ||
| 501 | #endif | ||
diff --git a/meta/recipes-extended/libaio/libaio/libaio_fix_for_mips_syscalls.patch b/meta/recipes-extended/libaio/libaio/libaio_fix_for_mips_syscalls.patch deleted file mode 100644 index 9c6850c08a..0000000000 --- a/meta/recipes-extended/libaio/libaio/libaio_fix_for_mips_syscalls.patch +++ /dev/null | |||
| @@ -1,62 +0,0 @@ | |||
| 1 | Upstream-Status: Inappropriate [embedded specific] | ||
| 2 | |||
| 3 | Signed-off-by: Phil Staub <Phil.Staub@windriver.com> | ||
| 4 | |||
| 5 | Index: libaio-0.3.109/src/syscall-mips.h | ||
| 6 | =================================================================== | ||
| 7 | --- libaio-0.3.109.orig/src/syscall-mips.h | ||
| 8 | +++ libaio-0.3.109/src/syscall-mips.h | ||
| 9 | @@ -76,7 +76,7 @@ type fname(atype a) \ | ||
| 10 | \ | ||
| 11 | if (__a3 == 0) \ | ||
| 12 | return (type) __v0; \ | ||
| 13 | - return (type) -1; \ | ||
| 14 | + return (type) (-(__v0)); \ | ||
| 15 | } | ||
| 16 | |||
| 17 | #define io_syscall2(type,fname,sname,atype,a,btype,b) \ | ||
| 18 | @@ -100,7 +100,7 @@ type fname(atype a, btype b) \ | ||
| 19 | \ | ||
| 20 | if (__a3 == 0) \ | ||
| 21 | return (type) __v0; \ | ||
| 22 | - return (type) -1; \ | ||
| 23 | + return (type) (-(__v0)); \ | ||
| 24 | } | ||
| 25 | |||
| 26 | #define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \ | ||
| 27 | @@ -125,7 +125,7 @@ type fname(atype a, btype b, ctype c) \ | ||
| 28 | \ | ||
| 29 | if (__a3 == 0) \ | ||
| 30 | return (type) __v0; \ | ||
| 31 | - return (type) -1; \ | ||
| 32 | + return (type) (-(__v0)); \ | ||
| 33 | } | ||
| 34 | |||
| 35 | #define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \ | ||
| 36 | @@ -150,7 +150,7 @@ type fname(atype a, btype b, ctype c, dt | ||
| 37 | \ | ||
| 38 | if (__a3 == 0) \ | ||
| 39 | return (type) __v0; \ | ||
| 40 | - return (type) -1; \ | ||
| 41 | + return (type) (-(__v0)); \ | ||
| 42 | } | ||
| 43 | |||
| 44 | #if (_MIPS_SIM == _MIPS_SIM_ABI32) | ||
| 45 | @@ -186,7 +186,7 @@ type fname(atype a, btype b, ctype c, dt | ||
| 46 | \ | ||
| 47 | if (__a3 == 0) \ | ||
| 48 | return (type) __v0; \ | ||
| 49 | - return (type) -1; \ | ||
| 50 | + return (type) (-(__v0)); \ | ||
| 51 | } | ||
| 52 | |||
| 53 | #endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */ | ||
| 54 | @@ -216,7 +216,7 @@ type fname (atype a,btype b,ctype c,dtyp | ||
| 55 | \ | ||
| 56 | if (__a3 == 0) \ | ||
| 57 | return (type) __v0; \ | ||
| 58 | - return (type) -1; \ | ||
| 59 | + return (type) (-(__v0)); \ | ||
| 60 | } | ||
| 61 | |||
| 62 | #endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ | ||
diff --git a/meta/recipes-extended/libaio/libaio/system-linkage.patch b/meta/recipes-extended/libaio/libaio/system-linkage.patch deleted file mode 100644 index cc91ea99d9..0000000000 --- a/meta/recipes-extended/libaio/libaio/system-linkage.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From 94bba6880b1f10c6b3bf33a17ac40935d65a81ae Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ross Burton <ross.burton@intel.com> | ||
| 3 | Date: Fri, 6 Nov 2015 15:19:46 +0000 | ||
| 4 | Subject: [PATCH] Don't remove the system libraries and startup files from | ||
| 5 | libaio, as in some build configurations these are required. For example, | ||
| 6 | including conf/include/security_flags.inc on PPC results in: | ||
| 7 | |||
| 8 | io_queue_init.os: In function `io_queue_init': | ||
| 9 | tmp/work/ppce300c3-poky-linux/libaio/0.3.110-r0/libaio-0.3.110/src/io_queue_init.c:33: | ||
| 10 | undefined reference to `__stack_chk_fail_local' | ||
| 11 | |||
| 12 | Upstream-Status: Pending | ||
| 13 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
| 14 | --- | ||
| 15 | src/Makefile | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/src/Makefile b/src/Makefile | ||
| 19 | index 37ae219..22e0c9a 100644 | ||
| 20 | --- a/src/Makefile | ||
| 21 | +++ b/src/Makefile | ||
| 22 | @@ -6,7 +6,7 @@ CFLAGS ?= -g -fomit-frame-pointer -O2 | ||
| 23 | CFLAGS += -Wall -I. -fPIC | ||
| 24 | SO_CFLAGS=-shared $(CFLAGS) | ||
| 25 | L_CFLAGS=$(CFLAGS) | ||
| 26 | -LINK_FLAGS= | ||
| 27 | +LINK_FLAGS=$(LDFLAGS) | ||
| 28 | LINK_FLAGS+=$(LDFLAGS) | ||
| 29 | ENABLE_SHARED ?= 1 | ||
| 30 | |||
| 31 | -- | ||
| 32 | 2.25.1 | ||
| 33 | |||
diff --git a/meta/recipes-extended/libaio/libaio_0.3.113.bb b/meta/recipes-extended/libaio/libaio_0.3.113.bb deleted file mode 100644 index 2392fd5db2..0000000000 --- a/meta/recipes-extended/libaio/libaio_0.3.113.bb +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | SUMMARY = "Asynchronous I/O library" | ||
| 2 | DESCRIPTION = "Asynchronous input/output library that uses the kernels native interface" | ||
| 3 | HOMEPAGE = "http://lse.sourceforge.net/io/aio.html" | ||
| 4 | |||
| 5 | LICENSE = "LGPL-2.1-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499" | ||
| 7 | |||
| 8 | SRC_URI = "git://pagure.io/libaio.git;protocol=https;branch=master \ | ||
| 9 | file://00_arches.patch \ | ||
| 10 | file://libaio_fix_for_mips_syscalls.patch \ | ||
| 11 | file://system-linkage.patch \ | ||
| 12 | " | ||
| 13 | SRCREV = "1b18bfafc6a2f7b9fa2c6be77a95afed8b7be448" | ||
| 14 | |||
| 15 | EXTRA_OEMAKE =+ "prefix=${prefix} includedir=${includedir} libdir=${libdir}" | ||
| 16 | |||
| 17 | do_install () { | ||
| 18 | oe_runmake install DESTDIR=${D} | ||
| 19 | } | ||
| 20 | |||
| 21 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/libarchive/libarchive_3.8.2.bb b/meta/recipes-extended/libarchive/libarchive_3.8.2.bb deleted file mode 100644 index d4f367009a..0000000000 --- a/meta/recipes-extended/libarchive/libarchive_3.8.2.bb +++ /dev/null | |||
| @@ -1,64 +0,0 @@ | |||
| 1 | SUMMARY = "Support for reading various archive formats" | ||
| 2 | DESCRIPTION = "C library and command-line tools for reading and writing tar, cpio, zip, ISO, and other archive formats" | ||
| 3 | HOMEPAGE = "http://www.libarchive.org/" | ||
| 4 | SECTION = "devel" | ||
| 5 | LICENSE = "BSD-2-Clause" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=7ce08437ff7f5e24d72e666313ae4084" | ||
| 7 | |||
| 8 | DEPENDS = "e2fsprogs-native" | ||
| 9 | |||
| 10 | PACKAGECONFIG ?= "zlib bz2 xz zstd ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)}" | ||
| 11 | |||
| 12 | DEPENDS_BZIP2 = "bzip2-replacement-native" | ||
| 13 | DEPENDS_BZIP2:class-target = "bzip2" | ||
| 14 | |||
| 15 | PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," | ||
| 16 | PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr," | ||
| 17 | PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib," | ||
| 18 | PACKAGECONFIG[bz2] = "--with-bz2lib,--without-bz2lib,${DEPENDS_BZIP2}," | ||
| 19 | PACKAGECONFIG[xz] = "--with-lzma,--without-lzma,xz," | ||
| 20 | PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl," | ||
| 21 | PACKAGECONFIG[libb2] = "--with-libb2,--without-libb2,libb2," | ||
| 22 | PACKAGECONFIG[libxml2] = "--with-xml2,--without-xml2,libxml2," | ||
| 23 | PACKAGECONFIG[expat] = "--with-expat,--without-expat,expat," | ||
| 24 | PACKAGECONFIG[lzo] = "--with-lzo2,--without-lzo2,lzo," | ||
| 25 | PACKAGECONFIG[nettle] = "--with-nettle,--without-nettle,nettle," | ||
| 26 | PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," | ||
| 27 | PACKAGECONFIG[mbedtls] = "--with-mbedtls,--without-mbedtls,mbedtls," | ||
| 28 | PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd," | ||
| 29 | |||
| 30 | EXTRA_OECONF += "--enable-largefile --without-iconv" | ||
| 31 | |||
| 32 | SRC_URI = "https://libarchive.org/downloads/libarchive-${PV}.tar.gz" | ||
| 33 | UPSTREAM_CHECK_URI = "https://www.libarchive.org/" | ||
| 34 | |||
| 35 | SRC_URI[sha256sum] = "5f2d3c2fde8dc44583a61165549dc50ba8a37c5947c90fc02c8e5ce7f1cfb80d" | ||
| 36 | |||
| 37 | inherit autotools update-alternatives pkgconfig | ||
| 38 | |||
| 39 | CPPFLAGS += "-I${WORKDIR}/extra-includes" | ||
| 40 | |||
| 41 | do_configure[cleandirs] += "${WORKDIR}/extra-includes" | ||
| 42 | do_configure:prepend() { | ||
| 43 | # We just need the headers for some type constants, so no need to | ||
| 44 | # build all of e2fsprogs for the target | ||
| 45 | cp -R ${STAGING_INCDIR_NATIVE}/ext2fs ${WORKDIR}/extra-includes/ | ||
| 46 | } | ||
| 47 | |||
| 48 | ALTERNATIVE_PRIORITY = "80" | ||
| 49 | |||
| 50 | PACKAGES =+ "bsdtar" | ||
| 51 | FILES:bsdtar = "${bindir}/bsdtar" | ||
| 52 | |||
| 53 | ALTERNATIVE:bsdtar = "tar" | ||
| 54 | ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar" | ||
| 55 | ALTERNATIVE_TARGET[tar] = "${bindir}/bsdtar" | ||
| 56 | |||
| 57 | PACKAGES =+ "bsdcpio" | ||
| 58 | FILES:bsdcpio = "${bindir}/bsdcpio" | ||
| 59 | |||
| 60 | ALTERNATIVE:bsdcpio = "cpio" | ||
| 61 | ALTERNATIVE_LINK_NAME[cpio] = "${base_bindir}/cpio" | ||
| 62 | ALTERNATIVE_TARGET[cpio] = "${bindir}/bsdcpio" | ||
| 63 | |||
| 64 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/libidn/libidn2_2.3.8.bb b/meta/recipes-extended/libidn/libidn2_2.3.8.bb deleted file mode 100644 index a53ac47d66..0000000000 --- a/meta/recipes-extended/libidn/libidn2_2.3.8.bb +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | SUMMARY = "Internationalized Domain Name support library" | ||
| 2 | DESCRIPTION = "Implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group." | ||
| 3 | HOMEPAGE = "http://www.gnu.org/software/libidn/" | ||
| 4 | SECTION = "libs" | ||
| 5 | LICENSE = "(GPL-2.0-or-later | LGPL-3.0-only) & GPL-3.0-or-later & Unicode-DFS-2016" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 7 | file://COPYING.LESSERv3;md5=3000208d539ec061b899bce1d9ce9404 \ | ||
| 8 | file://COPYINGv2;md5=570a9b3749dd0463a1778803b12a6dce \ | ||
| 9 | file://COPYING.unicode;md5=684cf5f7e3fded3546679424528261a9 \ | ||
| 10 | file://src/idn2.c;endline=16;md5=c44fb6f201f22da3a19857499b49b15d \ | ||
| 11 | file://lib/idn2.h.in;endline=27;md5=f27aee1b44326be3a28961c55319099f \ | ||
| 12 | " | ||
| 13 | |||
| 14 | SRC_URI = "${GNU_MIRROR}/libidn/${BPN}-${PV}.tar.gz" | ||
| 15 | SRC_URI[sha256sum] = "f557911bf6171621e1f72ff35f5b1825bb35b52ed45325dcdee931e5d3c0787a" | ||
| 16 | |||
| 17 | DEPENDS = "virtual/libiconv libunistring" | ||
| 18 | |||
| 19 | inherit pkgconfig autotools gettext texinfo gtk-doc lib_package | ||
| 20 | |||
| 21 | EXTRA_OECONF += "--disable-rpath \ | ||
| 22 | --with-libunistring-prefix=${STAGING_EXECPREFIXDIR} \ | ||
| 23 | " | ||
| 24 | |||
| 25 | do_install:append() { | ||
| 26 | # Need to remove any duplicate whitespace too for reproducibility | ||
| 27 | sed -i -e 's|-L${STAGING_LIBDIR}||' -e 's/ */ /g' ${D}${libdir}/pkgconfig/libidn2.pc | ||
| 28 | } | ||
| 29 | |||
| 30 | LICENSE:${PN} = "(GPL-2.0-or-later | LGPL-3.0-only) & Unicode-DFS-2016" | ||
| 31 | LICENSE:${PN}-bin = "GPL-3.0-or-later" | ||
| 32 | |||
| 33 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/libmnl/libmnl_1.0.5.bb b/meta/recipes-extended/libmnl/libmnl_1.0.5.bb deleted file mode 100644 index 66b30d7f60..0000000000 --- a/meta/recipes-extended/libmnl/libmnl_1.0.5.bb +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | SUMMARY = "Minimalistic user-space Netlink utility library" | ||
| 2 | DESCRIPTION = "Minimalistic user-space library oriented to Netlink developers, providing \ | ||
| 3 | functions for common tasks in parsing, validating, and constructing both the Netlink header and TLVs." | ||
| 4 | HOMEPAGE = "https://www.netfilter.org/projects/libmnl/index.html" | ||
| 5 | SECTION = "libs" | ||
| 6 | LICENSE = "LGPL-2.1-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" | ||
| 8 | |||
| 9 | SRC_URI = "https://netfilter.org/projects/libmnl/files/libmnl-${PV}.tar.bz2" | ||
| 10 | SRC_URI[sha256sum] = "274b9b919ef3152bfb3da3a13c950dd60d6e2bcd54230ffeca298d03b40d0525" | ||
| 11 | |||
| 12 | inherit autotools pkgconfig | ||
| 13 | |||
| 14 | EXTRA_OECONF += "--with-doxygen=no" | ||
| 15 | |||
| 16 | BBCLASSEXTEND = "native" | ||
diff --git a/meta/recipes-extended/libnsl/libnsl2_2.0.1.bb b/meta/recipes-extended/libnsl/libnsl2_2.0.1.bb deleted file mode 100644 index ff4ae6c243..0000000000 --- a/meta/recipes-extended/libnsl/libnsl2_2.0.1.bb +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | # Copyright (C) 2017 Khem Raj <raj.khem@gmail.com> | ||
| 2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
| 3 | |||
| 4 | SUMMARY = "Library containing NIS functions using TI-RPC (IPv6 enabled)" | ||
| 5 | DESCRIPTION = "This library contains the public client interface for NIS(YP) and NIS+\ | ||
| 6 | it was part of glibc and now is standalone packages. it also supports IPv6" | ||
| 7 | HOMEPAGE = "https://github.com/thkukuk/libnsl" | ||
| 8 | LICENSE = "LGPL-2.1-only" | ||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" | ||
| 10 | SECTION = "libs" | ||
| 11 | DEPENDS = "libtirpc" | ||
| 12 | |||
| 13 | CVE_PRODUCT = "libnsl_project:libnsl" | ||
| 14 | |||
| 15 | SRC_URI = "git://github.com/thkukuk/libnsl;branch=master;protocol=https" | ||
| 16 | SRCREV = "d4b22e54b5e6637a69b26eab5faad2a326c9b182" | ||
| 17 | |||
| 18 | inherit autotools pkgconfig gettext | ||
| 19 | |||
| 20 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/libnss-nis/libnss-nis_3.4.bb b/meta/recipes-extended/libnss-nis/libnss-nis_3.4.bb deleted file mode 100644 index eac385f6d1..0000000000 --- a/meta/recipes-extended/libnss-nis/libnss-nis_3.4.bb +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | # Copyright (C) 2018 Khem Raj <raj.khem@gmail.com> | ||
| 2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
| 3 | |||
| 4 | SUMMARY = "NSS module for glibc, to provide NIS support for glibc" | ||
| 5 | |||
| 6 | DESCRIPTION = "This package contains the NSS NIS plugin for glibc.\ | ||
| 7 | This code was formerly part of glibc, but is now standalone to\ | ||
| 8 | be able to link against TI-RPC for IPv6 support." | ||
| 9 | |||
| 10 | HOMEPAGE = "https://github.com/thkukuk/libnss_nis" | ||
| 11 | LICENSE = "LGPL-2.1-only" | ||
| 12 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" | ||
| 13 | SECTION = "libs" | ||
| 14 | DEPENDS += "libtirpc libnsl2" | ||
| 15 | |||
| 16 | SRCREV = "3c206b762ac8557dab3c40ff3a297c9d1bff0d83" | ||
| 17 | SRC_URI = "git://github.com/thkukuk/libnss_nis;branch=master;protocol=https;tag=v${PV}" | ||
| 18 | |||
| 19 | inherit autotools pkgconfig | ||
| 20 | |||
| 21 | BBCLASSEXTEND += "native nativesdk" | ||
| 22 | # | ||
| 23 | # We will skip parsing this packagegeoup for non-glibc systems | ||
| 24 | # | ||
| 25 | COMPATIBLE_HOST:libc-musl = 'null' | ||
diff --git a/meta/recipes-extended/libpipeline/libpipeline_1.5.8.bb b/meta/recipes-extended/libpipeline/libpipeline_1.5.8.bb deleted file mode 100644 index 1f6de1d925..0000000000 --- a/meta/recipes-extended/libpipeline/libpipeline_1.5.8.bb +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | SUMMARY = "pipeline manipulation library" | ||
| 2 | DESCRIPTION = "This is a C library for setting up and running pipelines of processes, \ | ||
| 3 | without needing to involve shell command-line parsing which is often \ | ||
| 4 | error-prone and insecure." | ||
| 5 | HOMEPAGE = "http://libpipeline.nongnu.org/" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" | ||
| 8 | |||
| 9 | SRC_URI = "${SAVANNAH_GNU_MIRROR}/libpipeline/libpipeline-${PV}.tar.gz" | ||
| 10 | SRC_URI[sha256sum] = "1b1203ca152ccd63983c3f2112f7fe6fa5afd453218ede5153d1b31e11bb8405" | ||
| 11 | |||
| 12 | inherit pkgconfig autotools | ||
diff --git a/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch b/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch deleted file mode 100644 index d6e983dec8..0000000000 --- a/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From da99bf09e83469612e2c821696025a4e591bb95c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Thu, 28 Oct 2021 22:28:45 -0700 | ||
| 4 | Subject: [PATCH] utils: Conside musl when wrapping qsort_r | ||
| 5 | |||
| 6 | musl now has implemented qsort_r, the signature however matches glibc | ||
| 7 | and not BSD, current check makes it such that it falls into BSD case | ||
| 8 | when building for musl, which clearly is wrong, therefore instead of | ||
| 9 | just checking for glibc check for linux to decide which qsort_r | ||
| 10 | signature to use. This covers both glibc and musl | ||
| 11 | |||
| 12 | Upstream-Status: Pending | ||
| 13 | |||
| 14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 15 | --- | ||
| 16 | src/util.c | 2 +- | ||
| 17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/src/util.c b/src/util.c | ||
| 20 | index 72426e09..8f29bc5a 100644 | ||
| 21 | --- a/src/util.c | ||
| 22 | +++ b/src/util.c | ||
| 23 | @@ -159,7 +159,7 @@ solv_setcloexec(int fd, int state) | ||
| 24 | |||
| 25 | see also: http://sources.redhat.com/ml/libc-alpha/2008-12/msg00003.html | ||
| 26 | */ | ||
| 27 | -#if (defined(__GLIBC__) || defined(__NEWLIB__)) && (defined(HAVE_QSORT_R) || defined(HAVE___QSORT_R)) | ||
| 28 | +#if (defined(__linux__) || defined(__NEWLIB__)) && (defined(HAVE_QSORT_R) || defined(HAVE___QSORT_R)) | ||
| 29 | |||
| 30 | void | ||
| 31 | solv_sort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *compard) | ||
diff --git a/meta/recipes-extended/libsolv/libsolv_0.7.35.bb b/meta/recipes-extended/libsolv/libsolv_0.7.35.bb deleted file mode 100644 index ec74308bb5..0000000000 --- a/meta/recipes-extended/libsolv/libsolv_0.7.35.bb +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | SUMMARY = "Library for solving packages and reading repositories" | ||
| 2 | DESCRIPTION = "This is libsolv, a free package dependency solver using a satisfiability algorithm for solving packages and reading repositories" | ||
| 3 | HOMEPAGE = "https://github.com/openSUSE/libsolv" | ||
| 4 | BUGTRACKER = "https://github.com/openSUSE/libsolv/issues" | ||
| 5 | SECTION = "devel" | ||
| 6 | LICENSE = "BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8" | ||
| 8 | |||
| 9 | DEPENDS = "expat zlib zstd" | ||
| 10 | |||
| 11 | SRC_URI = "git://github.com/openSUSE/libsolv.git;branch=master;protocol=https;tag=${PV} \ | ||
| 12 | file://0001-utils-Conside-musl-when-wrapping-qsort_r.patch \ | ||
| 13 | " | ||
| 14 | |||
| 15 | SRCREV = "fb4b4340d46108cb365113e432642d6024886c7a" | ||
| 16 | |||
| 17 | UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)" | ||
| 18 | |||
| 19 | inherit cmake | ||
| 20 | |||
| 21 | PACKAGECONFIG ??= "${@bb.utils.contains('PACKAGE_CLASSES','package_rpm','rpm','',d)}" | ||
| 22 | PACKAGECONFIG[rpm] = "-DENABLE_RPMMD=ON -DENABLE_RPMDB=ON,,rpm" | ||
| 23 | |||
| 24 | EXTRA_OECMAKE = "-DMULTI_SEMANTICS=ON -DENABLE_COMPLEX_DEPS=ON -DENABLE_ZSTD_COMPRESSION=ON -DENABLE_STATIC=ON" | ||
| 25 | |||
| 26 | PACKAGES =+ "${PN}-tools ${PN}ext" | ||
| 27 | |||
| 28 | FILES:${PN}-tools = "${bindir}/*" | ||
| 29 | FILES:${PN}ext = "${libdir}/${PN}ext.so.*" | ||
| 30 | |||
| 31 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc/0001-Add-conditional-version-script-support.patch b/meta/recipes-extended/libtirpc/libtirpc/0001-Add-conditional-version-script-support.patch deleted file mode 100644 index 2764f65284..0000000000 --- a/meta/recipes-extended/libtirpc/libtirpc/0001-Add-conditional-version-script-support.patch +++ /dev/null | |||
| @@ -1,810 +0,0 @@ | |||
| 1 | From 8ae9a335d56fc4aba8454159b326d809efca597f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 11 Aug 2025 21:13:59 -0700 | ||
| 4 | Subject: [PATCH] Add conditional version script support | ||
| 5 | |||
| 6 | This patch adds conditional symbol versioning to libtirpc, allowing | ||
| 7 | GSS-API, DES crypto, and RPC database symbols to be conditionally | ||
| 8 | included in the version script based on build configuration. | ||
| 9 | |||
| 10 | LLD is strict about undefined symbols referenced in a version script. | ||
| 11 | Some libtirpc symbols (rpcsec_gss, old DES helpers, rpc database | ||
| 12 | helpers) are optional and may not be built depending on configure | ||
| 13 | options or missing deps. GNU ld tolerated this; LLD errors out. | ||
| 14 | |||
| 15 | This change keeps the canonical symbol map in src/libtirpc.map, but | ||
| 16 | adds a make-time rule to generate a filtered copy | ||
| 17 | where names from disabled features are deleted. The lib is then linked | ||
| 18 | against the generated linker map file. | ||
| 19 | |||
| 20 | Fixes linking errors when these features are not available. | ||
| 21 | |||
| 22 | Upstream-Status: Submitted [https://lore.kernel.org/linux-nfs/20250812180809.2182301-1-raj.khem@gmail.com/T/#u] | ||
| 23 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 24 | --- | ||
| 25 | configure.ac | 50 +++++++++++++++++++++++++++ | ||
| 26 | src/Makefile.am | 21 +++++++++-- | ||
| 27 | src/{libtirpc.map => libtirpc.map.in} | 48 +++++-------------------- | ||
| 28 | 3 files changed, 77 insertions(+), 42 deletions(-) | ||
| 29 | rename src/{libtirpc.map => libtirpc.map.in} (84%) | ||
| 30 | |||
| 31 | --- a/configure.ac | ||
| 32 | +++ b/configure.ac | ||
| 33 | @@ -77,6 +77,19 @@ if test "x$enable_ipv6" != xno; then | ||
| 34 | AC_DEFINE(INET6, 1, [Define to 1 if IPv6 is available]) | ||
| 35 | fi | ||
| 36 | |||
| 37 | +# RPC database support | ||
| 38 | +AC_ARG_ENABLE(rpcdb, | ||
| 39 | + [AS_HELP_STRING([--enable-rpcdb], [Enable RPC Database support @<:@default=no@:>@])], | ||
| 40 | + [], [enable_rpcdb=no]) | ||
| 41 | +AM_CONDITIONAL(RPCDB, test "x$enable_rpcdb" = xyes) | ||
| 42 | +if test "x$enable_rpcdb" != "xno"; then | ||
| 43 | + AC_CHECK_FUNCS([getrpcent getrpcbyname getrpcbynumber], [have_rpcdb=yes]) | ||
| 44 | + | ||
| 45 | + if test "x$have_rpcdb" = "xyes"; then | ||
| 46 | + AC_DEFINE([RPCDB], [1], [Define if RPC database support is available]) | ||
| 47 | + fi | ||
| 48 | +fi | ||
| 49 | + | ||
| 50 | AC_ARG_ENABLE(symvers, | ||
| 51 | [AS_HELP_STRING([--disable-symvers],[Disable symbol versioning @<:@default=no@:>@])], | ||
| 52 | [],[enable_symvers=maybe]) | ||
| 53 | @@ -97,6 +110,33 @@ fi | ||
| 54 | |||
| 55 | AM_CONDITIONAL(SYMVERS, test "x$enable_symvers" = xyes) | ||
| 56 | |||
| 57 | +# Generate symbol lists for version script | ||
| 58 | +if test "x$enable_gssapi" = "xyes"; then | ||
| 59 | + GSS_SYMBOLS="_svcauth_gss; authgss_create; authgss_create_default; authgss_free_private_data; authgss_get_private_data; authgss_service; gss_log_debug; gss_log_hexdump; gss_log_status; rpc_gss_get_error; rpc_gss_get_mech_info; rpc_gss_get_mechanisms; rpc_gss_get_principal_name; rpc_gss_get_versions; rpc_gss_qop_to_num; rpc_gss_seccreate; rpc_gss_set_callback; rpc_gss_set_defaults; rpc_gss_set_svc_name; rpc_gss_svc_max_data_length;" | ||
| 60 | + | ||
| 61 | + GSS_SYMBOLS_031="svcauth_gss_get_principal; svcauth_gss_set_svc_name;" | ||
| 62 | +else | ||
| 63 | + GSS_SYMBOLS="" | ||
| 64 | + GSS_SYMBOLS_031="" | ||
| 65 | +fi | ||
| 66 | + | ||
| 67 | +if test "x$enable_authdes" = "xyes"; then | ||
| 68 | + DES_SYMBOLS="cbc_crypt; ecb_crypt; xdr_authdes_cred; xdr_authdes_verf; xdr_rpc_gss_cred; xdr_rpc_gss_data; xdr_rpc_gss_init_args; xdr_rpc_gss_init_res;" | ||
| 69 | +else | ||
| 70 | + DES_SYMBOLS="" | ||
| 71 | +fi | ||
| 72 | + | ||
| 73 | +if test "x$enable_rpcdb" = "xyes"; then | ||
| 74 | + RPCDB_SYMBOLS="endrpcent; getrpcent; getrpcbynumber; getrpcbyname; setrpcent;" | ||
| 75 | +else | ||
| 76 | + RPCDB_SYMBOLS="" | ||
| 77 | +fi | ||
| 78 | + | ||
| 79 | +AC_SUBST([GSS_SYMBOLS]) | ||
| 80 | +AC_SUBST([GSS_SYMBOLS_031]) | ||
| 81 | +AC_SUBST([DES_SYMBOLS]) | ||
| 82 | +AC_SUBST([RPCDB_SYMBOLS]) | ||
| 83 | + | ||
| 84 | AC_CANONICAL_BUILD | ||
| 85 | # Check for which host we are on and setup a few things | ||
| 86 | # specifically based on the host | ||
| 87 | @@ -167,7 +207,16 @@ AC_CHECK_FUNCS([getpeereid getrpcbyname | ||
| 88 | AC_CHECK_TYPES(struct rpcent,,, [ | ||
| 89 | #include <netdb.h>]) | ||
| 90 | AC_CONFIG_FILES([Makefile src/Makefile man/Makefile doc/Makefile]) | ||
| 91 | +AC_CONFIG_FILES([src/libtirpc.map]) | ||
| 92 | AC_CONFIG_FILES([libtirpc.pc]) | ||
| 93 | AC_OUTPUT | ||
| 94 | |||
| 95 | +# Configuration summary | ||
| 96 | +AC_MSG_NOTICE([ | ||
| 97 | +libtirpc configuration summary: | ||
| 98 | + GSS-API support: $enable_gssapi | ||
| 99 | + DES crypto support: $enable_authdes | ||
| 100 | + RPC database support: $enable_rpcdb | ||
| 101 | + Symbol versioning: $enable_symvers | ||
| 102 | +]) | ||
| 103 | |||
| 104 | --- a/src/Makefile.am | ||
| 105 | +++ b/src/Makefile.am | ||
| 106 | @@ -6,6 +6,9 @@ | ||
| 107 | ## anything like that. | ||
| 108 | |||
| 109 | noinst_HEADERS = rpc_com.h debug.h | ||
| 110 | +EXTRA_DIST = libtirpc.map.in | ||
| 111 | +# Generated files | ||
| 112 | +BUILT_SOURCES = libtirpc.map | ||
| 113 | |||
| 114 | AM_CPPFLAGS = -I$(top_srcdir)/tirpc -include config.h -DPORTMAP -DINET6 \ | ||
| 115 | -D_GNU_SOURCE -Wall -pipe | ||
| 116 | @@ -15,10 +18,19 @@ lib_LTLIBRARIES = libtirpc.la | ||
| 117 | libtirpc_la_LDFLAGS = @LDFLAG_NOUNDEFINED@ -no-undefined @PTHREAD_LIBS@ | ||
| 118 | libtirpc_la_LDFLAGS += -version-info @LT_VERSION_INFO@ | ||
| 119 | |||
| 120 | +# Generate version script from template | ||
| 121 | +libtirpc.map: $(srcdir)/libtirpc.map.in | ||
| 122 | + $(AM_V_GEN)$(SED) \ | ||
| 123 | + -e 's|@GSS_SYMBOLS@|$(GSS_SYMBOLS)|g' \ | ||
| 124 | + -e 's|@GSS_SYMBOLS_031@|$(GSS_SYMBOLS_031)|g' \ | ||
| 125 | + -e 's|@DES_SYMBOLS@|$(DES_SYMBOLS)|g' \ | ||
| 126 | + -e 's|@RPCDB_SYMBOLS@|$(RPCDB_SYMBOLS)|g' \ | ||
| 127 | + < $(srcdir)/libtirpc.map.in > $@ || rm -f $@ | ||
| 128 | + | ||
| 129 | libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c \ | ||
| 130 | binddynport.c bindresvport.c \ | ||
| 131 | clnt_bcast.c clnt_dg.c clnt_generic.c clnt_perror.c clnt_raw.c clnt_simple.c \ | ||
| 132 | - clnt_vc.c rpc_dtablesize.c getnetconfig.c getnetpath.c getrpcent.c \ | ||
| 133 | + clnt_vc.c rpc_dtablesize.c getnetconfig.c getnetpath.c \ | ||
| 134 | getrpcport.c mt_misc.c pmap_clnt.c pmap_getmaps.c pmap_getport.c \ | ||
| 135 | pmap_prot.c pmap_prot2.c pmap_rmt.c rpc_prot.c rpc_commondata.c \ | ||
| 136 | rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ | ||
| 137 | @@ -34,19 +46,23 @@ endif | ||
| 138 | libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c xdr_sizeof.c | ||
| 139 | |||
| 140 | if SYMVERS | ||
| 141 | - libtirpc_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libtirpc.map | ||
| 142 | + libtirpc_la_LDFLAGS += -Wl,--version-script=$(builddir)/libtirpc.map | ||
| 143 | endif | ||
| 144 | |||
| 145 | ## Secure-RPC | ||
| 146 | if GSS | ||
| 147 | - libtirpc_la_SOURCES += auth_gss.c authgss_prot.c svc_auth_gss.c \ | ||
| 148 | - rpc_gss_utils.c | ||
| 149 | - libtirpc_la_LIBADD = $(GSSAPI_LIBS) | ||
| 150 | - libtirpc_la_CFLAGS = -DHAVE_RPCSEC_GSS $(GSSAPI_CFLAGS) | ||
| 151 | +libtirpc_la_SOURCES += auth_gss.c authgss_prot.c svc_auth_gss.c rpc_gss_utils.c | ||
| 152 | +libtirpc_la_LIBADD = $(GSSAPI_LIBS) | ||
| 153 | +libtirpc_la_CFLAGS = -DHAVE_RPCSEC_GSS $(GSSAPI_CFLAGS) | ||
| 154 | +endif | ||
| 155 | + | ||
| 156 | +# Conditionally add RPC database sources | ||
| 157 | +if RPCDB | ||
| 158 | +libtirpc_la_SOURCES += getrpcent.c | ||
| 159 | endif | ||
| 160 | |||
| 161 | libtirpc_la_SOURCES += key_call.c key_prot_xdr.c getpublickey.c | ||
| 162 | libtirpc_la_SOURCES += netname.c netnamer.c rpcdname.c rtime.c | ||
| 163 | |||
| 164 | -CLEANFILES = cscope.* *~ | ||
| 165 | +CLEANFILES = cscope.* libtirpc.map *~ | ||
| 166 | DISTCLEANFILES = Makefile.in | ||
| 167 | --- a/src/libtirpc.map | ||
| 168 | +++ /dev/null | ||
| 169 | @@ -1,335 +0,0 @@ | ||
| 170 | -TIRPC_0.3.0 { | ||
| 171 | - global: | ||
| 172 | - # __* | ||
| 173 | - __rpc_createerr; | ||
| 174 | - __rpc_dtbsize; | ||
| 175 | - __rpc_endconf; | ||
| 176 | - __rpc_fd2sockinfo; | ||
| 177 | - __rpc_fixup_addr; | ||
| 178 | - __rpc_get_a_size; | ||
| 179 | - __rpc_get_local_uid; | ||
| 180 | - __rpc_get_t_size; | ||
| 181 | - __rpc_getconf; | ||
| 182 | - __rpc_getconfip; | ||
| 183 | - __rpc_nconf2fd; | ||
| 184 | - __rpc_nconf2fd_flags; | ||
| 185 | - __rpc_nconf2sockinfo; | ||
| 186 | - __rpc_rawcombuf; | ||
| 187 | - __rpc_seman2socktype; | ||
| 188 | - __rpc_setconf; | ||
| 189 | - __rpc_sockinfo2netid; | ||
| 190 | - __rpc_sockisbound; | ||
| 191 | - __rpc_socktype2seman; | ||
| 192 | - __rpc_taddr2uaddr_af; | ||
| 193 | - __rpc_uaddr2taddr_af; | ||
| 194 | - __rpcgettp; | ||
| 195 | - | ||
| 196 | - # _* | ||
| 197 | - _authenticate; | ||
| 198 | - _get_next_token; | ||
| 199 | - _gss_authenticate; | ||
| 200 | - _null_auth; | ||
| 201 | - _rpc_dtablesize; | ||
| 202 | - _seterr_reply; | ||
| 203 | - _svcauth_none; | ||
| 204 | - _svcauth_short; | ||
| 205 | - _svcauth_unix; | ||
| 206 | - _svcauth_gss; | ||
| 207 | - | ||
| 208 | - # a* | ||
| 209 | - authdes_create; | ||
| 210 | - authdes_seccreate; | ||
| 211 | - authgss_create; | ||
| 212 | - authgss_create_default; | ||
| 213 | - authgss_free_private_data; | ||
| 214 | - authgss_get_private_data; | ||
| 215 | - authgss_service; | ||
| 216 | - authnone_create; | ||
| 217 | - authunix_create; | ||
| 218 | - authunix_create_default; | ||
| 219 | - | ||
| 220 | - # b* | ||
| 221 | - bindresvport; | ||
| 222 | - bindresvport_sa; | ||
| 223 | - | ||
| 224 | - # c* | ||
| 225 | - callrpc; | ||
| 226 | - cbc_crypt; | ||
| 227 | - clnt_broadcast; | ||
| 228 | - clnt_create; | ||
| 229 | - clnt_create_timed; | ||
| 230 | - clnt_create_vers; | ||
| 231 | - clnt_create_vers_timed; | ||
| 232 | - clnt_dg_create; | ||
| 233 | - clnt_pcreateerror; | ||
| 234 | - clnt_perrno; | ||
| 235 | - clnt_perror; | ||
| 236 | - clnt_raw_create; | ||
| 237 | - clnt_spcreateerror; | ||
| 238 | - clnt_sperrno; | ||
| 239 | - clnt_sperror; | ||
| 240 | - clnt_tli_create; | ||
| 241 | - clnt_tp_create; | ||
| 242 | - clnt_tp_create_timed; | ||
| 243 | - clnt_vc_create; | ||
| 244 | - clntraw_create; | ||
| 245 | - clnttcp_create; | ||
| 246 | - clntudp_bufcreate; | ||
| 247 | - clntudp_create; | ||
| 248 | - clntunix_create; | ||
| 249 | - | ||
| 250 | - # e* | ||
| 251 | - ecb_crypt; | ||
| 252 | - endnetconfig; | ||
| 253 | - endnetpath; | ||
| 254 | - endrpcent; | ||
| 255 | - | ||
| 256 | - # f* | ||
| 257 | - freenetconfigent; | ||
| 258 | - | ||
| 259 | - # g* | ||
| 260 | - get_myaddress; | ||
| 261 | - getnetconfig; | ||
| 262 | - getnetconfigent; | ||
| 263 | - getnetpath; | ||
| 264 | - getrpcent; | ||
| 265 | - getrpcbynumber; | ||
| 266 | - getrpcbyname; | ||
| 267 | - getrpcport; | ||
| 268 | - gss_log_debug; | ||
| 269 | - gss_log_hexdump; | ||
| 270 | - gss_log_status; | ||
| 271 | - | ||
| 272 | - # n* | ||
| 273 | - nc_perror; | ||
| 274 | - nc_sperror; | ||
| 275 | - | ||
| 276 | - # p* | ||
| 277 | - pmap_getmaps; | ||
| 278 | - pmap_getport; | ||
| 279 | - pmap_rmtcall; | ||
| 280 | - pmap_set; | ||
| 281 | - pmap_unset; | ||
| 282 | - | ||
| 283 | - # r* | ||
| 284 | - registerrpc; | ||
| 285 | - rpc_broadcast; | ||
| 286 | - rpc_broadcast_exp; | ||
| 287 | - rpc_call; | ||
| 288 | - rpc_control; | ||
| 289 | - rpc_createerr; | ||
| 290 | - rpc_gss_get_error; | ||
| 291 | - rpc_gss_get_mech_info; | ||
| 292 | - rpc_gss_get_mechanisms; | ||
| 293 | - rpc_gss_get_principal_name; | ||
| 294 | - rpc_gss_get_versions; | ||
| 295 | - rpc_gss_getcred; | ||
| 296 | - rpc_gss_is_installed; | ||
| 297 | - rpc_gss_max_data_length; | ||
| 298 | - rpc_gss_mech_to_oid; | ||
| 299 | - rpc_gss_qop_to_num; | ||
| 300 | - rpc_gss_seccreate; | ||
| 301 | - rpc_gss_set_callback; | ||
| 302 | - rpc_gss_set_defaults; | ||
| 303 | - rpc_gss_set_svc_name; | ||
| 304 | - rpc_gss_svc_max_data_length; | ||
| 305 | - rpc_nullproc; | ||
| 306 | - rpc_reg; | ||
| 307 | - rpcb_getaddr; | ||
| 308 | - rpcb_getmaps; | ||
| 309 | - rpcb_gettime; | ||
| 310 | - rpcb_rmtcall; | ||
| 311 | - rpcb_set; | ||
| 312 | - rpcb_taddr2uaddr; | ||
| 313 | - rpcb_uaddr2taddr; | ||
| 314 | - rpcb_unset; | ||
| 315 | - | ||
| 316 | - # s* | ||
| 317 | - setnetconfig; | ||
| 318 | - setnetpath; | ||
| 319 | - setrpcent; | ||
| 320 | - svc_auth_reg; | ||
| 321 | - svc_create; | ||
| 322 | - svc_dg_create; | ||
| 323 | - svc_dg_enablecache; | ||
| 324 | - svc_exit; | ||
| 325 | - svc_fd_create; | ||
| 326 | - svc_fdset; | ||
| 327 | - svc_getreq; | ||
| 328 | - svc_getreq_common; | ||
| 329 | - svc_getreq_poll; | ||
| 330 | - svc_getreqset; | ||
| 331 | - svc_maxfd; | ||
| 332 | - svc_raw_create; | ||
| 333 | - svc_reg; | ||
| 334 | - svc_register; | ||
| 335 | - svc_run; | ||
| 336 | - svc_sendreply; | ||
| 337 | - svc_tli_create; | ||
| 338 | - svc_tp_create; | ||
| 339 | - svc_unreg; | ||
| 340 | - svc_unregister; | ||
| 341 | - svc_vc_create; | ||
| 342 | - svcerr_auth; | ||
| 343 | - svcerr_decode; | ||
| 344 | - svcerr_noproc; | ||
| 345 | - svcerr_noprog; | ||
| 346 | - svcerr_progvers; | ||
| 347 | - svcerr_systemerr; | ||
| 348 | - svcerr_weakauth; | ||
| 349 | - svcfd_create; | ||
| 350 | - svcraw_create; | ||
| 351 | - svctcp_create; | ||
| 352 | - svcudp_bufcreate; | ||
| 353 | - svcudp_create; | ||
| 354 | - svcunix_create; | ||
| 355 | - svcunixfd_create; | ||
| 356 | - | ||
| 357 | - # t* | ||
| 358 | - taddr2uaddr; | ||
| 359 | - | ||
| 360 | - # u* | ||
| 361 | - uaddr2taddr; | ||
| 362 | - | ||
| 363 | - # x* | ||
| 364 | - xdr_accepted_reply; | ||
| 365 | - xdr_array; | ||
| 366 | - xdr_authdes_cred; | ||
| 367 | - xdr_authdes_verf; | ||
| 368 | - xdr_authunix_parms; | ||
| 369 | - xdr_bool; | ||
| 370 | - xdr_bytes; | ||
| 371 | - xdr_callhdr; xdr_callmsg; | ||
| 372 | - xdr_char; | ||
| 373 | - xdr_des_block; | ||
| 374 | - xdr_double; | ||
| 375 | - xdr_enum; | ||
| 376 | - xdr_float; | ||
| 377 | - xdr_free; | ||
| 378 | - xdr_hyper; | ||
| 379 | - xdr_int16_t; | ||
| 380 | - xdr_int32_t; | ||
| 381 | - xdr_int64_t; | ||
| 382 | - xdr_int8_t; | ||
| 383 | - xdr_int; | ||
| 384 | - xdr_long; | ||
| 385 | - xdr_longlong_t; | ||
| 386 | - xdr_netbuf; | ||
| 387 | - xdr_netobj; | ||
| 388 | - xdr_opaque; | ||
| 389 | - xdr_opaque_auth; | ||
| 390 | - xdr_pmap; | ||
| 391 | - xdr_pmaplist; | ||
| 392 | - xdr_pmaplist_ptr; | ||
| 393 | - xdr_pointer; | ||
| 394 | - xdr_quad_t; | ||
| 395 | - xdr_reference; | ||
| 396 | - xdr_rejected_reply; | ||
| 397 | - xdr_replymsg; | ||
| 398 | - xdr_rmtcall_args; | ||
| 399 | - xdr_rmtcallres; | ||
| 400 | - xdr_rpc_gss_cred; | ||
| 401 | - xdr_rpc_gss_data; | ||
| 402 | - xdr_rpc_gss_init_args; | ||
| 403 | - xdr_rpc_gss_init_res; | ||
| 404 | - xdr_rpcb; | ||
| 405 | - xdr_rpcb_entry; | ||
| 406 | - xdr_rpcb_entry_list_ptr; | ||
| 407 | - xdr_rpcb_rmtcallargs; | ||
| 408 | - xdr_rpcb_rmtcallres; | ||
| 409 | - xdr_rpcb_stat; | ||
| 410 | - xdr_rpcb_stat_byvers; | ||
| 411 | - xdr_rpcblist; | ||
| 412 | - xdr_rpcblist_ptr; | ||
| 413 | - xdr_rpcbs_addrlist; | ||
| 414 | - xdr_rpcbs_addrlist_ptr; | ||
| 415 | - xdr_rpcbs_proc; | ||
| 416 | - xdr_rpcbs_rmtcalllist; | ||
| 417 | - xdr_rpcbs_rmtcalllist_ptr; | ||
| 418 | - xdr_short; | ||
| 419 | - xdr_string; | ||
| 420 | - xdr_u_char; | ||
| 421 | - xdr_u_hyper; | ||
| 422 | - xdr_u_int16_t; | ||
| 423 | - xdr_u_int32_t; | ||
| 424 | - xdr_u_int64_t; | ||
| 425 | - xdr_u_int8_t; | ||
| 426 | - xdr_u_int; | ||
| 427 | - xdr_u_long; | ||
| 428 | - xdr_u_longlong_t; | ||
| 429 | - xdr_u_quad_t; | ||
| 430 | - xdr_u_short; | ||
| 431 | - xdr_uint16_t; | ||
| 432 | - xdr_uint32_t; | ||
| 433 | - xdr_uint64_t; | ||
| 434 | - xdr_uint8_t; | ||
| 435 | - xdr_union; | ||
| 436 | - xdr_vector; | ||
| 437 | - xdr_void; | ||
| 438 | - xdr_wrapstring; | ||
| 439 | - xdrmem_create; | ||
| 440 | - xdrrec_create; | ||
| 441 | - xdrrec_endofrecord; | ||
| 442 | - xdrrec_eof; | ||
| 443 | - xdrrec_skiprecord; | ||
| 444 | - xdrstdio_create; | ||
| 445 | - xprt_register; | ||
| 446 | - xprt_unregister; | ||
| 447 | - | ||
| 448 | - local: | ||
| 449 | - *; | ||
| 450 | -}; | ||
| 451 | - | ||
| 452 | -TIRPC_0.3.1 { | ||
| 453 | - svcauth_gss_get_principal; | ||
| 454 | - svcauth_gss_set_svc_name; | ||
| 455 | -} TIRPC_0.3.0; | ||
| 456 | - | ||
| 457 | -TIRPC_0.3.2 { | ||
| 458 | - getnetname; | ||
| 459 | - getpublicandprivatekey; | ||
| 460 | - getpublickey; | ||
| 461 | - host2netname; | ||
| 462 | - key_call_destroy; | ||
| 463 | - key_decryptsession; | ||
| 464 | - key_decryptsession_pk; | ||
| 465 | - key_encryptsession; | ||
| 466 | - key_encryptsession_pk; | ||
| 467 | - key_gendes; | ||
| 468 | - key_get_conv; | ||
| 469 | - key_setsecret; | ||
| 470 | - key_secretkey_is_set; | ||
| 471 | - key_setnet; | ||
| 472 | - netname2host; | ||
| 473 | - netname2user; | ||
| 474 | - rtime; | ||
| 475 | - user2netname; | ||
| 476 | - xdr_cryptkeyarg; | ||
| 477 | - xdr_cryptkeyarg2; | ||
| 478 | - xdr_cryptkeyres; | ||
| 479 | - xdr_getcredres; | ||
| 480 | - xdr_key_netstarg; | ||
| 481 | - xdr_key_netstres; | ||
| 482 | - xdr_keybuf; | ||
| 483 | - xdr_keystatus; | ||
| 484 | - xdr_netnamestr; | ||
| 485 | - xdr_unixcred; | ||
| 486 | -} TIRPC_0.3.1; | ||
| 487 | - | ||
| 488 | -TIRPC_0.3.3 { | ||
| 489 | - __getpublickey_LOCAL; | ||
| 490 | - __key_decryptsession_pk_LOCAL; | ||
| 491 | - __key_encryptsession_pk_LOCAL; | ||
| 492 | - __key_gendes_LOCAL; | ||
| 493 | - xdr_sizeof; | ||
| 494 | - authdes_pk_create; | ||
| 495 | - svc_pollfd; | ||
| 496 | - svc_max_pollfd; | ||
| 497 | -} TIRPC_0.3.2; | ||
| 498 | - | ||
| 499 | -TIRPC_PRIVATE { | ||
| 500 | - global: | ||
| 501 | - __libc_clntudp_bufcreate; | ||
| 502 | - # private, but used by rpcbind: | ||
| 503 | - __svc_clean_idle; svc_auth_none; libtirpc_set_debug; | ||
| 504 | -}; | ||
| 505 | --- /dev/null | ||
| 506 | +++ b/src/libtirpc.map.in | ||
| 507 | @@ -0,0 +1,303 @@ | ||
| 508 | +TIRPC_0.3.0 { | ||
| 509 | + global: | ||
| 510 | + # __* | ||
| 511 | + __rpc_createerr; | ||
| 512 | + __rpc_dtbsize; | ||
| 513 | + __rpc_endconf; | ||
| 514 | + __rpc_fd2sockinfo; | ||
| 515 | + __rpc_fixup_addr; | ||
| 516 | + __rpc_get_a_size; | ||
| 517 | + __rpc_get_local_uid; | ||
| 518 | + __rpc_get_t_size; | ||
| 519 | + __rpc_getconf; | ||
| 520 | + __rpc_getconfip; | ||
| 521 | + __rpc_nconf2fd; | ||
| 522 | + __rpc_nconf2fd_flags; | ||
| 523 | + __rpc_nconf2sockinfo; | ||
| 524 | + __rpc_rawcombuf; | ||
| 525 | + __rpc_seman2socktype; | ||
| 526 | + __rpc_setconf; | ||
| 527 | + __rpc_sockinfo2netid; | ||
| 528 | + __rpc_sockisbound; | ||
| 529 | + __rpc_socktype2seman; | ||
| 530 | + __rpc_taddr2uaddr_af; | ||
| 531 | + __rpc_uaddr2taddr_af; | ||
| 532 | + __rpcgettp; | ||
| 533 | + | ||
| 534 | + # _* | ||
| 535 | + _authenticate; | ||
| 536 | + _get_next_token; | ||
| 537 | + _gss_authenticate; | ||
| 538 | + _null_auth; | ||
| 539 | + _rpc_dtablesize; | ||
| 540 | + _seterr_reply; | ||
| 541 | + _svcauth_none; | ||
| 542 | + _svcauth_short; | ||
| 543 | + _svcauth_unix; | ||
| 544 | + | ||
| 545 | + # a* | ||
| 546 | + authdes_create; | ||
| 547 | + authdes_seccreate; | ||
| 548 | + authnone_create; | ||
| 549 | + authunix_create; | ||
| 550 | + authunix_create_default; | ||
| 551 | + | ||
| 552 | + # b* | ||
| 553 | + bindresvport; | ||
| 554 | + bindresvport_sa; | ||
| 555 | + | ||
| 556 | + # c* | ||
| 557 | + callrpc; | ||
| 558 | + clnt_broadcast; | ||
| 559 | + clnt_create; | ||
| 560 | + clnt_create_timed; | ||
| 561 | + clnt_create_vers; | ||
| 562 | + clnt_create_vers_timed; | ||
| 563 | + clnt_dg_create; | ||
| 564 | + clnt_pcreateerror; | ||
| 565 | + clnt_perrno; | ||
| 566 | + clnt_perror; | ||
| 567 | + clnt_raw_create; | ||
| 568 | + clnt_spcreateerror; | ||
| 569 | + clnt_sperrno; | ||
| 570 | + clnt_sperror; | ||
| 571 | + clnt_tli_create; | ||
| 572 | + clnt_tp_create; | ||
| 573 | + clnt_tp_create_timed; | ||
| 574 | + clnt_vc_create; | ||
| 575 | + clntraw_create; | ||
| 576 | + clnttcp_create; | ||
| 577 | + clntudp_bufcreate; | ||
| 578 | + clntudp_create; | ||
| 579 | + clntunix_create; | ||
| 580 | + | ||
| 581 | + # e* | ||
| 582 | + endnetconfig; | ||
| 583 | + endnetpath; | ||
| 584 | + | ||
| 585 | + # f* | ||
| 586 | + freenetconfigent; | ||
| 587 | + | ||
| 588 | + # g* | ||
| 589 | + get_myaddress; | ||
| 590 | + getnetconfig; | ||
| 591 | + getnetconfigent; | ||
| 592 | + getnetpath; | ||
| 593 | + getrpcport; | ||
| 594 | + | ||
| 595 | + # n* | ||
| 596 | + nc_perror; | ||
| 597 | + nc_sperror; | ||
| 598 | + | ||
| 599 | + # p* | ||
| 600 | + pmap_getmaps; | ||
| 601 | + pmap_getport; | ||
| 602 | + pmap_rmtcall; | ||
| 603 | + pmap_set; | ||
| 604 | + pmap_unset; | ||
| 605 | + | ||
| 606 | + # r* | ||
| 607 | + registerrpc; | ||
| 608 | + rpc_broadcast; | ||
| 609 | + rpc_broadcast_exp; | ||
| 610 | + rpc_call; | ||
| 611 | + rpc_control; | ||
| 612 | + rpc_createerr; | ||
| 613 | + rpc_nullproc; | ||
| 614 | + rpc_reg; | ||
| 615 | + rpcb_getaddr; | ||
| 616 | + rpcb_getmaps; | ||
| 617 | + rpcb_gettime; | ||
| 618 | + rpcb_rmtcall; | ||
| 619 | + rpcb_set; | ||
| 620 | + rpcb_taddr2uaddr; | ||
| 621 | + rpcb_uaddr2taddr; | ||
| 622 | + rpcb_unset; | ||
| 623 | + | ||
| 624 | + # s* | ||
| 625 | + setnetconfig; | ||
| 626 | + setnetpath; | ||
| 627 | + svc_auth_reg; | ||
| 628 | + svc_create; | ||
| 629 | + svc_dg_create; | ||
| 630 | + svc_dg_enablecache; | ||
| 631 | + svc_exit; | ||
| 632 | + svc_fd_create; | ||
| 633 | + svc_fdset; | ||
| 634 | + svc_getreq; | ||
| 635 | + svc_getreq_common; | ||
| 636 | + svc_getreq_poll; | ||
| 637 | + svc_getreqset; | ||
| 638 | + svc_maxfd; | ||
| 639 | + svc_raw_create; | ||
| 640 | + svc_reg; | ||
| 641 | + svc_register; | ||
| 642 | + svc_run; | ||
| 643 | + svc_sendreply; | ||
| 644 | + svc_tli_create; | ||
| 645 | + svc_tp_create; | ||
| 646 | + svc_unreg; | ||
| 647 | + svc_unregister; | ||
| 648 | + svc_vc_create; | ||
| 649 | + svcerr_auth; | ||
| 650 | + svcerr_decode; | ||
| 651 | + svcerr_noproc; | ||
| 652 | + svcerr_noprog; | ||
| 653 | + svcerr_progvers; | ||
| 654 | + svcerr_systemerr; | ||
| 655 | + svcerr_weakauth; | ||
| 656 | + svcfd_create; | ||
| 657 | + svcraw_create; | ||
| 658 | + svctcp_create; | ||
| 659 | + svcudp_bufcreate; | ||
| 660 | + svcudp_create; | ||
| 661 | + svcunix_create; | ||
| 662 | + svcunixfd_create; | ||
| 663 | + | ||
| 664 | + # t* | ||
| 665 | + taddr2uaddr; | ||
| 666 | + | ||
| 667 | + # u* | ||
| 668 | + uaddr2taddr; | ||
| 669 | + | ||
| 670 | + # x* | ||
| 671 | + xdr_accepted_reply; | ||
| 672 | + xdr_array; | ||
| 673 | + xdr_authunix_parms; | ||
| 674 | + xdr_bool; | ||
| 675 | + xdr_bytes; | ||
| 676 | + xdr_callhdr; xdr_callmsg; | ||
| 677 | + xdr_char; | ||
| 678 | + xdr_des_block; | ||
| 679 | + xdr_double; | ||
| 680 | + xdr_enum; | ||
| 681 | + xdr_float; | ||
| 682 | + xdr_free; | ||
| 683 | + xdr_hyper; | ||
| 684 | + xdr_int16_t; | ||
| 685 | + xdr_int32_t; | ||
| 686 | + xdr_int64_t; | ||
| 687 | + xdr_int8_t; | ||
| 688 | + xdr_int; | ||
| 689 | + xdr_long; | ||
| 690 | + xdr_longlong_t; | ||
| 691 | + xdr_netbuf; | ||
| 692 | + xdr_netobj; | ||
| 693 | + xdr_opaque; | ||
| 694 | + xdr_opaque_auth; | ||
| 695 | + xdr_pmap; | ||
| 696 | + xdr_pmaplist; | ||
| 697 | + xdr_pmaplist_ptr; | ||
| 698 | + xdr_pointer; | ||
| 699 | + xdr_quad_t; | ||
| 700 | + xdr_reference; | ||
| 701 | + xdr_rejected_reply; | ||
| 702 | + xdr_replymsg; | ||
| 703 | + xdr_rmtcall_args; | ||
| 704 | + xdr_rmtcallres; | ||
| 705 | + xdr_rpcb; | ||
| 706 | + xdr_rpcb_entry; | ||
| 707 | + xdr_rpcb_entry_list_ptr; | ||
| 708 | + xdr_rpcb_rmtcallargs; | ||
| 709 | + xdr_rpcb_rmtcallres; | ||
| 710 | + xdr_rpcb_stat; | ||
| 711 | + xdr_rpcb_stat_byvers; | ||
| 712 | + xdr_rpcblist; | ||
| 713 | + xdr_rpcblist_ptr; | ||
| 714 | + xdr_rpcbs_addrlist; | ||
| 715 | + xdr_rpcbs_addrlist_ptr; | ||
| 716 | + xdr_rpcbs_proc; | ||
| 717 | + xdr_rpcbs_rmtcalllist; | ||
| 718 | + xdr_rpcbs_rmtcalllist_ptr; | ||
| 719 | + xdr_short; | ||
| 720 | + xdr_string; | ||
| 721 | + xdr_u_char; | ||
| 722 | + xdr_u_hyper; | ||
| 723 | + xdr_u_int16_t; | ||
| 724 | + xdr_u_int32_t; | ||
| 725 | + xdr_u_int64_t; | ||
| 726 | + xdr_u_int8_t; | ||
| 727 | + xdr_u_int; | ||
| 728 | + xdr_u_long; | ||
| 729 | + xdr_u_longlong_t; | ||
| 730 | + xdr_u_quad_t; | ||
| 731 | + xdr_u_short; | ||
| 732 | + xdr_uint16_t; | ||
| 733 | + xdr_uint32_t; | ||
| 734 | + xdr_uint64_t; | ||
| 735 | + xdr_uint8_t; | ||
| 736 | + xdr_union; | ||
| 737 | + xdr_vector; | ||
| 738 | + xdr_void; | ||
| 739 | + xdr_wrapstring; | ||
| 740 | + xdrmem_create; | ||
| 741 | + xdrrec_create; | ||
| 742 | + xdrrec_endofrecord; | ||
| 743 | + xdrrec_eof; | ||
| 744 | + xdrrec_skiprecord; | ||
| 745 | + xdrstdio_create; | ||
| 746 | + xprt_register; | ||
| 747 | + xprt_unregister; | ||
| 748 | + # GSS-API symbols (conditionally included) | ||
| 749 | +@GSS_SYMBOLS@ | ||
| 750 | + # DES crypto symbols (conditionally included) | ||
| 751 | +@DES_SYMBOLS@ | ||
| 752 | + # RPC database symbols (conditionally included) | ||
| 753 | +@RPCDB_SYMBOLS@ | ||
| 754 | + | ||
| 755 | + local: | ||
| 756 | + *; | ||
| 757 | +}; | ||
| 758 | + | ||
| 759 | +TIRPC_0.3.1 { | ||
| 760 | +# GSS-API symbols (conditionally included) | ||
| 761 | +@GSS_SYMBOLS_031@ | ||
| 762 | +} TIRPC_0.3.0; | ||
| 763 | + | ||
| 764 | +TIRPC_0.3.2 { | ||
| 765 | + getnetname; | ||
| 766 | + getpublicandprivatekey; | ||
| 767 | + getpublickey; | ||
| 768 | + host2netname; | ||
| 769 | + key_decryptsession; | ||
| 770 | + key_decryptsession_pk; | ||
| 771 | + key_encryptsession; | ||
| 772 | + key_encryptsession_pk; | ||
| 773 | + key_gendes; | ||
| 774 | + key_get_conv; | ||
| 775 | + key_setsecret; | ||
| 776 | + key_secretkey_is_set; | ||
| 777 | + key_setnet; | ||
| 778 | + netname2host; | ||
| 779 | + netname2user; | ||
| 780 | + rtime; | ||
| 781 | + user2netname; | ||
| 782 | + xdr_cryptkeyarg; | ||
| 783 | + xdr_cryptkeyarg2; | ||
| 784 | + xdr_cryptkeyres; | ||
| 785 | + xdr_getcredres; | ||
| 786 | + xdr_key_netstarg; | ||
| 787 | + xdr_key_netstres; | ||
| 788 | + xdr_keybuf; | ||
| 789 | + xdr_keystatus; | ||
| 790 | + xdr_netnamestr; | ||
| 791 | + xdr_unixcred; | ||
| 792 | +} TIRPC_0.3.1; | ||
| 793 | + | ||
| 794 | +TIRPC_0.3.3 { | ||
| 795 | + __getpublickey_LOCAL; | ||
| 796 | + __key_decryptsession_pk_LOCAL; | ||
| 797 | + __key_encryptsession_pk_LOCAL; | ||
| 798 | + __key_gendes_LOCAL; | ||
| 799 | + xdr_sizeof; | ||
| 800 | + authdes_pk_create; | ||
| 801 | + svc_pollfd; | ||
| 802 | + svc_max_pollfd; | ||
| 803 | +} TIRPC_0.3.2; | ||
| 804 | + | ||
| 805 | +TIRPC_PRIVATE { | ||
| 806 | + global: | ||
| 807 | + __libc_clntudp_bufcreate; | ||
| 808 | + # private, but used by rpcbind: | ||
| 809 | + __svc_clean_idle; svc_auth_none; libtirpc_set_debug; | ||
| 810 | +}; | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc/0001-Update-declarations-to-allow-compile-with-gcc-15.patch b/meta/recipes-extended/libtirpc/libtirpc/0001-Update-declarations-to-allow-compile-with-gcc-15.patch deleted file mode 100644 index 7bfe7c2924..0000000000 --- a/meta/recipes-extended/libtirpc/libtirpc/0001-Update-declarations-to-allow-compile-with-gcc-15.patch +++ /dev/null | |||
| @@ -1,64 +0,0 @@ | |||
| 1 | From b526c0a90953f47d4cbf7ef01e9ac13e9e76904a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 3 | Date: Thu, 12 Dec 2024 04:16:02 -0500 | ||
| 4 | Subject: [PATCH 1/2] Update declarations to allow compile with gcc-15 | ||
| 5 | |||
| 6 | This patch fixes some of the compile errors with gcc 15-20241117. | ||
| 7 | |||
| 8 | In addition the follow declarations need to be fixed: | ||
| 9 | sed -n 75,77p libtirpc-1.3.6/src/key_call.c | ||
| 10 | cryptkeyres *(*__key_encryptsession_pk_LOCAL)() = 0; | ||
| 11 | cryptkeyres *(*__key_decryptsession_pk_LOCAL)() = 0; | ||
| 12 | des_block *(*__key_gendes_LOCAL)() = 0; | ||
| 13 | |||
| 14 | Upstream-Status: Backport [https://git.linux-nfs.org/?p=steved/libtirpc.git;a=commit;h=d473f1e1f6ba80bfaee4daa058da159305167323] | ||
| 15 | Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 16 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
| 17 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 18 | --- | ||
| 19 | src/auth_none.c | 2 +- | ||
| 20 | src/getpublickey.c | 2 +- | ||
| 21 | src/svc_auth_none.c | 4 ++-- | ||
| 22 | 3 files changed, 4 insertions(+), 4 deletions(-) | ||
| 23 | |||
| 24 | diff --git a/src/auth_none.c b/src/auth_none.c | ||
| 25 | index 0b0bbd1..aca6e71 100644 | ||
| 26 | --- a/src/auth_none.c | ||
| 27 | +++ b/src/auth_none.c | ||
| 28 | @@ -62,7 +62,7 @@ static bool_t authnone_validate (AUTH *, struct opaque_auth *); | ||
| 29 | static bool_t authnone_refresh (AUTH *, void *); | ||
| 30 | static void authnone_destroy (AUTH *); | ||
| 31 | |||
| 32 | -extern bool_t xdr_opaque_auth(); | ||
| 33 | +extern bool_t xdr_opaque_auth(XDR *, struct opaque_auth *); | ||
| 34 | |||
| 35 | static struct auth_ops *authnone_ops(); | ||
| 36 | |||
| 37 | diff --git a/src/getpublickey.c b/src/getpublickey.c | ||
| 38 | index be37a24..4e96c7c 100644 | ||
| 39 | --- a/src/getpublickey.c | ||
| 40 | +++ b/src/getpublickey.c | ||
| 41 | @@ -52,7 +52,7 @@ | ||
| 42 | /* | ||
| 43 | * Hack to let ypserv/rpc.nisd use AUTH_DES. | ||
| 44 | */ | ||
| 45 | -int (*__getpublickey_LOCAL)() = 0; | ||
| 46 | +int (*__getpublickey_LOCAL)(const char *, char *) = 0; | ||
| 47 | |||
| 48 | /* | ||
| 49 | * Get somebody's public key | ||
| 50 | diff --git a/src/svc_auth_none.c b/src/svc_auth_none.c | ||
| 51 | index 887e809..5ca98e9 100644 | ||
| 52 | --- a/src/svc_auth_none.c | ||
| 53 | +++ b/src/svc_auth_none.c | ||
| 54 | @@ -37,8 +37,8 @@ | ||
| 55 | |||
| 56 | #include <rpc/rpc.h> | ||
| 57 | |||
| 58 | -static bool_t svcauth_none_destroy(); | ||
| 59 | -static bool_t svcauth_none_wrap(); | ||
| 60 | +static bool_t svcauth_none_destroy(SVCAUTH *); | ||
| 61 | +static bool_t svcauth_none_wrap(SVCAUTH *, XDR *, bool_t (*)(XDR *, ...), char *); | ||
| 62 | |||
| 63 | struct svc_auth_ops svc_auth_none_ops = { | ||
| 64 | svcauth_none_wrap, | ||
diff --git a/meta/recipes-extended/libtirpc/libtirpc/0002-update-signal-and-key_call-declarations-to-allow-com.patch b/meta/recipes-extended/libtirpc/libtirpc/0002-update-signal-and-key_call-declarations-to-allow-com.patch deleted file mode 100644 index 83e2105a1a..0000000000 --- a/meta/recipes-extended/libtirpc/libtirpc/0002-update-signal-and-key_call-declarations-to-allow-com.patch +++ /dev/null | |||
| @@ -1,60 +0,0 @@ | |||
| 1 | From 55452e6ae71869880f8c85d5dba9aa24d7147d8b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 3 | Date: Thu, 2 Jan 2025 08:46:24 -0500 | ||
| 4 | Subject: [PATCH 2/2] update signal and key_call declarations to allow compile | ||
| 5 | with gcc-15 | ||
| 6 | |||
| 7 | Follow up patch addressing the following declarations: | ||
| 8 | sed -n 75,77p libtirpc-1.3.6/src/key_call.c | ||
| 9 | cryptkeyres *(*__key_encryptsession_pk_LOCAL)() = 0; | ||
| 10 | cryptkeyres *(*__key_decryptsession_pk_LOCAL)() = 0; | ||
| 11 | des_block *(*__key_gendes_LOCAL)() = 0; | ||
| 12 | |||
| 13 | Upstream-Status: Backport [https://git.linux-nfs.org/?p=steved/libtirpc.git;a=commit;h=240ee6c774729c9c24812aa8912f1fcf8996b162] | ||
| 14 | Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 15 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
| 16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 17 | --- | ||
| 18 | src/auth_time.c | 4 ++-- | ||
| 19 | src/key_call.c | 6 +++--- | ||
| 20 | 2 files changed, 5 insertions(+), 5 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/src/auth_time.c b/src/auth_time.c | ||
| 23 | index 936dd76..c21b1df 100644 | ||
| 24 | --- a/src/auth_time.c | ||
| 25 | +++ b/src/auth_time.c | ||
| 26 | @@ -248,7 +248,7 @@ __rpc_get_time_offset(td, srv, thost, uaddr, netid) | ||
| 27 | char ut[64], ipuaddr[64]; | ||
| 28 | endpoint teps[32]; | ||
| 29 | nis_server tsrv; | ||
| 30 | - void (*oldsig)() = NULL; /* old alarm handler */ | ||
| 31 | + void (*oldsig)(int) = NULL; /* old alarm handler */ | ||
| 32 | struct sockaddr_in sin; | ||
| 33 | int s = RPC_ANYSOCK; | ||
| 34 | socklen_t len; | ||
| 35 | @@ -417,7 +417,7 @@ __rpc_get_time_offset(td, srv, thost, uaddr, netid) | ||
| 36 | } else { | ||
| 37 | int res; | ||
| 38 | |||
| 39 | - oldsig = (void (*)())signal(SIGALRM, alarm_hndler); | ||
| 40 | + oldsig = (void (*)(int))signal(SIGALRM, alarm_hndler); | ||
| 41 | saw_alarm = 0; /* global tracking the alarm */ | ||
| 42 | alarm(20); /* only wait 20 seconds */ | ||
| 43 | res = connect(s, (struct sockaddr *)&sin, sizeof(sin)); | ||
| 44 | diff --git a/src/key_call.c b/src/key_call.c | ||
| 45 | index 9f4b1d2..43f990e 100644 | ||
| 46 | --- a/src/key_call.c | ||
| 47 | +++ b/src/key_call.c | ||
| 48 | @@ -72,9 +72,9 @@ | ||
| 49 | * implementations of these functions, and to call those in key_call(). | ||
| 50 | */ | ||
| 51 | |||
| 52 | -cryptkeyres *(*__key_encryptsession_pk_LOCAL)() = 0; | ||
| 53 | -cryptkeyres *(*__key_decryptsession_pk_LOCAL)() = 0; | ||
| 54 | -des_block *(*__key_gendes_LOCAL)() = 0; | ||
| 55 | +cryptkeyres *(*__key_encryptsession_pk_LOCAL)(uid_t, char *) = 0; | ||
| 56 | +cryptkeyres *(*__key_decryptsession_pk_LOCAL)(uid_t, char *) = 0; | ||
| 57 | +des_block *(*__key_gendes_LOCAL)(uid_t, char *) = 0; | ||
| 58 | |||
| 59 | static int key_call( u_long, xdrproc_t, void *, xdrproc_t, void *); | ||
| 60 | |||
diff --git a/meta/recipes-extended/libtirpc/libtirpc_1.3.6.bb b/meta/recipes-extended/libtirpc/libtirpc_1.3.6.bb deleted file mode 100644 index c6901839c1..0000000000 --- a/meta/recipes-extended/libtirpc/libtirpc_1.3.6.bb +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | SUMMARY = "Transport-Independent RPC library" | ||
| 2 | DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" | ||
| 3 | SECTION = "libs/network" | ||
| 4 | HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" | ||
| 5 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" | ||
| 6 | LICENSE = "BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ | ||
| 8 | file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" | ||
| 9 | |||
| 10 | PROVIDES = "virtual/librpc" | ||
| 11 | |||
| 12 | SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ | ||
| 13 | file://0001-Update-declarations-to-allow-compile-with-gcc-15.patch \ | ||
| 14 | file://0002-update-signal-and-key_call-declarations-to-allow-com.patch \ | ||
| 15 | file://0001-Add-conditional-version-script-support.patch \ | ||
| 16 | " | ||
| 17 | UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/libtirpc/files/libtirpc/" | ||
| 18 | UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)/" | ||
| 19 | SRC_URI[sha256sum] = "bbd26a8f0df5690a62a47f6aa30f797f3ef8d02560d1bc449a83066b5a1d3508" | ||
| 20 | |||
| 21 | inherit autotools pkgconfig | ||
| 22 | |||
| 23 | PACKAGECONFIG ??= "\ | ||
| 24 | ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \ | ||
| 25 | " | ||
| 26 | PACKAGECONFIG:append:libc-musl = " rpcdb" | ||
| 27 | |||
| 28 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6" | ||
| 29 | PACKAGECONFIG[gssapi] = "--enable-gssapi,--disable-gssapi,krb5" | ||
| 30 | PACKAGECONFIG[rpcdb] = "--enable-rpcdb,--disable-rpcdb," | ||
| 31 | |||
| 32 | do_install:append() { | ||
| 33 | test -e ${D}${sysconfdir}/netconfig && chown root:root ${D}${sysconfdir}/netconfig | ||
| 34 | } | ||
| 35 | |||
| 36 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/lighttpd/lighttpd/index.html.lighttpd b/meta/recipes-extended/lighttpd/lighttpd/index.html.lighttpd deleted file mode 100644 index f5f1c377b6..0000000000 --- a/meta/recipes-extended/lighttpd/lighttpd/index.html.lighttpd +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | <html><body><h1>It works!</h1></body></html> | ||
diff --git a/meta/recipes-extended/lighttpd/lighttpd/lighttpd b/meta/recipes-extended/lighttpd/lighttpd/lighttpd deleted file mode 100644 index f369dce42c..0000000000 --- a/meta/recipes-extended/lighttpd/lighttpd/lighttpd +++ /dev/null | |||
| @@ -1,49 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | PATH=/sbin:/bin:/usr/sbin:/usr/bin | ||
| 4 | DAEMON=/usr/sbin/lighttpd | ||
| 5 | NAME=lighttpd | ||
| 6 | DESC="Lighttpd Web Server" | ||
| 7 | OPTS="-f /etc/lighttpd/lighttpd.conf" | ||
| 8 | |||
| 9 | configtest() { | ||
| 10 | "$DAEMON" $OPTS -tt || exit 1 | ||
| 11 | } | ||
| 12 | |||
| 13 | case "$1" in | ||
| 14 | start) | ||
| 15 | echo -n "Starting $DESC: " | ||
| 16 | configtest | ||
| 17 | start-stop-daemon --start -x "$DAEMON" -- $OPTS | ||
| 18 | echo "$NAME." | ||
| 19 | ;; | ||
| 20 | stop) | ||
| 21 | echo -n "Stopping $DESC: " | ||
| 22 | start-stop-daemon --stop -x "$DAEMON" | ||
| 23 | echo "$NAME." | ||
| 24 | ;; | ||
| 25 | restart) | ||
| 26 | echo -n "Restarting $DESC: " | ||
| 27 | configtest | ||
| 28 | start-stop-daemon --stop -x "$DAEMON" | ||
| 29 | sleep 1 | ||
| 30 | start-stop-daemon --start -x "$DAEMON" -- $OPTS | ||
| 31 | echo "$NAME." | ||
| 32 | ;; | ||
| 33 | reload|force-reload) | ||
| 34 | echo -n "Reloading $DESC: " | ||
| 35 | configtest | ||
| 36 | killall -USR1 "${DAEMON##*/}" | ||
| 37 | echo "$NAME." | ||
| 38 | ;; | ||
| 39 | configtest) | ||
| 40 | configtest | ||
| 41 | ;; | ||
| 42 | *) | ||
| 43 | N=/etc/init.d/$NAME | ||
| 44 | echo "Usage: $N {start|stop|restart|reload|force-reload|configtest}" >&2 | ||
| 45 | exit 1 | ||
| 46 | ;; | ||
| 47 | esac | ||
| 48 | |||
| 49 | exit 0 | ||
diff --git a/meta/recipes-extended/lighttpd/lighttpd/lighttpd.conf b/meta/recipes-extended/lighttpd/lighttpd/lighttpd.conf deleted file mode 100644 index 47a6c93349..0000000000 --- a/meta/recipes-extended/lighttpd/lighttpd/lighttpd.conf +++ /dev/null | |||
| @@ -1,309 +0,0 @@ | |||
| 1 | # lighttpd configuration file | ||
| 2 | # | ||
| 3 | # use it as a base for lighttpd 1.0.0 and above | ||
| 4 | # | ||
| 5 | # $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $ | ||
| 6 | |||
| 7 | ############ Options you really have to take care of #################### | ||
| 8 | |||
| 9 | ## modules to load | ||
| 10 | # at least mod_access and mod_accesslog should be loaded | ||
| 11 | # all other module should only be loaded if really neccesary | ||
| 12 | # - saves some time | ||
| 13 | # - saves memory | ||
| 14 | server.modules = ( | ||
| 15 | # "mod_rewrite", | ||
| 16 | # "mod_redirect", | ||
| 17 | # "mod_alias", | ||
| 18 | "mod_access", | ||
| 19 | # "mod_auth", | ||
| 20 | # "mod_status", | ||
| 21 | # "mod_setenv", | ||
| 22 | # "mod_fastcgi", | ||
| 23 | # "mod_proxy", | ||
| 24 | # "mod_simple_vhost", | ||
| 25 | # "mod_evhost", | ||
| 26 | # "mod_userdir", | ||
| 27 | # "mod_cgi", | ||
| 28 | # "mod_ssi", | ||
| 29 | # "mod_expire", | ||
| 30 | # "mod_deflate", | ||
| 31 | # "mod_rrdtool", | ||
| 32 | # "mod_webdav", | ||
| 33 | "mod_accesslog" ) | ||
| 34 | |||
| 35 | ## a static document-root, for virtual-hosting take look at the | ||
| 36 | ## server.virtual-* options | ||
| 37 | server.document-root = "/www/pages/" | ||
| 38 | |||
| 39 | ## where to send error-messages to | ||
| 40 | server.errorlog = "/www/logs/lighttpd.error.log" | ||
| 41 | |||
| 42 | # files to check for if .../ is requested | ||
| 43 | index-file.names = ( "index.php", "index.html", | ||
| 44 | "index.htm", "default.htm" ) | ||
| 45 | |||
| 46 | # mimetype mapping | ||
| 47 | mimetype.assign = ( | ||
| 48 | ".pdf" => "application/pdf", | ||
| 49 | ".sig" => "application/pgp-signature", | ||
| 50 | ".spl" => "application/futuresplash", | ||
| 51 | ".class" => "application/octet-stream", | ||
| 52 | ".ps" => "application/postscript", | ||
| 53 | ".torrent" => "application/x-bittorrent", | ||
| 54 | ".dvi" => "application/x-dvi", | ||
| 55 | ".gz" => "application/x-gzip", | ||
| 56 | ".pac" => "application/x-ns-proxy-autoconfig", | ||
| 57 | ".swf" => "application/x-shockwave-flash", | ||
| 58 | ".tar.gz" => "application/x-tgz", | ||
| 59 | ".tgz" => "application/x-tgz", | ||
| 60 | ".tar" => "application/x-tar", | ||
| 61 | ".zip" => "application/zip", | ||
| 62 | ".mp3" => "audio/mpeg", | ||
| 63 | ".m3u" => "audio/x-mpegurl", | ||
| 64 | ".wma" => "audio/x-ms-wma", | ||
| 65 | ".wax" => "audio/x-ms-wax", | ||
| 66 | ".ogg" => "application/ogg", | ||
| 67 | ".wav" => "audio/x-wav", | ||
| 68 | ".gif" => "image/gif", | ||
| 69 | ".jpg" => "image/jpeg", | ||
| 70 | ".jpeg" => "image/jpeg", | ||
| 71 | ".png" => "image/png", | ||
| 72 | ".xbm" => "image/x-xbitmap", | ||
| 73 | ".xpm" => "image/x-xpixmap", | ||
| 74 | ".xwd" => "image/x-xwindowdump", | ||
| 75 | ".css" => "text/css", | ||
| 76 | ".html" => "text/html", | ||
| 77 | ".htm" => "text/html", | ||
| 78 | ".js" => "text/javascript", | ||
| 79 | ".asc" => "text/plain", | ||
| 80 | ".c" => "text/plain", | ||
| 81 | ".cpp" => "text/plain", | ||
| 82 | ".log" => "text/plain", | ||
| 83 | ".conf" => "text/plain", | ||
| 84 | ".text" => "text/plain", | ||
| 85 | ".txt" => "text/plain", | ||
| 86 | ".dtd" => "text/xml", | ||
| 87 | ".xml" => "text/xml", | ||
| 88 | ".mpeg" => "video/mpeg", | ||
| 89 | ".mpg" => "video/mpeg", | ||
| 90 | ".mov" => "video/quicktime", | ||
| 91 | ".qt" => "video/quicktime", | ||
| 92 | ".avi" => "video/x-msvideo", | ||
| 93 | ".asf" => "video/x-ms-asf", | ||
| 94 | ".asx" => "video/x-ms-asf", | ||
| 95 | ".wmv" => "video/x-ms-wmv", | ||
| 96 | ".bz2" => "application/x-bzip", | ||
| 97 | ".tbz" => "application/x-bzip-compressed-tar", | ||
| 98 | ".tar.bz2" => "application/x-bzip-compressed-tar" | ||
| 99 | ) | ||
| 100 | |||
| 101 | # Use the "Content-Type" extended attribute to obtain mime type if possible | ||
| 102 | #mimetype.use-xattr = "enable" | ||
| 103 | |||
| 104 | |||
| 105 | ## send a different Server: header | ||
| 106 | ## be nice and keep it at lighttpd | ||
| 107 | # server.tag = "lighttpd" | ||
| 108 | |||
| 109 | #### accesslog module | ||
| 110 | accesslog.filename = "/www/logs/access.log" | ||
| 111 | |||
| 112 | |||
| 113 | |||
| 114 | |||
| 115 | ## deny access the file-extensions | ||
| 116 | # | ||
| 117 | # ~ is for backupfiles from vi, emacs, joe, ... | ||
| 118 | # .inc is often used for code includes which should in general not be part | ||
| 119 | # of the document-root | ||
| 120 | url.access-deny = ( "~", ".inc" ) | ||
| 121 | |||
| 122 | ## | ||
| 123 | # which extensions should not be handle via static-file transfer | ||
| 124 | # | ||
| 125 | # .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi | ||
| 126 | static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) | ||
| 127 | |||
| 128 | ######### Options that are good to be but not neccesary to be changed ####### | ||
| 129 | |||
| 130 | ## bind to port (default: 80) | ||
| 131 | #server.port = 81 | ||
| 132 | |||
| 133 | ## bind to localhost (default: all interfaces) | ||
| 134 | #server.bind = "grisu.home.kneschke.de" | ||
| 135 | |||
| 136 | ## error-handler for status 404 | ||
| 137 | #server.error-handler-404 = "/error-handler.html" | ||
| 138 | #server.error-handler-404 = "/error-handler.php" | ||
| 139 | |||
| 140 | ## to help the rc.scripts | ||
| 141 | #server.pid-file = "/var/run/lighttpd.pid" | ||
| 142 | |||
| 143 | |||
| 144 | ###### virtual hosts | ||
| 145 | ## | ||
| 146 | ## If you want name-based virtual hosting add the next three settings and load | ||
| 147 | ## mod_simple_vhost | ||
| 148 | ## | ||
| 149 | ## document-root = | ||
| 150 | ## virtual-server-root + virtual-server-default-host + virtual-server-docroot | ||
| 151 | ## or | ||
| 152 | ## virtual-server-root + http-host + virtual-server-docroot | ||
| 153 | ## | ||
| 154 | #simple-vhost.server-root = "/home/weigon/wwwroot/servers/" | ||
| 155 | #simple-vhost.default-host = "grisu.home.kneschke.de" | ||
| 156 | #simple-vhost.document-root = "/pages/" | ||
| 157 | |||
| 158 | |||
| 159 | ## | ||
| 160 | ## Format: <errorfile-prefix><status-code>.html | ||
| 161 | ## -> ..../status-404.html for 'File not found' | ||
| 162 | #server.errorfile-prefix = "/home/weigon/projects/lighttpd/doc/status-" | ||
| 163 | |||
| 164 | ## virtual directory listings | ||
| 165 | #dir-listing.activate = "enable" | ||
| 166 | |||
| 167 | ## enable debugging | ||
| 168 | #debug.log-request-header-on-error = "enable" | ||
| 169 | #debug.log-request-header = "enable" | ||
| 170 | #debug.log-response-header = "enable" | ||
| 171 | #debug.log-request-handling = "enable" | ||
| 172 | #debug.log-file-not-found = "enable" | ||
| 173 | |||
| 174 | ### only root can use these options | ||
| 175 | # | ||
| 176 | # chroot() to directory (default: no chroot() ) | ||
| 177 | #server.chroot = "/" | ||
| 178 | |||
| 179 | ## change uid to <uid> (default: don't care) | ||
| 180 | #server.username = "wwwrun" | ||
| 181 | |||
| 182 | ## change uid to <uid> (default: don't care) | ||
| 183 | #server.groupname = "wwwrun" | ||
| 184 | |||
| 185 | #### compress module | ||
| 186 | #deflate.cache-dir = "/tmp/lighttpd/cache/compress/" | ||
| 187 | #deflate.mimetypes = ("text/plain", "text/html") | ||
| 188 | #deflate.allowed-encodings = ("gzip") | ||
| 189 | |||
| 190 | #### proxy module | ||
| 191 | ## read proxy.txt for more info | ||
| 192 | #proxy.server = ( ".php" => | ||
| 193 | # ( "localhost" => | ||
| 194 | # ( | ||
| 195 | # "host" => "192.168.0.101", | ||
| 196 | # "port" => 80 | ||
| 197 | # ) | ||
| 198 | # ) | ||
| 199 | # ) | ||
| 200 | |||
| 201 | #### fastcgi module | ||
| 202 | ## read fastcgi.txt for more info | ||
| 203 | ## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini | ||
| 204 | #fastcgi.server = ( ".php" => | ||
| 205 | # ( "localhost" => | ||
| 206 | # ( | ||
| 207 | # "socket" => "/tmp/php-fastcgi.socket", | ||
| 208 | # "bin-path" => "/usr/local/bin/php" | ||
| 209 | # ) | ||
| 210 | # ) | ||
| 211 | # ) | ||
| 212 | |||
| 213 | #### CGI module | ||
| 214 | #cgi.assign = ( ".pl" => "/usr/bin/perl", | ||
| 215 | # ".cgi" => "/usr/bin/perl" ) | ||
| 216 | # | ||
| 217 | |||
| 218 | #### SSL engine | ||
| 219 | #ssl.engine = "enable" | ||
| 220 | #ssl.pemfile = "/path/to/fullchain.pem" | ||
| 221 | #ssl.privkey = "/path/to/privkey.pem" | ||
| 222 | |||
| 223 | #### status module | ||
| 224 | #status.status-url = "/server-status" | ||
| 225 | #status.config-url = "/server-config" | ||
| 226 | |||
| 227 | #### auth module | ||
| 228 | ## read authentication.txt for more info | ||
| 229 | #auth.backend = "plain" | ||
| 230 | #auth.backend.plain.userfile = "lighttpd.user" | ||
| 231 | #auth.backend.plain.groupfile = "lighttpd.group" | ||
| 232 | |||
| 233 | #auth.backend.ldap.hostname = "localhost" | ||
| 234 | #auth.backend.ldap.base-dn = "dc=my-domain,dc=com" | ||
| 235 | #auth.backend.ldap.filter = "(uid=$)" | ||
| 236 | |||
| 237 | #auth.require = ( "/server-status" => | ||
| 238 | # ( | ||
| 239 | # "method" => "digest", | ||
| 240 | # "realm" => "download archiv", | ||
| 241 | # "require" => "user=jan" | ||
| 242 | # ), | ||
| 243 | # "/server-config" => | ||
| 244 | # ( | ||
| 245 | # "method" => "digest", | ||
| 246 | # "realm" => "download archiv", | ||
| 247 | # "require" => "valid-user" | ||
| 248 | # ) | ||
| 249 | # ) | ||
| 250 | |||
| 251 | #### url handling modules (rewrite, redirect, access) | ||
| 252 | #url.rewrite = ( "^/$" => "/server-status" ) | ||
| 253 | #url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" ) | ||
| 254 | |||
| 255 | #### both rewrite/redirect support back reference to regex conditional using %n | ||
| 256 | #$HTTP["host"] =~ "^www\.(.*)" { | ||
| 257 | # url.redirect = ( "^/(.*)" => "http://%1/$1" ) | ||
| 258 | #} | ||
| 259 | |||
| 260 | # | ||
| 261 | # define a pattern for the host url finding | ||
| 262 | # %% => % sign | ||
| 263 | # %0 => domain name + tld | ||
| 264 | # %1 => tld | ||
| 265 | # %2 => domain name without tld | ||
| 266 | # %3 => subdomain 1 name | ||
| 267 | # %4 => subdomain 2 name | ||
| 268 | # | ||
| 269 | #evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/" | ||
| 270 | |||
| 271 | #### expire module | ||
| 272 | #expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes") | ||
| 273 | |||
| 274 | #### ssi | ||
| 275 | #ssi.extension = ( ".shtml" ) | ||
| 276 | |||
| 277 | #### rrdtool | ||
| 278 | #rrdtool.binary = "/usr/bin/rrdtool" | ||
| 279 | #rrdtool.db-name = "/var/www/lighttpd.rrd" | ||
| 280 | |||
| 281 | #### setenv | ||
| 282 | #setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" ) | ||
| 283 | #setenv.add-response-header = ( "X-Secret-Message" => "42" ) | ||
| 284 | |||
| 285 | #### variable usage: | ||
| 286 | ## variable name without "." is auto prefixed by "var." and becomes "var.bar" | ||
| 287 | #bar = 1 | ||
| 288 | #var.mystring = "foo" | ||
| 289 | |||
| 290 | ## integer add | ||
| 291 | #bar += 1 | ||
| 292 | ## string concat, with integer cast as string, result: "www.foo1.com" | ||
| 293 | #server.name = "www." + mystring + var.bar + ".com" | ||
| 294 | ## array merge | ||
| 295 | #index-file.names = (foo + ".php") + index-file.names | ||
| 296 | #index-file.names += (foo + ".php") | ||
| 297 | |||
| 298 | #### include | ||
| 299 | #include /etc/lighttpd/lighttpd-inc.conf | ||
| 300 | ## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf" | ||
| 301 | #include "lighttpd-inc.conf" | ||
| 302 | |||
| 303 | #### include_shell | ||
| 304 | #include_shell "echo var.a=1" | ||
| 305 | ## the above is same as: | ||
| 306 | #var.a=1 | ||
| 307 | |||
| 308 | # include other config file fragments from lighttpd.d subdir | ||
| 309 | include "/etc/lighttpd.d/*.conf" | ||
diff --git a/meta/recipes-extended/lighttpd/lighttpd_1.4.81.bb b/meta/recipes-extended/lighttpd/lighttpd_1.4.81.bb deleted file mode 100644 index 40abef784b..0000000000 --- a/meta/recipes-extended/lighttpd/lighttpd_1.4.81.bb +++ /dev/null | |||
| @@ -1,75 +0,0 @@ | |||
| 1 | SUMMARY = "Lightweight high-performance web server" | ||
| 2 | HOMEPAGE = "http://www.lighttpd.net/" | ||
| 3 | DESCRIPTION = "Lightweight high-performance web server is designed and optimized for high performance environments. With a small memory footprint compared to other web-servers, effective management of the cpu-load, and advanced feature set (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting and many more)" | ||
| 4 | BUGTRACKER = "http://redmine.lighttpd.net/projects/lighttpd/issues" | ||
| 5 | |||
| 6 | LICENSE = "BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=e4dac5c6ab169aa212feb5028853a579" | ||
| 8 | |||
| 9 | SECTION = "net" | ||
| 10 | RDEPENDS:${PN} = "lighttpd-module-dirlisting" | ||
| 11 | RRECOMMENDS:${PN} = "lighttpd-module-accesslog" | ||
| 12 | |||
| 13 | SRC_URI = "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${PV}.tar.xz \ | ||
| 14 | file://index.html.lighttpd \ | ||
| 15 | file://lighttpd.conf \ | ||
| 16 | file://lighttpd \ | ||
| 17 | " | ||
| 18 | |||
| 19 | SRC_URI[sha256sum] = "d7d42c3fd2fd94b63c915aa7d18f4da3cac5937ddba33e909f81cf50842a5840" | ||
| 20 | |||
| 21 | DEPENDS = "virtual/crypt" | ||
| 22 | |||
| 23 | PACKAGECONFIG ??= "openssl pcre zlib \ | ||
| 24 | ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \ | ||
| 25 | " | ||
| 26 | |||
| 27 | PACKAGECONFIG[mysql] = "-Dwith_mysql=enabled,-Dwith_mysql=disabled,mariadb" | ||
| 28 | PACKAGECONFIG[ldap] = "-Dwith_ldap=enabled,-Dwith_ldap=disabled,openldap" | ||
| 29 | PACKAGECONFIG[attr] = "-Dwith_xattr=true,-Dwith_xattr=false,attr" | ||
| 30 | PACKAGECONFIG[openssl] = "-Dwith_openssl=true,-Dwith_openssl=false,openssl" | ||
| 31 | PACKAGECONFIG[krb5] = "-Dwith_krb5=enabled,-Dwith_krb5=disabled,krb5" | ||
| 32 | PACKAGECONFIG[pcre] = "-Dwith_pcre=pcre2,-Dwith_pcre=disabled,libpcre2" | ||
| 33 | PACKAGECONFIG[zlib] = "-Dwith_zlib=enabled,-Dwith_zlib=disabled,zlib" | ||
| 34 | PACKAGECONFIG[bzip2] = "-Dwith_bzip=enabled,-Dwith_bzip=disabled,bzip2" | ||
| 35 | PACKAGECONFIG[webdav-props] = "-Dwith_webdav_props=enabled,-Dwith_webdav_props=disabled,libxml2 sqlite3" | ||
| 36 | PACKAGECONFIG[webdav-locks] = "-Dwith_webdav_locks=enabled,-Dwith_webdav_locks=disabled,util-linux" | ||
| 37 | PACKAGECONFIG[lua] = "-Dwith_lua=true,-Dwith_lua=false,lua" | ||
| 38 | PACKAGECONFIG[zstd] = "-Dwith_zstd=enabled,-Dwith_zstd=disabled,zstd" | ||
| 39 | |||
| 40 | inherit meson pkgconfig update-rc.d gettext systemd | ||
| 41 | |||
| 42 | INITSCRIPT_NAME = "lighttpd" | ||
| 43 | INITSCRIPT_PARAMS = "defaults 70" | ||
| 44 | |||
| 45 | SYSTEMD_SERVICE:${PN} = "lighttpd.service" | ||
| 46 | |||
| 47 | do_install:append() { | ||
| 48 | install -d ${D}${sysconfdir}/init.d ${D}${sysconfdir}/lighttpd ${D}${sysconfdir}/lighttpd.d ${D}/www/pages/dav | ||
| 49 | install -m 0755 ${UNPACKDIR}/lighttpd ${D}${sysconfdir}/init.d | ||
| 50 | install -m 0644 ${UNPACKDIR}/lighttpd.conf ${D}${sysconfdir}/lighttpd | ||
| 51 | install -m 0644 ${UNPACKDIR}/index.html.lighttpd ${D}/www/pages/index.html | ||
| 52 | |||
| 53 | install -d ${D}${systemd_system_unitdir} | ||
| 54 | install -m 0644 ${S}/doc/systemd/lighttpd.service ${D}${systemd_system_unitdir} | ||
| 55 | sed -i -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 56 | -e 's,@SYSCONFDIR@,${sysconfdir},g' \ | ||
| 57 | -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
| 58 | ${D}${systemd_system_unitdir}/lighttpd.service | ||
| 59 | #For FHS compliance, create symbolic links to /var/log and /var/tmp for logs and temporary data | ||
| 60 | ln -sf ${localstatedir}/log ${D}/www/logs | ||
| 61 | ln -sf ${localstatedir}/tmp ${D}/www/var | ||
| 62 | } | ||
| 63 | |||
| 64 | # bitbake.conf sets ${libdir}/${BPN}/* in FILES, which messes up the module split. | ||
| 65 | # So we re-do the variable. | ||
| 66 | FILES:${PN} = "${sysconfdir} /www ${sbindir}" | ||
| 67 | |||
| 68 | CONFFILES:${PN} = "${sysconfdir}/lighttpd/lighttpd.conf" | ||
| 69 | |||
| 70 | PACKAGES_DYNAMIC += "^lighttpd-module-.*" | ||
| 71 | |||
| 72 | python populate_packages:prepend () { | ||
| 73 | lighttpd_libdir = d.expand('${prefix}/lib/lighttpd') | ||
| 74 | do_split_packages(d, lighttpd_libdir, r'^mod_(.*)\.so$', 'lighttpd-module-%s', 'Lighttpd module for %s', extra_depends='') | ||
| 75 | } | ||
diff --git a/meta/recipes-extended/logrotate/logrotate/0001-test-avoid-locale-dependent-errno-string.patch b/meta/recipes-extended/logrotate/logrotate/0001-test-avoid-locale-dependent-errno-string.patch deleted file mode 100644 index efee91252d..0000000000 --- a/meta/recipes-extended/logrotate/logrotate/0001-test-avoid-locale-dependent-errno-string.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From 04b21743980c4e236ca5e8de18173fbd3848573b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com> | ||
| 3 | Date: Sat, 8 Jun 2024 17:59:40 +0200 | ||
| 4 | Subject: [PATCH] test: avoid locale dependent errno string | ||
| 5 | |||
| 6 | String representations of errno values are locale dependent, thus avoid | ||
| 7 | using them. | ||
| 8 | |||
| 9 | Upstream-Status: Backport [https://github.com/logrotate/logrotate/commit/04b21743980c4e236ca5e8de18173fbd3848573b] | ||
| 10 | Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> | ||
| 11 | --- | ||
| 12 | test/test-0112.sh | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/test/test-0112.sh b/test/test-0112.sh | ||
| 16 | index 812632b..fa9eed6 100755 | ||
| 17 | --- a/test/test-0112.sh | ||
| 18 | +++ b/test/test-0112.sh | ||
| 19 | @@ -23,7 +23,7 @@ test_reg.log.1.gz 1 zero | ||
| 20 | test_reg.log.2.gz 1 first | ||
| 21 | EOF | ||
| 22 | |||
| 23 | -grep "test_fifo.log.1 (read-only) for compression: Operation not supported" error.log >/dev/null | ||
| 24 | +grep "^error: unable to open .*/test_fifo\.log\.1 (read-only) for compression: " error.log >/dev/null | ||
| 25 | if [ $? != 0 ]; then | ||
| 26 | echo "No error printed, but there should be one." | ||
| 27 | exit 3 | ||
diff --git a/meta/recipes-extended/logrotate/logrotate/run-ptest b/meta/recipes-extended/logrotate/logrotate/run-ptest deleted file mode 100755 index b272def65f..0000000000 --- a/meta/recipes-extended/logrotate/logrotate/run-ptest +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | set -u | ||
| 4 | |||
| 5 | make -k check | ||
diff --git a/meta/recipes-extended/logrotate/logrotate_3.22.0.bb b/meta/recipes-extended/logrotate/logrotate_3.22.0.bb deleted file mode 100644 index 7995438408..0000000000 --- a/meta/recipes-extended/logrotate/logrotate_3.22.0.bb +++ /dev/null | |||
| @@ -1,115 +0,0 @@ | |||
| 1 | SUMMARY = "Rotates, compresses, removes and mails system log files" | ||
| 2 | SECTION = "console/utils" | ||
| 3 | HOMEPAGE = "https://github.com/logrotate/logrotate/" | ||
| 4 | DESCRIPTION = "The logrotate utility is designed to simplify the administration of log files on a system which generates a lot of log files." | ||
| 5 | LICENSE = "GPL-2.0-only" | ||
| 6 | |||
| 7 | # TODO: Document coreutils dependency. Why not RDEPENDS? Why not busybox? | ||
| 8 | |||
| 9 | DEPENDS = "coreutils popt" | ||
| 10 | |||
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
| 12 | |||
| 13 | SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.xz \ | ||
| 14 | file://run-ptest \ | ||
| 15 | file://0001-test-avoid-locale-dependent-errno-string.patch \ | ||
| 16 | " | ||
| 17 | |||
| 18 | SRC_URI[sha256sum] = "42b4080ee99c9fb6a7d12d8e787637d057a635194e25971997eebbe8d5e57618" | ||
| 19 | |||
| 20 | CVE_STATUS_GROUPS = "CVE_STATUS_RECIPE" | ||
| 21 | CVE_STATUS_RECIPE = "CVE-2011-1548 CVE-2011-1549 CVE-2011-1550" | ||
| 22 | CVE_STATUS_RECIPE[status] = "not-applicable-platform: CVE is debian, gentoo or SUSE specific on the way logrotate was installed/used" | ||
| 23 | |||
| 24 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)}" | ||
| 25 | |||
| 26 | PACKAGECONFIG[acl] = ",,acl" | ||
| 27 | PACKAGECONFIG[selinux] = ",,libselinux" | ||
| 28 | |||
| 29 | CONFFILES:${PN} += "${localstatedir}/lib/logrotate.status \ | ||
| 30 | ${sysconfdir}/logrotate.conf \ | ||
| 31 | ${sysconfdir}/logrotate.d/btmp \ | ||
| 32 | ${sysconfdir}/logrotate.d/wtmp" | ||
| 33 | |||
| 34 | # If RPM_OPT_FLAGS is unset, it adds -g itself rather than obeying our | ||
| 35 | # optimization variables, so use it rather than EXTRA_CFLAGS. | ||
| 36 | EXTRA_OEMAKE = "\ | ||
| 37 | LFS= \ | ||
| 38 | OS_NAME='${OS_NAME}' \ | ||
| 39 | 'CC=${CC}' \ | ||
| 40 | 'RPM_OPT_FLAGS=${CFLAGS}' \ | ||
| 41 | 'EXTRA_LDFLAGS=${LDFLAGS}' \ | ||
| 42 | ${@bb.utils.contains('PACKAGECONFIG', 'acl', 'WITH_ACL=yes', '', d)} \ | ||
| 43 | ${@bb.utils.contains('PACKAGECONFIG', 'selinux', 'WITH_SELINUX=yes', '', d)} \ | ||
| 44 | " | ||
| 45 | |||
| 46 | # OS_NAME in the makefile defaults to `uname -s`. The behavior for | ||
| 47 | # freebsd/netbsd is questionable, so leave it as Linux, which only sets | ||
| 48 | # INSTALL=install and BASEDIR=/usr. | ||
| 49 | OS_NAME = "Linux" | ||
| 50 | |||
| 51 | inherit autotools systemd github-releases ptest | ||
| 52 | |||
| 53 | SYSTEMD_SERVICE:${PN} = "\ | ||
| 54 | ${BPN}.service \ | ||
| 55 | ${BPN}.timer \ | ||
| 56 | " | ||
| 57 | |||
| 58 | LOGROTATE_OPTIONS ?= "" | ||
| 59 | |||
| 60 | LOGROTATE_SYSTEMD_TIMER_BASIS ?= "daily" | ||
| 61 | LOGROTATE_SYSTEMD_TIMER_ACCURACY ?= "12h" | ||
| 62 | LOGROTATE_SYSTEMD_TIMER_PERSISTENT ?= "true" | ||
| 63 | |||
| 64 | do_install(){ | ||
| 65 | oe_runmake install DESTDIR=${D} PREFIX=${D} MANDIR=${mandir} | ||
| 66 | mkdir -p ${D}${sysconfdir}/logrotate.d | ||
| 67 | mkdir -p ${D}${localstatedir}/lib | ||
| 68 | install -p -m 644 ${S}/examples/logrotate.conf ${D}${sysconfdir}/logrotate.conf | ||
| 69 | install -p -m 644 ${S}/examples/btmp ${D}${sysconfdir}/logrotate.d/btmp | ||
| 70 | install -p -m 644 ${S}/examples/wtmp ${D}${sysconfdir}/logrotate.d/wtmp | ||
| 71 | |||
| 72 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
| 73 | install -d ${D}${systemd_system_unitdir} | ||
| 74 | install -m 0644 ${S}/examples/logrotate.service ${D}${systemd_system_unitdir}/logrotate.service | ||
| 75 | install -m 0644 ${S}/examples/logrotate.timer ${D}${systemd_system_unitdir}/logrotate.timer | ||
| 76 | [ -z "${LOGROTATE_OPTIONS}" ] || | ||
| 77 | sed -ri \ | ||
| 78 | -e 's|(ExecStart=.*/logrotate.*)$|\1 ${LOGROTATE_OPTIONS}|g' \ | ||
| 79 | ${D}${systemd_system_unitdir}/logrotate.service | ||
| 80 | sed -ri \ | ||
| 81 | -e 's|(OnCalendar=).*$|\1${LOGROTATE_SYSTEMD_TIMER_BASIS}|g' \ | ||
| 82 | -e 's|(AccuracySec=).*$|\1${LOGROTATE_SYSTEMD_TIMER_ACCURACY}|g' \ | ||
| 83 | -e 's|(Persistent=).*$|\1${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}|g' \ | ||
| 84 | ${D}${systemd_system_unitdir}/logrotate.timer | ||
| 85 | fi | ||
| 86 | |||
| 87 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
| 88 | mkdir -p ${D}${sysconfdir}/cron.daily | ||
| 89 | install -p -m 0755 ${S}/examples/logrotate.cron ${D}${sysconfdir}/cron.daily/logrotate | ||
| 90 | fi | ||
| 91 | } | ||
| 92 | |||
| 93 | do_install_ptest() { | ||
| 94 | cp -r ${S}/test/* ${D}${PTEST_PATH} | ||
| 95 | cp ${S}/test-driver ${D}${PTEST_PATH} | ||
| 96 | cp ${B}/test/Makefile ${D}${PTEST_PATH} | ||
| 97 | |||
| 98 | # Do not rebuild Makefile | ||
| 99 | sed -i 's/^Makefile:/_Makefile:/' ${D}${PTEST_PATH}/Makefile | ||
| 100 | |||
| 101 | # Fix top_builddir and top_srcdir | ||
| 102 | sed -e 's/^top_builddir = \(.*\)/top_builddir = ./' \ | ||
| 103 | -e 's/^top_srcdir = \(.*\)/top_srcdir = ./' \ | ||
| 104 | -i ${D}${PTEST_PATH}/Makefile | ||
| 105 | |||
| 106 | # Replace bash with sh | ||
| 107 | sed -i 's,/bin/bash,/bin/sh,' ${D}${PTEST_PATH}/Makefile | ||
| 108 | |||
| 109 | # Replace gawk with awk | ||
| 110 | sed -i 's/gawk/awk/' ${D}${PTEST_PATH}/Makefile | ||
| 111 | ln -s ${sbindir}/logrotate ${D}${PTEST_PATH} | ||
| 112 | } | ||
| 113 | |||
| 114 | # coreutils is needed to have "readlink" | ||
| 115 | RDEPENDS:${PN}-ptest += "make coreutils" | ||
diff --git a/meta/recipes-extended/lsb/lsb-release/0001-Remove-timestamp-from-manpage.patch b/meta/recipes-extended/lsb/lsb-release/0001-Remove-timestamp-from-manpage.patch deleted file mode 100644 index af095fd322..0000000000 --- a/meta/recipes-extended/lsb/lsb-release/0001-Remove-timestamp-from-manpage.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From fb0b58be938bab5571ac0bdec3725f6d88b07e9f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jeremy Puhlman <jpuhlman@mvista.com> | ||
| 3 | Date: Sat, 22 Feb 2020 19:01:28 +0000 | ||
| 4 | Subject: [PATCH] Remove timestamp from manpage | ||
| 5 | |||
| 6 | Upstream-Status: Submitted [lsb-discuss@lists.linux-foundation.org] | ||
| 7 | Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com> | ||
| 8 | --- | ||
| 9 | Makefile | 2 +- | ||
| 10 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 11 | |||
| 12 | diff --git a/Makefile b/Makefile | ||
| 13 | index 04fdecd..5be8081 100644 | ||
| 14 | --- a/Makefile | ||
| 15 | +++ b/Makefile | ||
| 16 | @@ -17,7 +17,7 @@ man: lsb_release.1.gz | ||
| 17 | |||
| 18 | lsb_release.1.gz: lsb_release | ||
| 19 | @./help2man -N --include ./lsb_release.examples --alt_version_key=program_version ./lsb_release >lsb_release.1 | ||
| 20 | - @gzip -9f lsb_release.1 | ||
| 21 | + @gzip -9fn lsb_release.1 | ||
| 22 | |||
| 23 | install: all | ||
| 24 | install -D -m 644 lsb_release.1.gz ${mandir}/man1/lsb_release.1.gz | ||
| 25 | -- | ||
| 26 | 2.13.3 | ||
| 27 | |||
diff --git a/meta/recipes-extended/lsb/lsb-release/0001-fix-lsb_release-to-work-with-busybox-head-and-find.patch b/meta/recipes-extended/lsb/lsb-release/0001-fix-lsb_release-to-work-with-busybox-head-and-find.patch deleted file mode 100644 index 0175752067..0000000000 --- a/meta/recipes-extended/lsb/lsb-release/0001-fix-lsb_release-to-work-with-busybox-head-and-find.patch +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | From cba901945c5a6da9586550498f8e3787c57c3098 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Athanasios Oikonomou <athoik@gmail.com> | ||
| 3 | Date: Fri, 17 Feb 2017 21:04:04 +0200 | ||
| 4 | Subject: [PATCH] fix lsb_release to work with busybox head and find | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [oe-core specific] | ||
| 7 | Signed-off-by: Athanasios Oikonomou <athoik@gmail.com> | ||
| 8 | |||
| 9 | diff --git a/lsb_release b/lsb_release | ||
| 10 | index e7d6024..233b8c1 100755 | ||
| 11 | --- a/lsb_release | ||
| 12 | +++ b/lsb_release | ||
| 13 | @@ -209,7 +209,7 @@ EASE ($DISTRIB_CODENAME)" | ||
| 14 | || [ -n "$(echo $DISTRIB_DESCRIPTION | \ | ||
| 15 | sed -e "s/.*$DESCSTR_DELI.*//")" ] | ||
| 16 | then | ||
| 17 | - TMP_DISTRIB_DESC=$(head -1 $FILENAME 2>/dev/null) | ||
| 18 | + TMP_DISTRIB_DESC=$(head -n 1 $FILENAME 2>/dev/null) | ||
| 19 | [ -z "$DISTRIB_DESCRIPTION" ] \ | ||
| 20 | && DISTRIB_DESCRIPTION=$TMP_DISTRIB_DESC | ||
| 21 | else | ||
| 22 | @@ -249,10 +249,10 @@ GetDistribInfo() { | ||
| 23 | then | ||
| 24 | CHECKFIRST=$(find $INFO_ROOT/ -maxdepth 1 \ | ||
| 25 | -name \*$INFO_DISTRIB_SUFFIX \ | ||
| 26 | - -and ! -name $INFO_LSB_FILE \ | ||
| 27 | - -and -type f \ | ||
| 28 | + -type f \ | ||
| 29 | 2>/dev/null \ | ||
| 30 | - | head -1 ) # keep one of the files found (if many) | ||
| 31 | + | grep -v $INFO_LSB_FILE \ | ||
| 32 | + | head -n 1 ) # keep one of the files found (if many) | ||
| 33 | fi | ||
| 34 | InitDistribInfo $CHECKFIRST | ||
| 35 | fi | ||
| 36 | -- | ||
| 37 | 2.1.4 | ||
| 38 | |||
diff --git a/meta/recipes-extended/lsb/lsb-release/help2man-reproducibility.patch b/meta/recipes-extended/lsb/lsb-release/help2man-reproducibility.patch deleted file mode 100644 index f32cd18370..0000000000 --- a/meta/recipes-extended/lsb/lsb-release/help2man-reproducibility.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | lsb-release maintains it's own copy of help2man. Include the support | ||
| 2 | for specifying SOURCE_DATE_EPOCH from upstream. | ||
| 3 | |||
| 4 | Upstream-Status: Pending | ||
| 5 | |||
| 6 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
| 7 | |||
| 8 | diff --git a/help2man b/help2man | ||
| 9 | index 13015c2..63439db 100755 | ||
| 10 | --- a/help2man | ||
| 11 | +++ b/help2man | ||
| 12 | @@ -173,7 +173,14 @@ my ($help_text, $version_text) = map { | ||
| 13 | or die "$this_program: can't get `--$_' info from $ARGV[0]\n" | ||
| 14 | } qw(help), $opt_version_key; | ||
| 15 | |||
| 16 | -my $date = strftime "%B %Y", localtime; | ||
| 17 | +my $epoch_secs = time; | ||
| 18 | +if (exists $ENV{SOURCE_DATE_EPOCH} and $ENV{SOURCE_DATE_EPOCH} =~ /^(\d+)$/) | ||
| 19 | +{ | ||
| 20 | + $epoch_secs = $1; | ||
| 21 | + $ENV{TZ} = 'UTC0'; | ||
| 22 | +} | ||
| 23 | + | ||
| 24 | +my $date = strftime "%B %Y", localtime $epoch_secs; | ||
| 25 | (my $program = $ARGV[0]) =~ s!.*/!!; | ||
| 26 | my $package = $program; | ||
| 27 | my $version; | ||
diff --git a/meta/recipes-extended/lsb/lsb-release_1.4.bb b/meta/recipes-extended/lsb/lsb-release_1.4.bb deleted file mode 100644 index a7039ea4d1..0000000000 --- a/meta/recipes-extended/lsb/lsb-release_1.4.bb +++ /dev/null | |||
| @@ -1,37 +0,0 @@ | |||
| 1 | SUMMARY = "lsb_release support for OpenEmbedded" | ||
| 2 | SECTION = "console/utils" | ||
| 3 | HOMEPAGE = "https://sourceforge.net/projects/lsb/files" | ||
| 4 | LICENSE = "GPL-2.0-or-later" | ||
| 5 | |||
| 6 | # lsb_release needs getopt | ||
| 7 | RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_getopt}" | ||
| 8 | |||
| 9 | LIC_FILES_CHKSUM = "file://README;md5=12da544b1a3a5a1795a21160b49471cf" | ||
| 10 | |||
| 11 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/lsb/lsb_release/1.4/lsb-release-1.4.tar.gz \ | ||
| 12 | file://0001-fix-lsb_release-to-work-with-busybox-head-and-find.patch \ | ||
| 13 | file://0001-Remove-timestamp-from-manpage.patch \ | ||
| 14 | file://help2man-reproducibility.patch \ | ||
| 15 | " | ||
| 16 | |||
| 17 | SRC_URI[sha256sum] = "99321288f8d62e7a1d485b7c6bdccf06766fb8ca603c6195806e4457fdf17172" | ||
| 18 | |||
| 19 | UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/lsb/files/lsb_release/" | ||
| 20 | UPSTREAM_CHECK_REGEX = "/lsb_release/(?P<pver>(\d+[\.\-_]*)+)/" | ||
| 21 | |||
| 22 | CLEANBROKEN = "1" | ||
| 23 | |||
| 24 | do_install() { | ||
| 25 | oe_runmake install prefix=${D}${root_prefix} mandir=${D}${datadir}/man/ DESTDIR=${D} | ||
| 26 | |||
| 27 | mkdir -p ${D}${sysconfdir}/lsb-release.d | ||
| 28 | |||
| 29 | echo "DISTRIB_ID=${DISTRO}" >> ${D}${sysconfdir}/lsb-release | ||
| 30 | echo "DISTRIB_RELEASE=${DISTRO_VERSION}" >> ${D}${sysconfdir}/lsb-release | ||
| 31 | if [ -n "${DISTRO_CODENAME}" ]; then | ||
| 32 | echo "DISTRIB_CODENAME=\"${DISTRO_CODENAME}\"" >> ${D}${sysconfdir}/lsb-release | ||
| 33 | fi | ||
| 34 | echo "DISTRIB_DESCRIPTION=\"${DISTRO_NAME} ${DISTRO_VERSION}\"" >> ${D}${sysconfdir}/lsb-release | ||
| 35 | } | ||
| 36 | |||
| 37 | FILES:${PN} += "${base_libdir}" | ||
diff --git a/meta/recipes-extended/lsof/files/remove-host-information.patch b/meta/recipes-extended/lsof/files/remove-host-information.patch deleted file mode 100644 index 1f2b4afa69..0000000000 --- a/meta/recipes-extended/lsof/files/remove-host-information.patch +++ /dev/null | |||
| @@ -1,123 +0,0 @@ | |||
| 1 | From 4f05492ac07a7bbaf06dd8265b9cba329e1b53e9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ross Burton <ross.burton@arm.com> | ||
| 3 | Date: Wed, 30 Aug 2017 15:05:16 +0800 | ||
| 4 | Subject: [PATCH] lsof: remove host information from version.h | ||
| 5 | |||
| 6 | lsof doesn't embed the username or hostname in the build if SOURCE_DATE_EPOCH is | ||
| 7 | defined, but this still embeds build paths. Delete all of the host details to | ||
| 8 | ensure that no host information is leaked into the binary. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate | ||
| 11 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 12 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 13 | --- | ||
| 14 | autotools/version.h.in | 16 ++++----- | ||
| 15 | lib/dialects/linux/Makefile | 69 ++++++------------------------------- | ||
| 16 | 2 files changed, 19 insertions(+), 66 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/autotools/version.h.in b/autotools/version.h.in | ||
| 19 | index aac0b80..2e635a5 100644 | ||
| 20 | --- a/autotools/version.h.in | ||
| 21 | +++ b/autotools/version.h.in | ||
| 22 | @@ -37,13 +37,13 @@ | ||
| 23 | |||
| 24 | #include "config.h" | ||
| 25 | #define LSOF_VERSION PACKAGE_VERSION | ||
| 26 | -#define LSOF_HOST "@host@" | ||
| 27 | -#define LSOF_LOGNAME "@logname@" | ||
| 28 | -#define LSOF_USER "@user@" | ||
| 29 | -#define LSOF_CC "@cc@" | ||
| 30 | -#define LSOF_CCV "@ccv@" | ||
| 31 | -#define LSOF_CCFLAGS "@ccflags@" | ||
| 32 | -#define LSOF_LDFLAGS "@ldflags@" | ||
| 33 | -#define LSOF_SYSINFO "@sysinfo@" | ||
| 34 | +#define LSOF_HOST "" | ||
| 35 | +#define LSOF_LOGNAME "" | ||
| 36 | +#define LSOF_USER "" | ||
| 37 | +#define LSOF_CC "" | ||
| 38 | +#define LSOF_CCV "" | ||
| 39 | +#define LSOF_CCFLAGS "" | ||
| 40 | +#define LSOF_LDFLAGS "" | ||
| 41 | +#define LSOF_SYSINFO "" | ||
| 42 | |||
| 43 | #endif | ||
| 44 | diff --git a/lib/dialects/linux/Makefile b/lib/dialects/linux/Makefile | ||
| 45 | index f8adaa6..7a79ca7 100644 | ||
| 46 | --- a/lib/dialects/linux/Makefile | ||
| 47 | +++ b/lib/dialects/linux/Makefile | ||
| 48 | @@ -83,64 +83,17 @@ ${LIB}: FRC | ||
| 49 | version.h: FRC | ||
| 50 | @echo Constructing version.h | ||
| 51 | @rm -f version.h | ||
| 52 | - @echo '#define LSOF_BLDCMT "${LSOF_BLDCMT}"' > version.h; | ||
| 53 | - @echo '#define LSOF_CC "${CC}"' >> version.h | ||
| 54 | - @echo '#define LSOF_CCV "${CCV}"' >> version.h | ||
| 55 | - @echo '#define LSOF_CCFLAGS "'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h | ||
| 56 | - @echo '#define LSOF_CINFO "${CINFO}"' >> version.h | ||
| 57 | - @if [ "X${LSOF_HOST}" = "X" ]; then \ | ||
| 58 | - if [ "X${SOURCE_DATE_EPOCH}" = "X" ]; then \ | ||
| 59 | - echo '#define LSOF_HOST "'`uname -n`'"' >> version.h; \ | ||
| 60 | - else \ | ||
| 61 | - echo '#define LSOF_HOST ""' >> version.h; \ | ||
| 62 | - fi \ | ||
| 63 | - else \ | ||
| 64 | - if [ "${LSOF_HOST}" = "none" ]; then \ | ||
| 65 | - echo '#define LSOF_HOST ""' >> version.h; \ | ||
| 66 | - else \ | ||
| 67 | - echo '#define LSOF_HOST "${LSOF_HOST}"' >> version.h; \ | ||
| 68 | - fi \ | ||
| 69 | - fi | ||
| 70 | - @echo '#define LSOF_LDFLAGS "${CFGL}"' >> version.h | ||
| 71 | - @if [ "X${LSOF_LOGNAME}" = "X" ]; then \ | ||
| 72 | - if [ "X${SOURCE_DATE_EPOCH}" = "X" ]; then \ | ||
| 73 | - echo '#define LSOF_LOGNAME "${LOGNAME}"' >> version.h; \ | ||
| 74 | - else \ | ||
| 75 | - echo '#define LSOF_LOGNAME ""' >> version.h; \ | ||
| 76 | - fi \ | ||
| 77 | - else \ | ||
| 78 | - if [ "${LSOF_LOGNAME}" = "none" ]; then \ | ||
| 79 | - echo '#define LSOF_LOGNAME ""' >> version.h; \ | ||
| 80 | - else \ | ||
| 81 | - echo '#define LSOF_LOGNAME "${LSOF_LOGNAME}"' >> version.h; \ | ||
| 82 | - fi; \ | ||
| 83 | - fi | ||
| 84 | - @if [ "X${LSOF_SYSINFO}" = "X" ]; then \ | ||
| 85 | - if [ "X${SOURCE_DATE_EPOCH}" = "X" ]; then \ | ||
| 86 | - echo '#define LSOF_SYSINFO "'`uname -a`'"' >> version.h; \ | ||
| 87 | - else \ | ||
| 88 | - echo '#define LSOF_SYSINFO ""' >> version.h; \ | ||
| 89 | - fi \ | ||
| 90 | - else \ | ||
| 91 | - if [ "${LSOF_SYSINFO}" = "none" ]; then \ | ||
| 92 | - echo '#define LSOF_SYSINFO ""' >> version.h; \ | ||
| 93 | - else \ | ||
| 94 | - echo '#define LSOF_SYSINFO "${LSOF_SYSINFO}"' >> version.h; \ | ||
| 95 | - fi \ | ||
| 96 | - fi | ||
| 97 | - @if [ "X${LSOF_USER}" = "X" ]; then \ | ||
| 98 | - if [ "X${SOURCE_DATE_EPOCH}" = "X" ]; then \ | ||
| 99 | - echo '#define LSOF_USER "${USER}"' >> version.h; \ | ||
| 100 | - else \ | ||
| 101 | - echo '#define LSOF_USER ""' >> version.h; \ | ||
| 102 | - fi \ | ||
| 103 | - else \ | ||
| 104 | - if [ "${LSOF_USER}" = "none" ]; then \ | ||
| 105 | - echo '#define LSOF_USER ""' >> version.h; \ | ||
| 106 | - else \ | ||
| 107 | - echo '#define LSOF_USER "${LSOF_USER}"' >> version.h; \ | ||
| 108 | - fi \ | ||
| 109 | - fi | ||
| 110 | + | ||
| 111 | + @echo '#define LSOF_BLDCMT ""' > version.h; | ||
| 112 | + @echo '#define LSOF_CC ""' >> version.h | ||
| 113 | + @echo '#define LSOF_CCV ""' >> version.h | ||
| 114 | + @echo '#define LSOF_CCFLAGS ""' >> version.h | ||
| 115 | + @echo '#define LSOF_CINFO ""' >> version.h | ||
| 116 | + @echo '#define LSOF_HOST ""' >> version.h | ||
| 117 | + @echo '#define LSOF_LDFLAGS ""' >> version.h | ||
| 118 | + @echo '#define LSOF_LOGNAME ""' >> version.h | ||
| 119 | + @echo '#define LSOF_SYSINFO ""' >> version.h | ||
| 120 | + @echo '#define LSOF_USER ""' >> version.h | ||
| 121 | @sed '/VN/s/.ds VN \(.*\)/#define LSOF_VERSION "\1"/' < version >> version.h | ||
| 122 | |||
| 123 | FRC: | ||
diff --git a/meta/recipes-extended/lsof/lsof_4.99.5.bb b/meta/recipes-extended/lsof/lsof_4.99.5.bb deleted file mode 100644 index 292db224af..0000000000 --- a/meta/recipes-extended/lsof/lsof_4.99.5.bb +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | SUMMARY = "LiSt Open Files tool" | ||
| 2 | DESCRIPTION = "Lsof is a Unix-specific diagnostic tool. \ | ||
| 3 | Its name stands for LiSt Open Files, and it does just that." | ||
| 4 | HOMEPAGE = "http://people.freebsd.org/~abe/" | ||
| 5 | SECTION = "devel" | ||
| 6 | LICENSE = "Spencer-94" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=a48ac97a8550eff12395a2c0d6151510" | ||
| 8 | |||
| 9 | SRC_URI = "git://github.com/lsof-org/lsof;branch=master;protocol=https;tag=${PV} \ | ||
| 10 | file://remove-host-information.patch" | ||
| 11 | SRCREV = "ed0fef9a134b64c9398075185534a76714c91179" | ||
| 12 | |||
| 13 | inherit update-alternatives autotools pkgconfig manpages | ||
| 14 | PACKAGECONFIG[manpages] = "" | ||
| 15 | |||
| 16 | DEPENDS += "groff-native" | ||
| 17 | |||
| 18 | ALTERNATIVE:${PN} = "lsof" | ||
| 19 | ALTERNATIVE_LINK_NAME[lsof] = "${bindir}/lsof" | ||
| 20 | # Make our priority higher than busybox | ||
| 21 | ALTERNATIVE_PRIORITY = "100" | ||
diff --git a/meta/recipes-extended/ltp/ltp/0001-Add-__clear_cache-declaration-for-clang.patch b/meta/recipes-extended/ltp/ltp/0001-Add-__clear_cache-declaration-for-clang.patch deleted file mode 100644 index 24e8762f77..0000000000 --- a/meta/recipes-extended/ltp/ltp/0001-Add-__clear_cache-declaration-for-clang.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From a2ce04cb82d545f3dbab71de7fa55eaad3df3063 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 10 Jun 2024 22:52:56 -0700 | ||
| 4 | Subject: [PATCH] Add __clear_cache declaration for clang | ||
| 5 | |||
| 6 | __clear_cache was enabled on RISCV recently with 7352ba02390116f1cd6a9b583860ba28aa0a1b7a | ||
| 7 | however it fails to compile with clang19 on RISCV | ||
| 8 | With this error | ||
| 9 | |||
| 10 | hugemmap15.c:51:2: error: call to undeclared function '__clear_cache'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] | ||
| 11 | 51 | __clear_cache(p, p + COPY_SIZE); | ||
| 12 | | ^ | ||
| 13 | |||
| 14 | Upstream-Status: Submitted [https://lists.linux.it/pipermail/ltp/2024-June/038762.html] | ||
| 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 16 | Cc: Hui Min Mina Chou <minachou@andestech.com> | ||
| 17 | --- | ||
| 18 | testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c | 1 + | ||
| 19 | 1 file changed, 1 insertion(+) | ||
| 20 | |||
| 21 | diff --git a/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c b/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c | ||
| 22 | index 1dde9e87b..6a6f5fe5e 100644 | ||
| 23 | --- a/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c | ||
| 24 | +++ b/testcases/kernel/mem/hugetlb/hugemmap/hugemmap15.c | ||
| 25 | @@ -19,6 +19,7 @@ | ||
| 26 | |||
| 27 | #if defined(__clang__) | ||
| 28 | #pragma clang optimize off | ||
| 29 | + void __clear_cache(void *start, void *end); | ||
| 30 | #endif | ||
| 31 | |||
| 32 | #define _GNU_SOURCE | ||
diff --git a/meta/recipes-extended/ltp/ltp/0001-Remove-OOM-tests-from-runtest-mm.patch b/meta/recipes-extended/ltp/ltp/0001-Remove-OOM-tests-from-runtest-mm.patch deleted file mode 100644 index 860b2f127f..0000000000 --- a/meta/recipes-extended/ltp/ltp/0001-Remove-OOM-tests-from-runtest-mm.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From bb9146dd322af98a7bb96ad0d84ec376589c6cde Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Mingde (Matthew) Zeng" <matthewzmd@gmail.com> | ||
| 3 | Date: Wed, 29 Jul 2020 08:47:09 -0400 | ||
| 4 | Subject: [PATCH] Remove OOM tests from runtest/mm | ||
| 5 | |||
| 6 | Disable OOM tests, as they might cause oeqa ssh connection lost | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [oe-core specific] | ||
| 9 | Signed-off-by: Mingde (Matthew) Zeng <matthew.zeng@windriver.com> | ||
| 10 | [ pvorel: rebased for 20210927 ] | ||
| 11 | Signed-off-by: Petr Vorel <petr.vorel@gmail.com> | ||
| 12 | --- | ||
| 13 | runtest/mm | 6 ------ | ||
| 14 | 1 file changed, 6 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/runtest/mm b/runtest/mm | ||
| 17 | index 41d624ad8..1e8c22638 100644 | ||
| 18 | --- a/runtest/mm | ||
| 19 | +++ b/runtest/mm | ||
| 20 | @@ -69,12 +69,6 @@ ksm07 ksm07 | ||
| 21 | cpuset01 cpuset01 | ||
| 22 | cpuset02 cpuset02 | ||
| 23 | |||
| 24 | -oom01 oom01 | ||
| 25 | -oom02 oom02 | ||
| 26 | -oom03 oom03 | ||
| 27 | -oom04 oom04 | ||
| 28 | -oom05 oom05 | ||
| 29 | - | ||
| 30 | swapping01 swapping01 -i 5 | ||
| 31 | |||
| 32 | thp01 thp01 -I 120 | ||
diff --git a/meta/recipes-extended/ltp/ltp/0001-syscalls-semctl08-Skip-semctl08-when-__USE_TIME64_RE.patch b/meta/recipes-extended/ltp/ltp/0001-syscalls-semctl08-Skip-semctl08-when-__USE_TIME64_RE.patch deleted file mode 100644 index 364e203e23..0000000000 --- a/meta/recipes-extended/ltp/ltp/0001-syscalls-semctl08-Skip-semctl08-when-__USE_TIME64_RE.patch +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | From 09364a758df9d89a0968894376f82f636441addb Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jiaying Song <jiaying.song.cn@windriver.com> | ||
| 3 | Date: Fri, 23 May 2025 15:17:49 +0800 | ||
| 4 | Subject: [PATCH] syscalls/semctl08: Skip semctl08 when __USE_TIME64_REDIRECTS | ||
| 5 | is defined | ||
| 6 | |||
| 7 | When __USE_TIME64_REDIRECTS is defined, glibc redirects struct semid_ds to a | ||
| 8 | 64-bit time-safe version that omits the sem_otime_high and sem_ctime_high | ||
| 9 | fields. As a result, the case becomes invalid and leads to incorrect behavior. | ||
| 10 | |||
| 11 | This patch adds a check to skip the test when __USE_TIME64_REDIRECTS is | ||
| 12 | defined, ensuring the test only runs when semid_ds structurally matches | ||
| 13 | semid64_ds and the *_high fields are accessible. | ||
| 14 | |||
| 15 | Upstream-Status: Submitted [https://lists.linux.it/pipermail/ltp/2025-May/043647.html] | ||
| 16 | |||
| 17 | Signed-off-by: Jiaying Song <jiaying.song.cn@windriver.com> | ||
| 18 | --- | ||
| 19 | testcases/kernel/syscalls/ipc/semctl/semctl08.c | 8 +++++--- | ||
| 20 | 1 file changed, 5 insertions(+), 3 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/testcases/kernel/syscalls/ipc/semctl/semctl08.c b/testcases/kernel/syscalls/ipc/semctl/semctl08.c | ||
| 23 | index f4549adf4..28776f266 100644 | ||
| 24 | --- a/testcases/kernel/syscalls/ipc/semctl/semctl08.c | ||
| 25 | +++ b/testcases/kernel/syscalls/ipc/semctl/semctl08.c | ||
| 26 | @@ -12,7 +12,11 @@ | ||
| 27 | #include "tst_test.h" | ||
| 28 | #include "libnewipc.h" | ||
| 29 | |||
| 30 | -#ifdef HAVE_SEMID64_DS_TIME_HIGH | ||
| 31 | +#if !defined(HAVE_SEMID64_DS_TIME_HIGH) | ||
| 32 | +TST_TEST_TCONF("test requires struct semid64_ds to have the time_high fields"); | ||
| 33 | +#elif defined(__USE_TIME64_REDIRECTS) | ||
| 34 | +TST_TEST_TCONF("test requires __USE_TIME64_REDIRECTS to be undefined"); | ||
| 35 | +#else | ||
| 36 | |||
| 37 | static void run(void) | ||
| 38 | { | ||
| 39 | @@ -49,6 +53,4 @@ static struct tst_test test = { | ||
| 40 | .test_all = run, | ||
| 41 | .needs_tmpdir = 1, | ||
| 42 | }; | ||
| 43 | -#else | ||
| 44 | -TST_TEST_TCONF("test requires struct semid64_ds to have the time_high fields"); | ||
| 45 | #endif | ||
diff --git a/meta/recipes-extended/ltp/ltp_20250930.bb b/meta/recipes-extended/ltp/ltp_20250930.bb deleted file mode 100644 index 1514aca8fe..0000000000 --- a/meta/recipes-extended/ltp/ltp_20250930.bb +++ /dev/null | |||
| @@ -1,146 +0,0 @@ | |||
| 1 | SUMMARY = "Linux Test Project" | ||
| 2 | DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." | ||
| 3 | HOMEPAGE = "https://linux-test-project.github.io/" | ||
| 4 | SECTION = "console/utils" | ||
| 5 | LICENSE = "GPL-2.0-only & GPL-2.0-or-later & LGPL-2.0-or-later & LGPL-2.1-or-later & BSD-2-Clause" | ||
| 6 | LIC_FILES_CHKSUM = "\ | ||
| 7 | file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 8 | file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ | ||
| 9 | file://testcases/network/can/filter-tests/COPYING;md5=5b155ea7d7f86eae8e8832955d8b70bc \ | ||
| 10 | " | ||
| 11 | |||
| 12 | DEPENDS = "attr libaio libcap acl openssl zip-native" | ||
| 13 | DEPENDS:append:libc-musl = " fts " | ||
| 14 | EXTRA_OEMAKE:append:libc-musl = " LIBC=musl " | ||
| 15 | EXTRA_OECONF:append:libc-musl = " LIBS=-lfts " | ||
| 16 | |||
| 17 | # since ltp contains x86-64 assembler which uses the frame-pointer register, | ||
| 18 | # set -fomit-frame-pointer x86-64 to handle cases where optimisation | ||
| 19 | # is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer | ||
| 20 | # earlier in CFLAGS, etc. | ||
| 21 | CFLAGS:append:x86-64 = " -fomit-frame-pointer" | ||
| 22 | TUNE_CCARGS:remove:x86 = "-mfpmath=sse" | ||
| 23 | TUNE_CCARGS:remove:x86-64 = "-mfpmath=sse" | ||
| 24 | |||
| 25 | CFLAGS:append:powerpc64 = " -D__SANE_USERSPACE_TYPES__" | ||
| 26 | CFLAGS:append:mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" | ||
| 27 | SRCREV = "d2550ffbbcfe163212cd7e9c132db65ae0fa06ed" | ||
| 28 | |||
| 29 | SRC_URI = "git://github.com/linux-test-project/ltp.git;branch=master;protocol=https \ | ||
| 30 | file://0001-Remove-OOM-tests-from-runtest-mm.patch \ | ||
| 31 | file://0001-Add-__clear_cache-declaration-for-clang.patch \ | ||
| 32 | file://0001-syscalls-semctl08-Skip-semctl08-when-__USE_TIME64_RE.patch \ | ||
| 33 | " | ||
| 34 | |||
| 35 | inherit autotools-brokensep pkgconfig | ||
| 36 | |||
| 37 | # Version 20220527 added KVM test infrastructure which currently fails to build with lld due to | ||
| 38 | # SORT_NONE in linker script which isn't supported by gold: | ||
| 39 | # https://sourceware.org/bugzilla/show_bug.cgi?id=18097 | ||
| 40 | # https://github.com/linux-test-project/ltp/commit/3fce2064b54843218d085aae326c8f7ecf3a8c41#diff-39268f0855c634ca48c8993fcd2c95b12a65b79e8d9fa5ccd6b0f5a8785c0dd6R36 | ||
| 41 | LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', '-fuse-ld=bfd', '', d)}" | ||
| 42 | |||
| 43 | # After 0002-kvm-use-LD-instead-of-hardcoding-ld.patch | ||
| 44 | # https://github.com/linux-test-project/ltp/commit/f94e0ef3b7280f886384703ef9019aaf2f2dfebb | ||
| 45 | # it fails with lld also a bit later when trying to use *-payload.bin | ||
| 46 | # http://errors.yoctoproject.org/Errors/Details/663094/ | ||
| 47 | # work around this by forcing .bfd linked in LD when ld-is-lld is in DISTRO_FEATURES | ||
| 48 | KVM_LD = "${@bb.utils.contains_any('DISTRO_FEATURES', 'ld-is-lld', '${HOST_PREFIX}ld.bfd${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}', '${LD}', d)}" | ||
| 49 | |||
| 50 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
| 51 | |||
| 52 | export prefix = "/opt/${PN}" | ||
| 53 | export exec_prefix = "/opt/${PN}" | ||
| 54 | |||
| 55 | PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," | ||
| 56 | EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" | ||
| 57 | EXTRA_OECONF = " --with-realtime-testsuite --with-open-posix-testsuite " | ||
| 58 | # ltp network/rpc test cases ftbfs when libtirpc is found | ||
| 59 | EXTRA_OECONF += " --without-tirpc " | ||
| 60 | |||
| 61 | do_compile() { | ||
| 62 | oe_runmake HOSTCC="${CC_FOR_BUILD}" HOST_CFLAGS="${CFLAGS_FOR_BUILD}" HOST_LDFLAGS="${LDFLAGS_FOR_BUILD}" KVM_LD="${KVM_LD}" | ||
| 63 | } | ||
| 64 | |||
| 65 | do_install(){ | ||
| 66 | install -d ${D}${prefix}/ | ||
| 67 | oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install include-install | ||
| 68 | |||
| 69 | # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run | ||
| 70 | # as it lacks dependency on some perl moudle such as LWP::Simple | ||
| 71 | # And this script previously works as a tool for analyzing failures from LTP | ||
| 72 | # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses | ||
| 73 | # http://khack.osdl.org to retrieve ltp test results run on | ||
| 74 | # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible | ||
| 75 | rm -rf ${D}${prefix}/bin/STPfailure_report.pl | ||
| 76 | |||
| 77 | # The controllers memcg_stree test seems to cause us hangs and takes 900s | ||
| 78 | # (maybe we expect more regular output?), anyhow, skip it | ||
| 79 | sed -e '/^memcg_stress/d' -i ${D}${prefix}/runtest/controllers | ||
| 80 | } | ||
| 81 | |||
| 82 | RDEPENDS:${PN} = "\ | ||
| 83 | attr \ | ||
| 84 | bash \ | ||
| 85 | bc \ | ||
| 86 | coreutils \ | ||
| 87 | cpio \ | ||
| 88 | cronie \ | ||
| 89 | curl \ | ||
| 90 | e2fsprogs \ | ||
| 91 | e2fsprogs-mke2fs \ | ||
| 92 | expect \ | ||
| 93 | file \ | ||
| 94 | findutils \ | ||
| 95 | gawk \ | ||
| 96 | gdb \ | ||
| 97 | gzip \ | ||
| 98 | iproute2 \ | ||
| 99 | ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'iputils-ping6', '', d)} \ | ||
| 100 | ldd \ | ||
| 101 | libaio \ | ||
| 102 | logrotate \ | ||
| 103 | net-tools \ | ||
| 104 | perl \ | ||
| 105 | python3-core \ | ||
| 106 | procps \ | ||
| 107 | quota \ | ||
| 108 | unzip \ | ||
| 109 | util-linux \ | ||
| 110 | which \ | ||
| 111 | tar \ | ||
| 112 | " | ||
| 113 | |||
| 114 | RRECOMMENDS:${PN} += "kernel-module-loop" | ||
| 115 | |||
| 116 | FILES:${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a" | ||
| 117 | |||
| 118 | # Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail | ||
| 119 | INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01" | ||
| 120 | INSANE_SKIP:${PN} += "already-stripped staticdev" | ||
| 121 | |||
| 122 | CACHED_CONFIGUREVARS:libc-musl = "ac_cv_type_struct_mnt_id_req=no ac_cv_type_struct_statmount=no" | ||
| 123 | |||
| 124 | remove_broken_musl_sources() { | ||
| 125 | [ "${TCLIBC}" = "musl" ] || return 0 | ||
| 126 | |||
| 127 | cd ${S} | ||
| 128 | echo "WARNING: remove unsupported tests (until they're fixed)" | ||
| 129 | |||
| 130 | # sync with upstream | ||
| 131 | # https://github.com/linux-test-project/ltp/blob/master/ci/alpine.sh#L33 | ||
| 132 | rm -rfv \ | ||
| 133 | testcases/kernel/syscalls/fmtmsg/fmtmsg01.c \ | ||
| 134 | testcases/kernel/syscalls/getcontext/getcontext01.c \ | ||
| 135 | testcases/kernel/syscalls/rt_tgsigqueueinfo/rt_tgsigqueueinfo01.c \ | ||
| 136 | testcases/kernel/syscalls/timer_create/timer_create01.c \ | ||
| 137 | testcases/kernel/syscalls/timer_create/timer_create03.c \ | ||
| 138 | testcases/kernel/syscalls/statmount/statmount02.c | ||
| 139 | } | ||
| 140 | do_patch[postfuncs] += "remove_broken_musl_sources" | ||
| 141 | |||
| 142 | # Avoid file dependency scans, as LTP checks for things that may or may not | ||
| 143 | # exist on the running system. For instance it has specific checks for | ||
| 144 | # csh and ksh which are not typically part of OpenEmbedded systems (but | ||
| 145 | # can be added via additional layers.) | ||
| 146 | SKIP_FILEDEPS:${PN} = '1' | ||
diff --git a/meta/recipes-extended/lzip/lzip_1.25.bb b/meta/recipes-extended/lzip/lzip_1.25.bb deleted file mode 100644 index 590e35cb75..0000000000 --- a/meta/recipes-extended/lzip/lzip_1.25.bb +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | SUMMARY = "Lossless data compressor based on the LZMA algorithm" | ||
| 2 | HOMEPAGE = "http://lzip.nongnu.org/lzip.html" | ||
| 3 | DESCRIPTION = "Lzip is a lossless data compressor with a user interface similar to the one of gzip or bzip2. Lzip uses a simplified form of the Lempel-Ziv-Markov chain-Algorithm (LZMA) stream format, chosen to maximize safety and interoperability." | ||
| 4 | SECTION = "console/utils" | ||
| 5 | LICENSE = "GPL-2.0-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=cca7f74ec83b7a9ce7ccd195aad471bd \ | ||
| 7 | file://decoder.cc;beginline=3;endline=16;md5=18c279060cd0be128188404b45837f88 \ | ||
| 8 | " | ||
| 9 | |||
| 10 | SRC_URI = "${SAVANNAH_GNU_MIRROR}/lzip/lzip-${PV}.tar.gz" | ||
| 11 | SRC_URI[sha256sum] = "09418a6d8fb83f5113f5bd856e09703df5d37bae0308c668d0f346e3d3f0a56f" | ||
| 12 | |||
| 13 | B = "${WORKDIR}/build" | ||
| 14 | do_configure[cleandirs] = "${B}" | ||
| 15 | |||
| 16 | CONFIGUREOPTS = "\ | ||
| 17 | '--srcdir=${S}' \ | ||
| 18 | '--prefix=${prefix}' \ | ||
| 19 | '--exec-prefix=${exec_prefix}' \ | ||
| 20 | '--bindir=${bindir}' \ | ||
| 21 | '--datadir=${datadir}' \ | ||
| 22 | '--infodir=${infodir}' \ | ||
| 23 | '--sysconfdir=${sysconfdir}' \ | ||
| 24 | 'CXX=${CXX}' \ | ||
| 25 | 'CPPFLAGS=${CPPFLAGS}' \ | ||
| 26 | 'CXXFLAGS=${CXXFLAGS}' \ | ||
| 27 | 'LDFLAGS=${LDFLAGS}' \ | ||
| 28 | " | ||
| 29 | |||
| 30 | do_configure () { | ||
| 31 | ${S}/configure ${CONFIGUREOPTS} | ||
| 32 | } | ||
| 33 | |||
| 34 | do_install () { | ||
| 35 | oe_runmake 'DESTDIR=${D}' install | ||
| 36 | # Info dir listing isn't interesting at this point so remove it if it exists. | ||
| 37 | if [ -e "${D}${infodir}/dir" ]; then | ||
| 38 | rm -f ${D}${infodir}/dir | ||
| 39 | fi | ||
| 40 | } | ||
| 41 | |||
| 42 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/lzip/lzlib_1.15.bb b/meta/recipes-extended/lzip/lzlib_1.15.bb deleted file mode 100644 index 087b781873..0000000000 --- a/meta/recipes-extended/lzip/lzlib_1.15.bb +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | SUMMARY = "Data compression library providing in-memory LZMA compression and decompression functions" | ||
| 2 | HOMEPAGE = "https://www.nongnu.org/lzip/lzlib.html" | ||
| 3 | DESCRIPTION = "Lzlib is a data compression library providing in-memory LZMA compression and decompression functions, including integrity checking of the decompressed data. The compressed data format used by the library is the lzip format. Lzlib is written in C. " | ||
| 4 | LICENSE = "BSD-2-Clause" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=04d943636aa1482e0a97d924d9f4f68f \ | ||
| 6 | " | ||
| 7 | |||
| 8 | SRC_URI = "${SAVANNAH_GNU_MIRROR}/lzip/lzlib/lzlib-${PV}.tar.gz" | ||
| 9 | SRC_URI[sha256sum] = "4afab907a46d5a7d14e927a1080c3f4d7e3ca5a0f9aea81747d8fed0292377ff" | ||
| 10 | |||
| 11 | B = "${WORKDIR}/build" | ||
| 12 | do_configure[cleandirs] = "${B}" | ||
| 13 | |||
| 14 | CONFIGUREOPTS = "\ | ||
| 15 | '--srcdir=${S}' \ | ||
| 16 | '--prefix=${prefix}' \ | ||
| 17 | '--exec-prefix=${exec_prefix}' \ | ||
| 18 | '--bindir=${bindir}' \ | ||
| 19 | '--datadir=${datadir}' \ | ||
| 20 | '--infodir=${infodir}' \ | ||
| 21 | '--libdir=${libdir}' \ | ||
| 22 | '--sysconfdir=${sysconfdir}' \ | ||
| 23 | '--enable-shared' \ | ||
| 24 | '--disable-static' \ | ||
| 25 | 'CC=${CC}' \ | ||
| 26 | 'CPPFLAGS=${CPPFLAGS}' \ | ||
| 27 | 'CXXFLAGS=${CXXFLAGS}' \ | ||
| 28 | 'LDFLAGS=${LDFLAGS}' \ | ||
| 29 | " | ||
| 30 | |||
| 31 | do_configure () { | ||
| 32 | ${S}/configure ${CONFIGUREOPTS} | ||
| 33 | } | ||
| 34 | |||
| 35 | do_install () { | ||
| 36 | oe_runmake 'DESTDIR=${D}' install | ||
| 37 | } | ||
| 38 | |||
| 39 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/man-db/files/99_mandb b/meta/recipes-extended/man-db/files/99_mandb deleted file mode 100644 index 9b8a1712b7..0000000000 --- a/meta/recipes-extended/man-db/files/99_mandb +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d man man 0755 /var/cache/man none | ||
diff --git a/meta/recipes-extended/man-db/man-db_2.13.1.bb b/meta/recipes-extended/man-db/man-db_2.13.1.bb deleted file mode 100644 index f044a47f7d..0000000000 --- a/meta/recipes-extended/man-db/man-db_2.13.1.bb +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command" | ||
| 2 | HOMEPAGE = "http://man-db.nongnu.org/" | ||
| 3 | DESCRIPTION = "man-db is an implementation of the standard Unix documentation system accessed using the man command. It uses a Berkeley DB database in place of the traditional flat-text whatis databases." | ||
| 4 | LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later & GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 6 | file://docs/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 7 | file://docs/COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ | ||
| 8 | " | ||
| 9 | |||
| 10 | SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/man-db/man-db-${PV}.tar.xz \ | ||
| 11 | file://99_mandb \ | ||
| 12 | " | ||
| 13 | SRC_URI[sha256sum] = "8afebb6f7eb6bb8542929458841f5c7e6f240e30c86358c1fbcefbea076c87d9" | ||
| 14 | |||
| 15 | DEPENDS = "libpipeline gdbm groff-native base-passwd" | ||
| 16 | RDEPENDS:${PN} += "base-passwd" | ||
| 17 | PACKAGE_WRITE_DEPS += "base-passwd" | ||
| 18 | |||
| 19 | inherit gettext pkgconfig autotools systemd | ||
| 20 | |||
| 21 | EXTRA_OECONF = "--with-pager=less --with-systemdsystemunitdir=${systemd_system_unitdir}" | ||
| 22 | EXTRA_AUTORECONF += "-I ${S}/gl/m4" | ||
| 23 | |||
| 24 | PACKAGECONFIG ??= "" | ||
| 25 | |||
| 26 | PACKAGECONFIG[bzip2] = "--with-bzip2=bzip2,ac_cv_prog_have_bzip2='',bzip2" | ||
| 27 | # util-linux col is deprecated and only builds for glibc | ||
| 28 | PACKAGECONFIG[col] = "--with-col=col,--with-col=,,util-linux-col" | ||
| 29 | PACKAGECONFIG[gzip] = "--with-gzip=gzip,ac_cv_prog_have_gzip='',gzip" | ||
| 30 | PACKAGECONFIG[lzip] = "--with-lzip=lzip,ac_cv_prog_have_lzip='',lzip" | ||
| 31 | PACKAGECONFIG[lzma] = "--with-lzma=lzma,ac_cv_prog_have_lzma='',xz" | ||
| 32 | PACKAGECONFIG[zstd] = "--with-zstd=zstd,ac_cv_prog_have_zstd='',zstd" | ||
| 33 | PACKAGECONFIG[xz] = "--with-xz=xz,ac_cv_prog_have_xz='',xz" | ||
| 34 | |||
| 35 | do_install() { | ||
| 36 | autotools_do_install | ||
| 37 | |||
| 38 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
| 39 | install -d ${D}/etc/default/volatiles | ||
| 40 | install -m 0644 ${UNPACKDIR}/99_mandb ${D}/etc/default/volatiles | ||
| 41 | fi | ||
| 42 | } | ||
| 43 | |||
| 44 | FILES:${PN} += "${prefix}/lib/tmpfiles.d" | ||
| 45 | |||
| 46 | FILES:${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so" | ||
| 47 | |||
| 48 | RDEPENDS:${PN} += "groff" | ||
| 49 | RRECOMMENDS:${PN} += "less" | ||
| 50 | # iconv from glibc-utils can be used to transform encoding | ||
| 51 | RRECOMMENDS:${PN}:append:libc-glibc = " glibc-utils" | ||
| 52 | RPROVIDES:${PN} += "man" | ||
| 53 | |||
| 54 | def compress_pkg(d): | ||
| 55 | if bb.utils.contains("INHERIT", "compress_doc", True, False, d): | ||
| 56 | compress = d.getVar("DOC_COMPRESS") | ||
| 57 | if compress == "gz": | ||
| 58 | return "gzip" | ||
| 59 | elif compress == "bz2": | ||
| 60 | return "bzip2" | ||
| 61 | elif compress == "xz": | ||
| 62 | return "xz" | ||
| 63 | return "" | ||
| 64 | |||
| 65 | RDEPENDS:${PN} += "${@compress_pkg(d)}" | ||
| 66 | |||
| 67 | SYSTEMD_SERVICE:${PN} = "man-db.timer man-db.service" | ||
| 68 | SYSTEMD_AUTO_ENABLE ?= "disable" | ||
diff --git a/meta/recipes-extended/man-pages/man-pages_6.15.bb b/meta/recipes-extended/man-pages/man-pages_6.15.bb deleted file mode 100644 index f01867d0f9..0000000000 --- a/meta/recipes-extended/man-pages/man-pages_6.15.bb +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | SUMMARY = "Linux man-pages" | ||
| 2 | DESCRIPTION = "The Linux man-pages project documents the Linux kernel and C library interfaces that are employed by user programs" | ||
| 3 | SECTION = "console/utils" | ||
| 4 | HOMEPAGE = "http://www.kernel.org/pub/linux/docs/man-pages" | ||
| 5 | LICENSE = "GPL-2.0-or-later & GPL-2.0-only & GPL-1.0-or-later & BSD-2-Clause & BSD-3-Clause & BSD-4-Clause-UC & MIT" | ||
| 6 | |||
| 7 | LIC_FILES_CHKSUM = "file://README;md5=c2d6fa1a74bdd79c25de6f4db7332294 \ | ||
| 8 | file://LICENSES/BSD-2-Clause.txt;md5=9e16594a228301089d759b4f178db91f \ | ||
| 9 | file://LICENSES/BSD-3-Clause.txt;md5=407426fcc1a243b7b2eff6e35c56aca9 \ | ||
| 10 | file://LICENSES/BSD-4-Clause-UC.txt;md5=1da3cf8ad50cd8d5d1de3cfc53196d01 \ | ||
| 11 | file://LICENSES/GPL-1.0-or-later.txt;md5=e5b7c80002ef72ab868b43ce47b65125 \ | ||
| 12 | file://LICENSES/GPL-2.0-only.txt;md5=3d26203303a722dedc6bf909d95ba815 \ | ||
| 13 | file://LICENSES/GPL-2.0-or-later.txt;md5=3d26203303a722dedc6bf909d95ba815 \ | ||
| 14 | file://LICENSES/Linux-man-pages-1-para.txt;md5=97ab07585ce6700273bc66461bf46bf2 \ | ||
| 15 | file://LICENSES/Linux-man-pages-copyleft-2-para.txt;md5=1cafc230857da5e43f3d509c425d3c64 \ | ||
| 16 | file://LICENSES/Linux-man-pages-copyleft.txt;md5=173b960c686ff2d26f043ddaeb63f6ce \ | ||
| 17 | file://LICENSES/Linux-man-pages-copyleft-var.txt;md5=d33708712c5918521f47f23b0c4e0d20 \ | ||
| 18 | file://LICENSES/MIT.txt;md5=7dda4e90ded66ab88b86f76169f28663 \ | ||
| 19 | " | ||
| 20 | SRC_URI = "${KERNELORG_MIRROR}/linux/docs/${BPN}/${BP}.tar.gz \ | ||
| 21 | " | ||
| 22 | |||
| 23 | SRC_URI[sha256sum] = "f0ede747b98732cb6d5bd36e9ab54101ea7ae5f78a8b8d7289ced01c1a6ec937" | ||
| 24 | |||
| 25 | inherit manpages lib_package | ||
| 26 | |||
| 27 | MAN_PKG = "${PN}" | ||
| 28 | |||
| 29 | PACKAGECONFIG ??= "" | ||
| 30 | PACKAGECONFIG[manpages] = "" | ||
| 31 | |||
| 32 | do_configure[noexec] = "1" | ||
| 33 | do_compile[noexec] = "1" | ||
| 34 | |||
| 35 | EXTRA_OEMAKE += "-R" | ||
| 36 | do_install() { | ||
| 37 | oe_runmake install prefix=${prefix} DESTDIR=${D} | ||
| 38 | rm -rf ${D}${mandir}/man3/crypt.3 | ||
| 39 | rm -rf ${D}${mandir}/man3/crypt_r.3 | ||
| 40 | rm -rf ${D}${mandir}/man3/getspnam.3 | ||
| 41 | rm -rf ${D}${mandir}/man5/passwd.5 | ||
| 42 | } | ||
| 43 | |||
| 44 | RDEPENDS:${PN}-bin += " \ | ||
| 45 | bash \ | ||
| 46 | " | ||
| 47 | |||
| 48 | # Only deliveres man-pages so FILES:${PN} gets everything | ||
| 49 | FILES:${PN}-doc = "" | ||
| 50 | FILES:${PN} = "${mandir}/*" | ||
diff --git a/meta/recipes-extended/mc/files/nomandate.patch b/meta/recipes-extended/mc/files/nomandate.patch deleted file mode 100644 index 297d2c7bd1..0000000000 --- a/meta/recipes-extended/mc/files/nomandate.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From 75b0c46bce7438fd4d4cf3d18c2d83f874793111 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 3 | Date: Tue, 4 Feb 2020 18:12:15 +0000 | ||
| 4 | Subject: [PATCH] mc: Fix manpage date indeterminism | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | The man page date can vary depending upon the host perl, e.g. in Russian | ||
| 10 | some versions print 'июня', others 'Июнь' or Polish 'czerwca' or 'czerwiec'. | ||
| 11 | Rather than depend upon perl-native to fix this, just remove the date from | ||
| 12 | the manpages. | ||
| 13 | |||
| 14 | RP 2020/2/4 | ||
| 15 | |||
| 16 | Upstream-Status: Inappropriate [OE specficic reproducibility workaround] | ||
| 17 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 18 | --- | ||
| 19 | doc/man/date-of-man-include.am | 2 +- | ||
| 20 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 21 | |||
| 22 | diff --git a/doc/man/date-of-man-include.am b/doc/man/date-of-man-include.am | ||
| 23 | index ede02e4..19300eb 100644 | ||
| 24 | --- a/doc/man/date-of-man-include.am | ||
| 25 | +++ b/doc/man/date-of-man-include.am | ||
| 26 | @@ -1,5 +1,5 @@ | ||
| 27 | SED_PARAMETERS = \ | ||
| 28 | - -e "s/%DATE_OF_MAN_PAGE%/$${MAN_DATE}/g" \ | ||
| 29 | + -e "s/%DATE_OF_MAN_PAGE%//g" \ | ||
| 30 | -e "s/%MAN_VERSION%/@MAN_VERSION@/g" \ | ||
| 31 | -e "s{%sysconfdir%{@sysconfdir@{g" \ | ||
| 32 | -e "s{%libexecdir%{@libexecdir@{g" \ | ||
diff --git a/meta/recipes-extended/mc/mc_4.8.33.bb b/meta/recipes-extended/mc/mc_4.8.33.bb deleted file mode 100644 index fd18edf7be..0000000000 --- a/meta/recipes-extended/mc/mc_4.8.33.bb +++ /dev/null | |||
| @@ -1,59 +0,0 @@ | |||
| 1 | SUMMARY = "Midnight Commander is an ncurses based file manager" | ||
| 2 | HOMEPAGE = "http://www.midnight-commander.org/" | ||
| 3 | DESCRIPTION = "GNU Midnight Commander is a visual file manager, licensed under GNU General Public License and therefore qualifies as Free Software. It's a feature rich full-screen text mode application that allows you to copy, move and delete files and whole directory trees, search for files and run commands in the subshell. Internal viewer and editor are included." | ||
| 4 | LICENSE = "GPL-3.0-only" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=270bbafe360e73f9840bd7981621f9c2" | ||
| 6 | SECTION = "console/utils" | ||
| 7 | DEPENDS = "ncurses glib-2.0 util-linux file-replacement-native" | ||
| 8 | RDEPENDS:${PN} = "ncurses-terminfo-base" | ||
| 9 | RRECOMMENDS:${PN} = "ncurses-terminfo" | ||
| 10 | |||
| 11 | SRC_URI = "http://ftp.midnight-commander.org/${BPN}-${PV}.tar.bz2 \ | ||
| 12 | file://nomandate.patch \ | ||
| 13 | " | ||
| 14 | SRC_URI[sha256sum] = "a3ceb0af84226fedfe5f339464ff2849c3f6bf0321b72027c47b2c10e66a6dba" | ||
| 15 | |||
| 16 | inherit autotools gettext pkgconfig | ||
| 17 | |||
| 18 | # | ||
| 19 | # Both Samba (smb) and sftp require package delivered from meta-openembedded | ||
| 20 | # | ||
| 21 | PACKAGECONFIG ??= "" | ||
| 22 | PACKAGECONFIG[sftp] = "--enable-vfs-sftp,--disable-vfs-sftp,libssh2," | ||
| 23 | |||
| 24 | # enable NCURSES_WIDECHAR=1 only if ENABLE_WIDEC has not been explicitly disabled (e.g. by the distro config). | ||
| 25 | # When compiling against the ncurses library, NCURSES_WIDECHAR needs to explicitly set to 0 in this case. | ||
| 26 | CFLAGS:append:libc-musl = "${@' -DNCURSES_WIDECHAR=1' if bb.utils.to_boolean((d.getVar('ENABLE_WIDEC') or 'True')) else ' -DNCURSES_WIDECHAR=0'}" | ||
| 27 | EXTRA_OECONF = "--with-screen=ncurses --without-gpm-mouse --without-x --disable-configure-args" | ||
| 28 | EXTRANATIVEPATH += "file-native" | ||
| 29 | |||
| 30 | CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" | ||
| 31 | CACHED_CONFIGUREVARS += "ac_cv_path_PERL_FOR_BUILD='/usr/bin/env perl'" | ||
| 32 | CACHED_CONFIGUREVARS += "ac_cv_path_PYTHON='/usr/bin/env python'" | ||
| 33 | CACHED_CONFIGUREVARS += "ac_cv_path_GREP='/usr/bin/env grep'" | ||
| 34 | CACHED_CONFIGUREVARS += "ac_cv_path_ZIP='/usr/bin/zip'" | ||
| 35 | CACHED_CONFIGUREVARS += "ac_cv_path_UNZIP='/usr/bin/unzip'" | ||
| 36 | CACHED_CONFIGUREVARS += "mc_cv_have_zipinfo=yes" | ||
| 37 | |||
| 38 | do_install:append () { | ||
| 39 | sed -i -e '1s,#!.*perl,#!${bindir}/env perl,' ${D}${libexecdir}/mc/extfs.d/* | ||
| 40 | |||
| 41 | rm ${D}${libexecdir}/mc/extfs.d/s3+ ${D}${libexecdir}/mc/extfs.d/uc1541 | ||
| 42 | } | ||
| 43 | |||
| 44 | PACKAGES =+ "${BPN}-helpers-perl ${BPN}-helpers ${BPN}-shell" | ||
| 45 | |||
| 46 | SUMMARY:${BPN}-helpers-perl = "Midnight Commander Perl-based helper scripts" | ||
| 47 | FILES:${BPN}-helpers-perl = "${libexecdir}/mc/extfs.d/a+ ${libexecdir}/mc/extfs.d/apt+ \ | ||
| 48 | ${libexecdir}/mc/extfs.d/deb ${libexecdir}/mc/extfs.d/deba \ | ||
| 49 | ${libexecdir}/mc/extfs.d/debd ${libexecdir}/mc/extfs.d/dpkg+ \ | ||
| 50 | ${libexecdir}/mc/extfs.d/mailfs ${libexecdir}/mc/extfs.d/patchfs \ | ||
| 51 | ${libexecdir}/mc/extfs.d/rpms+ ${libexecdir}/mc/extfs.d/ulib \ | ||
| 52 | ${libexecdir}/mc/extfs.d/uzip" | ||
| 53 | RDEPENDS:${BPN}-helpers-perl = "perl" | ||
| 54 | |||
| 55 | SUMMARY:${BPN}-helpers = "Midnight Commander shell helper scripts" | ||
| 56 | FILES:${BPN}-helpers = "${libexecdir}/mc/extfs.d/* ${libexecdir}/mc/ext.d/*" | ||
| 57 | |||
| 58 | SUMMARY:${BPN}-shell = "Midnight Commander Shell scripts" | ||
| 59 | FILES:${BPN}-shell = "${libexecdir}/mc/shell" | ||
diff --git a/meta/recipes-extended/mdadm/files/0001-Fix-the-path-of-corosync-and-dlm-header-files-check.patch b/meta/recipes-extended/mdadm/files/0001-Fix-the-path-of-corosync-and-dlm-header-files-check.patch deleted file mode 100644 index 8598aea1f1..0000000000 --- a/meta/recipes-extended/mdadm/files/0001-Fix-the-path-of-corosync-and-dlm-header-files-check.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 232101e2fcc6359fb6db2bc232570e373e368c75 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Maxin B. John" <maxin.john@intel.com> | ||
| 3 | Date: Tue, 9 Feb 2016 11:44:01 +0200 | ||
| 4 | Subject: [PATCH] Fix the path of corosync and dlm header files check | ||
| 5 | |||
| 6 | Original Makefile will check headers on host instead of sysroot. | ||
| 7 | Fix it. | ||
| 8 | |||
| 9 | Upstream-Status: Inappropriate [Yocto specific] | ||
| 10 | |||
| 11 | Signed-off-by: Maxin B. John <maxin.john@intel.com> | ||
| 12 | --- | ||
| 13 | Makefile | 4 ++-- | ||
| 14 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/Makefile b/Makefile | ||
| 17 | index bcd092de..0a78cd22 100644 | ||
| 18 | --- a/Makefile | ||
| 19 | +++ b/Makefile | ||
| 20 | @@ -130,8 +130,8 @@ FAILED_SLOTS_DIR = $(RUN_DIR)/failed-slots | ||
| 21 | SYSTEMD_DIR=/lib/systemd/system | ||
| 22 | LIB_DIR=/usr/libexec/mdadm | ||
| 23 | |||
| 24 | -COROSYNC:=$(shell [ -d /usr/include/corosync ] || echo -DNO_COROSYNC) | ||
| 25 | -DLM:=$(shell [ -f /usr/include/libdlm.h ] || echo -DNO_DLM) | ||
| 26 | +COROSYNC:=$(shell [ -f $(SYSROOT)/usr/include/corosync/cmap.h ] || echo -DNO_COROSYNC) | ||
| 27 | +DLM:=$(shell [ -f $(SYSROOT)/usr/include/libdlm.h ] || echo -DNO_DLM) | ||
| 28 | |||
| 29 | DIRFLAGS = -DMAP_DIR=\"$(MAP_DIR)\" -DMAP_FILE=\"$(MAP_FILE)\" | ||
| 30 | DIRFLAGS += -DMDMON_DIR=\"$(MDMON_DIR)\" | ||
diff --git a/meta/recipes-extended/mdadm/files/0001-Makefile-install-mdcheck.patch b/meta/recipes-extended/mdadm/files/0001-Makefile-install-mdcheck.patch deleted file mode 100644 index bb4e8d0604..0000000000 --- a/meta/recipes-extended/mdadm/files/0001-Makefile-install-mdcheck.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From 407691e11037709af888ce2cf6bd5eac6971ac61 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Tue, 25 Jan 2022 16:25:01 +0800 | ||
| 4 | Subject: [PATCH] Makefile: install mdcheck | ||
| 5 | |||
| 6 | The mdcheck_xxx.service files use mdcheck, but it's not installed. | ||
| 7 | We need to install this script. | ||
| 8 | |||
| 9 | Upstream-Status: Submitted [Sent patch to maintainer] | ||
| 10 | |||
| 11 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 12 | --- | ||
| 13 | Makefile | 1 + | ||
| 14 | 1 file changed, 1 insertion(+) | ||
| 15 | |||
| 16 | diff --git a/Makefile b/Makefile | ||
| 17 | index 981e16fa..b28e7855 100644 | ||
| 18 | --- a/Makefile | ||
| 19 | +++ b/Makefile | ||
| 20 | @@ -345,6 +345,7 @@ install-systemd: systemd/mdmon@.service | ||
| 21 | install-bin: mdadm mdmon | ||
| 22 | $(INSTALL) -D $(STRIP) -m 755 mdadm $(DESTDIR)$(BINDIR)/mdadm | ||
| 23 | $(INSTALL) -D $(STRIP) -m 755 mdmon $(DESTDIR)$(BINDIR)/mdmon | ||
| 24 | + $(INSTALL) -D -m 755 misc/mdcheck $(DESTDIR)/usr/share/mdadm/mdcheck | ||
| 25 | |||
| 26 | uninstall: | ||
| 27 | rm -f $(DESTDIR)$(MAN8DIR)/mdadm.8 $(DESTDIR)$(MAN8DIR)/mdmon.8 $(DESTDIR)$(MAN4DIR)/md.4 $(DESTDIR)$(MAN5DIR)/mdadm.conf.5 $(DESTDIR)$(BINDIR)/mdadm | ||
diff --git a/meta/recipes-extended/mdadm/files/0001-restripe.c-Use-_FILE_OFFSET_BITS-to-enable-largefile.patch b/meta/recipes-extended/mdadm/files/0001-restripe.c-Use-_FILE_OFFSET_BITS-to-enable-largefile.patch deleted file mode 100644 index aa874dbec3..0000000000 --- a/meta/recipes-extended/mdadm/files/0001-restripe.c-Use-_FILE_OFFSET_BITS-to-enable-largefile.patch +++ /dev/null | |||
| @@ -1,155 +0,0 @@ | |||
| 1 | From 9e3b15adf86147fe581cd2159cb99708abe26158 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Thu, 10 Nov 2022 12:31:22 -0800 | ||
| 4 | Subject: [PATCH] restripe.c: Use _FILE_OFFSET_BITS to enable largefile support | ||
| 5 | |||
| 6 | Instead of using the lseek64 and friends, its better to enable it via | ||
| 7 | the feature macro _FILE_OFFSET_BITS = 64 and let the C library deal with | ||
| 8 | the width of types | ||
| 9 | |||
| 10 | Upstream-Status: Submitted [https://lore.kernel.org/linux-raid/20221110225546.337164-1-raj.khem@gmail.com/] | ||
| 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 12 | --- | ||
| 13 | raid6check.c | 11 +++++++---- | ||
| 14 | restripe.c | 13 ++++++++----- | ||
| 15 | swap_super.c | 13 +++++++------ | ||
| 16 | 3 files changed, 22 insertions(+), 15 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/raid6check.c b/raid6check.c | ||
| 19 | index 99477761..8e7f1421 100644 | ||
| 20 | --- a/raid6check.c | ||
| 21 | +++ b/raid6check.c | ||
| 22 | @@ -22,6 +22,9 @@ | ||
| 23 | * Based on "restripe.c" from "mdadm" codebase | ||
| 24 | */ | ||
| 25 | |||
| 26 | +/* Enable largefile support */ | ||
| 27 | +#define _FILE_OFFSET_BITS 64 | ||
| 28 | + | ||
| 29 | #include "mdadm.h" | ||
| 30 | #include <stdint.h> | ||
| 31 | #include <sys/mman.h> | ||
| 32 | @@ -284,9 +287,9 @@ int manual_repair(int chunk_size, int syndrome_disks, | ||
| 33 | } | ||
| 34 | |||
| 35 | int write_res1, write_res2; | ||
| 36 | - off64_t seek_res; | ||
| 37 | + off_t seek_res; | ||
| 38 | |||
| 39 | - seek_res = lseek64(source[fd1], | ||
| 40 | + seek_res = lseek(source[fd1], | ||
| 41 | offsets[fd1] + start * chunk_size, SEEK_SET); | ||
| 42 | if (seek_res < 0) { | ||
| 43 | fprintf(stderr, "lseek failed for failed_disk1\n"); | ||
| 44 | @@ -294,7 +297,7 @@ int manual_repair(int chunk_size, int syndrome_disks, | ||
| 45 | } | ||
| 46 | write_res1 = write(source[fd1], blocks[failed_slot1], chunk_size); | ||
| 47 | |||
| 48 | - seek_res = lseek64(source[fd2], | ||
| 49 | + seek_res = lseek(source[fd2], | ||
| 50 | offsets[fd2] + start * chunk_size, SEEK_SET); | ||
| 51 | if (seek_res < 0) { | ||
| 52 | fprintf(stderr, "lseek failed for failed_disk2\n"); | ||
| 53 | @@ -379,7 +382,7 @@ int check_stripes(struct mdinfo *info, int *source, unsigned long long *offsets, | ||
| 54 | goto exitCheck; | ||
| 55 | } | ||
| 56 | for (i = 0 ; i < raid_disks ; i++) { | ||
| 57 | - off64_t seek_res = lseek64(source[i], offsets[i] + start * chunk_size, | ||
| 58 | + off_t seek_res = lseek(source[i], offsets[i] + start * chunk_size, | ||
| 59 | SEEK_SET); | ||
| 60 | if (seek_res < 0) { | ||
| 61 | fprintf(stderr, "lseek to source %d failed\n", i); | ||
| 62 | diff --git a/restripe.c b/restripe.c | ||
| 63 | index 5e126eb7..af76c634 100644 | ||
| 64 | --- a/restripe.c | ||
| 65 | +++ b/restripe.c | ||
| 66 | @@ -22,6 +22,9 @@ | ||
| 67 | * Email: <neilb@suse.de> | ||
| 68 | */ | ||
| 69 | |||
| 70 | +/* Enable largefile support */ | ||
| 71 | +#define _FILE_OFFSET_BITS 64 | ||
| 72 | + | ||
| 73 | #include "mdadm.h" | ||
| 74 | #include "xmalloc.h" | ||
| 75 | |||
| 76 | @@ -583,7 +586,7 @@ int save_stripes(int *source, unsigned long long *offsets, | ||
| 77 | raid_disks, level, layout); | ||
| 78 | if (dnum < 0) abort(); | ||
| 79 | if (source[dnum] < 0 || | ||
| 80 | - lseek64(source[dnum], | ||
| 81 | + lseek(source[dnum], | ||
| 82 | offsets[dnum] + offset, 0) < 0 || | ||
| 83 | read(source[dnum], buf+disk * chunk_size, | ||
| 84 | chunk_size) != chunk_size) { | ||
| 85 | @@ -756,8 +759,8 @@ int restore_stripes(int *dest, unsigned long long *offsets, | ||
| 86 | raid_disks, level, layout); | ||
| 87 | if (src_buf == NULL) { | ||
| 88 | /* read from file */ | ||
| 89 | - if (lseek64(source, read_offset, 0) != | ||
| 90 | - (off64_t)read_offset) { | ||
| 91 | + if (lseek(source, read_offset, 0) != | ||
| 92 | + (off_t)read_offset) { | ||
| 93 | rv = -1; | ||
| 94 | goto abort; | ||
| 95 | } | ||
| 96 | @@ -818,7 +821,7 @@ int restore_stripes(int *dest, unsigned long long *offsets, | ||
| 97 | } | ||
| 98 | for (i=0; i < raid_disks ; i++) | ||
| 99 | if (dest[i] >= 0) { | ||
| 100 | - if (lseek64(dest[i], | ||
| 101 | + if (lseek(dest[i], | ||
| 102 | offsets[i]+offset, 0) < 0) { | ||
| 103 | rv = -1; | ||
| 104 | goto abort; | ||
| 105 | @@ -868,7 +871,7 @@ int test_stripes(int *source, unsigned long long *offsets, | ||
| 106 | int disk; | ||
| 107 | |||
| 108 | for (i = 0 ; i < raid_disks ; i++) { | ||
| 109 | - if ((lseek64(source[i], offsets[i]+start, 0) < 0) || | ||
| 110 | + if ((lseek(source[i], offsets[i]+start, 0) < 0) || | ||
| 111 | (read(source[i], stripes[i], chunk_size) != | ||
| 112 | chunk_size)) { | ||
| 113 | free(q); | ||
| 114 | diff --git a/swap_super.c b/swap_super.c | ||
| 115 | index b6db5743..18c89e2b 100644 | ||
| 116 | --- a/swap_super.c | ||
| 117 | +++ b/swap_super.c | ||
| 118 | @@ -1,3 +1,6 @@ | ||
| 119 | +/* Enable largefile support */ | ||
| 120 | +#define _FILE_OFFSET_BITS 64 | ||
| 121 | + | ||
| 122 | #include <unistd.h> | ||
| 123 | #include <stdlib.h> | ||
| 124 | #include <fcntl.h> | ||
| 125 | @@ -16,8 +19,6 @@ | ||
| 126 | |||
| 127 | #define MD_NEW_SIZE_SECTORS(x) ((x & ~(MD_RESERVED_SECTORS - 1)) - MD_RESERVED_SECTORS) | ||
| 128 | |||
| 129 | -extern long long lseek64(int, long long, int); | ||
| 130 | - | ||
| 131 | int main(int argc, char *argv[]) | ||
| 132 | { | ||
| 133 | int fd, i; | ||
| 134 | @@ -38,8 +39,8 @@ int main(int argc, char *argv[]) | ||
| 135 | exit(1); | ||
| 136 | } | ||
| 137 | offset = MD_NEW_SIZE_SECTORS(size) * 512LL; | ||
| 138 | - if (lseek64(fd, offset, 0) < 0LL) { | ||
| 139 | - perror("lseek64"); | ||
| 140 | + if (lseek(fd, offset, 0) < 0LL) { | ||
| 141 | + perror("lseek"); | ||
| 142 | exit(1); | ||
| 143 | } | ||
| 144 | if (read(fd, super, 4096) != 4096) { | ||
| 145 | @@ -68,8 +69,8 @@ int main(int argc, char *argv[]) | ||
| 146 | super[32*4+10*4 +i] = t; | ||
| 147 | } | ||
| 148 | |||
| 149 | - if (lseek64(fd, offset, 0) < 0LL) { | ||
| 150 | - perror("lseek64"); | ||
| 151 | + if (lseek(fd, offset, 0) < 0LL) { | ||
| 152 | + perror("lseek"); | ||
| 153 | exit(1); | ||
| 154 | } | ||
| 155 | if (write(fd, super, 4096) != 4096) { | ||
diff --git a/meta/recipes-extended/mdadm/files/0002-Create.c-include-linux-falloc.h-for-FALLOC_FL_ZERO_R.patch b/meta/recipes-extended/mdadm/files/0002-Create.c-include-linux-falloc.h-for-FALLOC_FL_ZERO_R.patch deleted file mode 100644 index e425fc446e..0000000000 --- a/meta/recipes-extended/mdadm/files/0002-Create.c-include-linux-falloc.h-for-FALLOC_FL_ZERO_R.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From 8de073c637a1ea968b7304f373a20b13a4a47bbc Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Kanavin <alex@linutronix.de> | ||
| 3 | Date: Tue, 12 Mar 2024 10:54:08 +0100 | ||
| 4 | Subject: [PATCH] Create.c: include linux/falloc.h for FALLOC_FL_ZERO_RANGE | ||
| 5 | definition | ||
| 6 | |||
| 7 | glibc provides this through fcntl.h but musl does not - should | ||
| 8 | be reported and fixed there. | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate [musl-specific issue] | ||
| 11 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 12 | --- | ||
| 13 | Create.c | 1 + | ||
| 14 | 1 file changed, 1 insertion(+) | ||
| 15 | |||
| 16 | diff --git a/Create.c b/Create.c | ||
| 17 | index fd6c9215..3210a03e 100644 | ||
| 18 | --- a/Create.c | ||
| 19 | +++ b/Create.c | ||
| 20 | @@ -33,6 +33,7 @@ | ||
| 21 | #include <signal.h> | ||
| 22 | #include <sys/signalfd.h> | ||
| 23 | #include <sys/wait.h> | ||
| 24 | +#include <linux/falloc.h> | ||
| 25 | |||
| 26 | #ifndef FALLOC_FL_ZERO_RANGE | ||
| 27 | #define FALLOC_FL_ZERO_RANGE 16 | ||
diff --git a/meta/recipes-extended/mdadm/files/mdadm.init b/meta/recipes-extended/mdadm/files/mdadm.init deleted file mode 100644 index cab91b9acc..0000000000 --- a/meta/recipes-extended/mdadm/files/mdadm.init +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # | ||
| 3 | # Start the MD monitor daemon for all active MD arrays if desired. | ||
| 4 | # | ||
| 5 | ### BEGIN INIT INFO | ||
| 6 | # Provides: mdadm | ||
| 7 | # Required-Start: $local_fs $syslog mdadm-raid | ||
| 8 | # Required-Stop: $local_fs $syslog mdadm-raid | ||
| 9 | # Default-Start: 2 3 4 5 | ||
| 10 | # Default-Stop: 0 1 6 | ||
| 11 | # Short-Description: MD monitoring daemon | ||
| 12 | # Description: mdadm provides a monitor mode, in which it will scan for | ||
| 13 | # problems with the MD devices. If a problem is found, the | ||
| 14 | # administrator is alerted via email, or a custom script is | ||
| 15 | # run. | ||
| 16 | ### END INIT INFO | ||
| 17 | # | ||
| 18 | |||
| 19 | MDADM=/sbin/mdadm | ||
| 20 | RUNDIR=/var/run/mdadm | ||
| 21 | PIDFILE=$RUNDIR/monitor.pid | ||
| 22 | DEBIANCONFIG=/etc/default/mdadm | ||
| 23 | |||
| 24 | test -x "$MDADM" || exit 0 | ||
| 25 | |||
| 26 | test -f /proc/mdstat || exit 0 | ||
| 27 | |||
| 28 | START_DAEMON=true | ||
| 29 | test -f $DEBIANCONFIG && . $DEBIANCONFIG | ||
| 30 | |||
| 31 | . /lib/lsb/init-functions | ||
| 32 | |||
| 33 | # Include functions | ||
| 34 | . /etc/init.d/functions | ||
| 35 | |||
| 36 | case "${1:-}" in | ||
| 37 | start) | ||
| 38 | if is_true $START_DAEMON; then | ||
| 39 | log_daemon_msg "Starting MD monitoring service" "mdadm --monitor" | ||
| 40 | mkdir -p $RUNDIR | ||
| 41 | start-stop-daemon -S -p $PIDFILE -x $MDADM -- \ | ||
| 42 | --monitor --pid-file $PIDFILE --daemonise --scan ${DAEMON_OPTIONS:-} | ||
| 43 | RETVAL=$? | ||
| 44 | log_end_msg $RETVAL | ||
| 45 | exit $RETVAL | ||
| 46 | fi | ||
| 47 | ;; | ||
| 48 | stop) | ||
| 49 | if [ -f $PIDFILE ] ; then | ||
| 50 | log_daemon_msg "Stopping MD monitoring service" "mdadm --monitor" | ||
| 51 | start-stop-daemon -K -p $PIDFILE -x $MDADM | ||
| 52 | RETVAL=$? | ||
| 53 | rm -f $PIDFILE | ||
| 54 | log_end_msg $RETVAL | ||
| 55 | exit $RETVAL | ||
| 56 | fi | ||
| 57 | ;; | ||
| 58 | status) | ||
| 59 | status -p $PIDFILE "$MDADM" && exit 0 || exit $? | ||
| 60 | ;; | ||
| 61 | restart|reload|force-reload) | ||
| 62 | ${0:-} stop | ||
| 63 | ${0:-} start | ||
| 64 | ;; | ||
| 65 | *) | ||
| 66 | echo "Usage: ${0:-} {start|stop|status|restart|reload|force-reload}" >&2 | ||
| 67 | exit 1 | ||
| 68 | ;; | ||
| 69 | esac | ||
| 70 | |||
| 71 | exit 0 | ||
| 72 | |||
diff --git a/meta/recipes-extended/mdadm/files/run-ptest b/meta/recipes-extended/mdadm/files/run-ptest deleted file mode 100644 index c3f201491e..0000000000 --- a/meta/recipes-extended/mdadm/files/run-ptest +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | logdir=$PWD/logs | ||
| 4 | targetdir=/mdadm-testing-dir | ||
| 5 | |||
| 6 | rm -rf $targetdir $logdir | ||
| 7 | mkdir -p $targetdir $logdir | ||
| 8 | |||
| 9 | # make the test continue to execute even one fail | ||
| 10 | ./test --keep-going --disable-integrity --skip-broken --save-logs --logdir=$logdir | ||
diff --git a/meta/recipes-extended/mdadm/files/xmalloc.patch b/meta/recipes-extended/mdadm/files/xmalloc.patch deleted file mode 100644 index 61774721d0..0000000000 --- a/meta/recipes-extended/mdadm/files/xmalloc.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From c5cf5a83be4e3ce04ebf3250f77aeb465eeb53a1 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xiao Ni <xni@redhat.com> | ||
| 3 | Date: Fri, 17 Jan 2025 15:15:40 +0800 | ||
| 4 | Subject: [PATCH] mdadm/raid6check: add xmalloc.h to raid6check.c | ||
| 5 | |||
| 6 | It reports building error: | ||
| 7 | raid6check.c:324:26: error: implicit declaration of function xmalloc | ||
| 8 | |||
| 9 | Add xmalloc.h to raid6check.c file to fix this. | ||
| 10 | |||
| 11 | Signed-off-by: Xiao Ni <xni@redhat.com> | ||
| 12 | Link: https://lore.kernel.org/r/20250117071540.4094-1-xni@redhat.com | ||
| 13 | Signed-off-by: Song Liu <song@kernel.org> | ||
| 14 | |||
| 15 | Upstream-Status: Backport [https://web.git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/?h=main&id=e0df6c4c984d564e9e40913727e916a6cd8f466e] | ||
| 16 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 17 | --- | ||
| 18 | raid6check.c | 1 + | ||
| 19 | 1 file changed, 1 insertion(+) | ||
| 20 | |||
| 21 | diff --git a/raid6check.c b/raid6check.c | ||
| 22 | index 8e7f1421..486b10c6 100644 | ||
| 23 | --- a/raid6check.c | ||
| 24 | +++ b/raid6check.c | ||
| 25 | @@ -26,6 +26,7 @@ | ||
| 26 | #define _FILE_OFFSET_BITS 64 | ||
| 27 | |||
| 28 | #include "mdadm.h" | ||
| 29 | +#include "xmalloc.h" | ||
| 30 | #include <stdint.h> | ||
| 31 | #include <sys/mman.h> | ||
| 32 | |||
diff --git a/meta/recipes-extended/mdadm/mdadm_4.4.bb b/meta/recipes-extended/mdadm/mdadm_4.4.bb deleted file mode 100644 index 26a60e4c1a..0000000000 --- a/meta/recipes-extended/mdadm/mdadm_4.4.bb +++ /dev/null | |||
| @@ -1,108 +0,0 @@ | |||
| 1 | SUMMARY = "Tool for managing software RAID under Linux" | ||
| 2 | HOMEPAGE = "http://www.kernel.org/pub/linux/utils/raid/mdadm/" | ||
| 3 | DESCRIPTION = "mdadm is a Linux utility used to manage and monitor software RAID devices." | ||
| 4 | |||
| 5 | # Some files are GPL-2.0-only while others are GPL-2.0-or-later. | ||
| 6 | LICENSE = "GPL-2.0-only & GPL-2.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 8 | file://mdmon.c;beginline=4;endline=18;md5=af7d8444d9c4d3e5c7caac0d9d34039d \ | ||
| 9 | file://mdadm.h;beglinlne=4;endline=22;md5=462bc9936ac0d3da110191a3f9994161" | ||
| 10 | |||
| 11 | SRC_URI = "git://git.kernel.org/pub/scm/utils/mdadm/mdadm.git;protocol=https;branch=main;tag=mdadm-${PV} \ | ||
| 12 | file://run-ptest \ | ||
| 13 | file://0001-Fix-the-path-of-corosync-and-dlm-header-files-check.patch \ | ||
| 14 | file://mdadm.init \ | ||
| 15 | file://0001-Makefile-install-mdcheck.patch \ | ||
| 16 | file://0001-restripe.c-Use-_FILE_OFFSET_BITS-to-enable-largefile.patch \ | ||
| 17 | file://0002-Create.c-include-linux-falloc.h-for-FALLOC_FL_ZERO_R.patch \ | ||
| 18 | file://xmalloc.patch \ | ||
| 19 | " | ||
| 20 | |||
| 21 | SRCREV = "8e56efac9afd7080bb42bae4b77cdad5f345633a" | ||
| 22 | |||
| 23 | inherit ptest systemd | ||
| 24 | |||
| 25 | DEPENDS = "udev" | ||
| 26 | |||
| 27 | SYSTEMD_SERVICE:${PN} = "mdmonitor.service" | ||
| 28 | SYSTEMD_AUTO_ENABLE = "disable" | ||
| 29 | |||
| 30 | # PPC64 and MIPS64 uses long long for u64 in the kernel, but powerpc's asm/types.h | ||
| 31 | # prevents 64-bit userland from seeing this definition, instead defaulting | ||
| 32 | # to u64 == long in userspace. Define __SANE_USERSPACE_TYPES__ to get | ||
| 33 | # int-ll64.h included | ||
| 34 | CFLAGS:append:powerpc64 = ' -D__SANE_USERSPACE_TYPES__' | ||
| 35 | CFLAGS:append:mipsarchn64 = ' -D__SANE_USERSPACE_TYPES__' | ||
| 36 | CFLAGS:append:mipsarchn32 = ' -D__SANE_USERSPACE_TYPES__' | ||
| 37 | |||
| 38 | EXTRA_OEMAKE = 'CHECK_RUN_DIR=0 CWFLAGS="" CXFLAGS="${CFLAGS}" SYSTEMD_DIR=${systemd_system_unitdir} \ | ||
| 39 | BINDIR="${base_sbindir}" UDEVDIR="${nonarch_base_libdir}/udev" LDFLAGS="${LDFLAGS}" \ | ||
| 40 | SYSROOT="${STAGING_DIR_TARGET}" STRIP=' | ||
| 41 | |||
| 42 | DEBUG_OPTIMIZATION:append = " -Wno-error" | ||
| 43 | |||
| 44 | do_install() { | ||
| 45 | oe_runmake 'DESTDIR=${D}' install install-systemd | ||
| 46 | install -d ${D}/${sysconfdir}/ | ||
| 47 | install -m 644 ${S}/documentation/mdadm.conf-example ${D}${sysconfdir}/mdadm.conf | ||
| 48 | install -d ${D}/${sysconfdir}/init.d | ||
| 49 | install -m 755 ${UNPACKDIR}/mdadm.init ${D}${sysconfdir}/init.d/mdmonitor | ||
| 50 | } | ||
| 51 | |||
| 52 | do_compile_ptest() { | ||
| 53 | oe_runmake test | ||
| 54 | } | ||
| 55 | |||
| 56 | do_install_ptest() { | ||
| 57 | cp -R --no-dereference --preserve=mode,links -v ${S}/tests ${D}${PTEST_PATH}/tests | ||
| 58 | cp ${S}/test ${D}${PTEST_PATH} | ||
| 59 | sed -e 's!sleep 0.*!sleep 1!g; s!/var/tmp!/mdadm-testing-dir!g' -i ${D}${PTEST_PATH}/test | ||
| 60 | sed -i -e '/echo -ne "$_script... "/d' \ | ||
| 61 | -e 's/echo "succeeded"/echo -e "PASS: $_script"/g' \ | ||
| 62 | -e '/save_log fail/N; /_fail=1/i\\t\t\techo -ne "FAIL: $_script"' \ | ||
| 63 | -e '/die "dmesg prints errors when testing $_basename!"/i\\t\t\t\techo -ne "FAIL: $_script" &&' \ | ||
| 64 | ${D}${PTEST_PATH}/test | ||
| 65 | |||
| 66 | chmod +x ${D}${PTEST_PATH}/test | ||
| 67 | |||
| 68 | ln -s ${base_sbindir}/mdadm ${D}${PTEST_PATH}/mdadm | ||
| 69 | for prg in test_stripe swap_super raid6check | ||
| 70 | do | ||
| 71 | install -D -m 755 $prg ${D}${PTEST_PATH}/ | ||
| 72 | done | ||
| 73 | |||
| 74 | # Disable tests causing intermittent autobuilder failures | ||
| 75 | echo "intermittent failure on autobuilder" > ${D}${PTEST_PATH}/tests/19raid6check.broken | ||
| 76 | echo "intermittent failure on autobuilder" > ${D}${PTEST_PATH}/tests/20raid5journal.broken | ||
| 77 | echo "intermittent failure on autobuilder" > ${D}${PTEST_PATH}/tests/21raid5cache.broken | ||
| 78 | echo "intermittent failure on autobuilder" > ${D}${PTEST_PATH}/tests/10ddf-fail-spare.broken | ||
| 79 | echo "intermittent failure on autobuilder" > ${D}${PTEST_PATH}/tests/10ddf-fail-stop-readd.broken | ||
| 80 | } | ||
| 81 | |||
| 82 | RDEPENDS:${PN} += "bash" | ||
| 83 | RDEPENDS:${PN}-ptest += " \ | ||
| 84 | bash \ | ||
| 85 | e2fsprogs-mke2fs \ | ||
| 86 | util-linux-lsblk \ | ||
| 87 | util-linux-losetup \ | ||
| 88 | util-linux-blockdev \ | ||
| 89 | strace \ | ||
| 90 | " | ||
| 91 | RRECOMMENDS:${PN}-ptest += " \ | ||
| 92 | coreutils \ | ||
| 93 | kernel-module-loop \ | ||
| 94 | kernel-module-linear \ | ||
| 95 | kernel-module-raid0 \ | ||
| 96 | kernel-module-raid1 \ | ||
| 97 | kernel-module-raid10 \ | ||
| 98 | kernel-module-raid456 \ | ||
| 99 | " | ||
| 100 | |||
| 101 | FILES:${PN} += "${systemd_unitdir}/*" | ||
| 102 | |||
| 103 | # strace is not yet ported to rv32 | ||
| 104 | RDEPENDS:${PN}-ptest:remove:riscv32 = "strace" | ||
| 105 | do_install_ptest:append:riscv32 () { | ||
| 106 | echo "disabled, no strace" > ${D}${PTEST_PATH}/tests/07revert-grow.broken | ||
| 107 | echo "disabled, no strace" > ${D}${PTEST_PATH}/tests/07revert-inplace.broken | ||
| 108 | } | ||
diff --git a/meta/recipes-extended/mingetty/mingetty_1.08.bb b/meta/recipes-extended/mingetty/mingetty_1.08.bb deleted file mode 100644 index 892233054b..0000000000 --- a/meta/recipes-extended/mingetty/mingetty_1.08.bb +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | SUMMARY = "Compact getty terminal handler for virtual consoles only" | ||
| 2 | SECTION = "console/utils" | ||
| 3 | HOMEPAGE = "http://sourceforge.net/projects/mingetty/" | ||
| 4 | DESCRIPTION = "This is a small Linux console getty that is started on the Linux text console, asks for a login name and then tranfers over to login directory. Is extended to allow automatic login and starting any app." | ||
| 5 | LICENSE = "GPL-2.0-only" | ||
| 6 | |||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=0c56db0143f4f80c369ee3af7425af6e" | ||
| 8 | SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz" | ||
| 9 | |||
| 10 | SRC_URI[sha256sum] = "0f55c90ba4faa913d91ef99cbf5cb2eb4dbe2780314c3bb17953f849c8cddd17" | ||
| 11 | |||
| 12 | # substitute our CFLAGS for "-O2 -Wall -W -pipe" | ||
| 13 | # | ||
| 14 | EXTRA_OEMAKE = "CC='${CC}' \ | ||
| 15 | CFLAGS='${CFLAGS} -D_GNU_SOURCE'" | ||
| 16 | |||
| 17 | do_install(){ | ||
| 18 | sed -i -e "/^SBINDIR=/c SBINDIR=$base_sbindir" ${S}/Makefile | ||
| 19 | install -d ${D}${mandir}/man8 ${D}/${base_sbindir} | ||
| 20 | oe_runmake install DESTDIR=${D} | ||
| 21 | } | ||
| 22 | |||
| 23 | inherit update-alternatives sourceforge-releases | ||
| 24 | |||
| 25 | ALTERNATIVE:${PN} = "getty" | ||
| 26 | ALTERNATIVE_LINK_NAME[getty] = "${base_sbindir}/getty" | ||
| 27 | ALTERNATIVE_TARGET[getty] = "${base_sbindir}/mingetty" | ||
| 28 | ALTERNATIVE_PRIORITY = "10" | ||
diff --git a/meta/recipes-extended/minicom/minicom_2.10.bb b/meta/recipes-extended/minicom/minicom_2.10.bb deleted file mode 100644 index 20ce5662c2..0000000000 --- a/meta/recipes-extended/minicom/minicom_2.10.bb +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | SUMMARY = "Text-based modem control and terminal emulation program" | ||
| 2 | HOMEPAGE = "https://salsa.debian.org/minicom-team/minicom" | ||
| 3 | DESCRIPTION = "Minicom is a text-based modem control and terminal emulation program for Unix-like operating systems" | ||
| 4 | SECTION = "console/network" | ||
| 5 | DEPENDS = "ncurses virtual/libiconv" | ||
| 6 | LICENSE = "GPL-2.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=420477abc567404debca0a2a1cb6b645 \ | ||
| 8 | file://src/minicom.h;beginline=1;endline=12;md5=a58838cb709f0db517f4e42730c49e81" | ||
| 9 | |||
| 10 | SRC_URI = "${DEBIAN_MIRROR}/main/m/${BPN}/${BPN}_${PV}.orig.tar.bz2" | ||
| 11 | |||
| 12 | SRC_URI[sha256sum] = "90e7ce2856b3eaaa3f452354d17981c49d32c426a255b6f0d3063a227c101538" | ||
| 13 | |||
| 14 | PACKAGECONFIG ??= "" | ||
| 15 | PACKAGECONFIG[lockdev] = "--enable-lockdev,--disable-lockdev,lockdev" | ||
| 16 | |||
| 17 | inherit autotools gettext pkgconfig | ||
| 18 | |||
| 19 | do_install() { | ||
| 20 | for d in doc extras man lib src; do make -C $d DESTDIR=${D} install; done | ||
| 21 | } | ||
| 22 | |||
| 23 | RRECOMMENDS:${PN} += "lrzsz" | ||
| 24 | |||
| 25 | RDEPENDS:${PN} += "ncurses-terminfo-base" | ||
diff --git a/meta/recipes-extended/msmtp/msmtp_1.8.31.bb b/meta/recipes-extended/msmtp/msmtp_1.8.31.bb deleted file mode 100644 index f43dc38bd9..0000000000 --- a/meta/recipes-extended/msmtp/msmtp_1.8.31.bb +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | SUMMARY = "msmtp is an SMTP client" | ||
| 2 | DESCRIPTION = "A sendmail replacement for use in MTAs like mutt" | ||
| 3 | HOMEPAGE = "https://marlam.de/msmtp/" | ||
| 4 | SECTION = "console/network" | ||
| 5 | |||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | DEPENDS = "zlib gnutls" | ||
| 8 | |||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 10 | |||
| 11 | UPSTREAM_CHECK_URI = "https://marlam.de/msmtp/download/" | ||
| 12 | |||
| 13 | SRC_URI = "https://marlam.de/${BPN}/releases/${BP}.tar.xz" | ||
| 14 | SRC_URI[sha256sum] = "c262b11762d8582a3c6d6ca8d8b2cca2b1605497324ca27cc57fdc145a27119f" | ||
| 15 | |||
| 16 | inherit gettext autotools update-alternatives pkgconfig | ||
| 17 | |||
| 18 | EXTRA_OECONF += "--without-libsecret --without-libgsasl --without-libidn" | ||
| 19 | |||
| 20 | ALTERNATIVE:${PN} = "sendmail" | ||
| 21 | # /usr/lib/sendmial is required by LSB core test | ||
| 22 | ALTERNATIVE:${PN}:linuxstdbase = "sendmail usr-lib-sendmail" | ||
| 23 | ALTERNATIVE_TARGET[sendmail] = "${bindir}/msmtp" | ||
| 24 | ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail" | ||
| 25 | ALTERNATIVE_TARGET[usr-lib-sendmail] = "${bindir}/msmtp" | ||
| 26 | ALTERNATIVE_LINK_NAME[usr-lib-sendmail] = "/usr/lib/sendmail" | ||
| 27 | ALTERNATIVE_PRIORITY = "100" | ||
diff --git a/meta/recipes-extended/net-tools/net-tools/Add_missing_headers.patch b/meta/recipes-extended/net-tools/net-tools/Add_missing_headers.patch deleted file mode 100644 index f15d3654c7..0000000000 --- a/meta/recipes-extended/net-tools/net-tools/Add_missing_headers.patch +++ /dev/null | |||
| @@ -1,15 +0,0 @@ | |||
| 1 | Description: Add missing headers | ||
| 2 | |||
| 3 | Upstream-Status: Pending | ||
| 4 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 5 | |||
| 6 | --- a/netstat.c | ||
| 7 | +++ b/netstat.c | ||
| 8 | @@ -88,6 +88,7 @@ | ||
| 9 | #include <sys/stat.h> | ||
| 10 | #include <net/if.h> | ||
| 11 | #include <dirent.h> | ||
| 12 | +#include <sys/types.h> | ||
| 13 | |||
| 14 | #include "net-support.h" | ||
| 15 | #include "pathnames.h" | ||
diff --git a/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-01.patch b/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-01.patch deleted file mode 100644 index 0d55512497..0000000000 --- a/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-01.patch +++ /dev/null | |||
| @@ -1,91 +0,0 @@ | |||
| 1 | From 7a8f42fb20013a1493d8cae1c43436f85e656f2d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Zephkeks <zephyrofficialdiscord@gmail.com> | ||
| 3 | Date: Tue, 13 May 2025 11:04:17 +0200 | ||
| 4 | Subject: [PATCH] CVE-2025-46836: interface.c: Stack-based Buffer Overflow in | ||
| 5 | get_name() | ||
| 6 | |||
| 7 | Coordinated as GHSA-pfwf-h6m3-63wf | ||
| 8 | |||
| 9 | CVE: CVE-2025-46836 | ||
| 10 | Upstream-Status: Backport [https://sourceforge.net/p/net-tools/code/ci/7a8f42fb20013a1493d8cae1c43436f85e656f2d/] | ||
| 11 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
| 12 | --- | ||
| 13 | lib/interface.c | 63 ++++++++++++++++++++++++++++++------------------- | ||
| 14 | 1 file changed, 39 insertions(+), 24 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/lib/interface.c b/lib/interface.c | ||
| 17 | index 71d4163..a054f12 100644 | ||
| 18 | --- a/lib/interface.c | ||
| 19 | +++ b/lib/interface.c | ||
| 20 | @@ -211,32 +211,47 @@ out: | ||
| 21 | } | ||
| 22 | |||
| 23 | static const char *get_name(char *name, const char *p) | ||
| 24 | +/* Safe version — guarantees at most IFNAMSIZ‑1 bytes are copied | ||
| 25 | + and the destination buffer is always NUL‑terminated. */ | ||
| 26 | { | ||
| 27 | - while (isspace(*p)) | ||
| 28 | - p++; | ||
| 29 | - while (*p) { | ||
| 30 | - if (isspace(*p)) | ||
| 31 | - break; | ||
| 32 | - if (*p == ':') { /* could be an alias */ | ||
| 33 | - const char *dot = p++; | ||
| 34 | - while (*p && isdigit(*p)) p++; | ||
| 35 | - if (*p == ':') { | ||
| 36 | - /* Yes it is, backup and copy it. */ | ||
| 37 | - p = dot; | ||
| 38 | - *name++ = *p++; | ||
| 39 | - while (*p && isdigit(*p)) { | ||
| 40 | - *name++ = *p++; | ||
| 41 | - } | ||
| 42 | - } else { | ||
| 43 | - /* No, it isn't */ | ||
| 44 | - p = dot; | ||
| 45 | - } | ||
| 46 | - p++; | ||
| 47 | - break; | ||
| 48 | - } | ||
| 49 | - *name++ = *p++; | ||
| 50 | + char *dst = name; /* current write ptr */ | ||
| 51 | + const char *end = name + IFNAMSIZ - 1; /* last byte we may write */ | ||
| 52 | + | ||
| 53 | + /* Skip leading white‑space. */ | ||
| 54 | + while (isspace((unsigned char)*p)) | ||
| 55 | + ++p; | ||
| 56 | + | ||
| 57 | + /* Copy until white‑space, end of string, or buffer full. */ | ||
| 58 | + while (*p && !isspace((unsigned char)*p) && dst < end) { | ||
| 59 | + if (*p == ':') { /* possible alias veth0:123: */ | ||
| 60 | + const char *dot = p; /* remember the colon */ | ||
| 61 | + ++p; | ||
| 62 | + while (*p && isdigit((unsigned char)*p)) | ||
| 63 | + ++p; | ||
| 64 | + | ||
| 65 | + if (*p == ':') { /* confirmed alias */ | ||
| 66 | + p = dot; /* rewind and copy it all */ | ||
| 67 | + | ||
| 68 | + /* copy the colon */ | ||
| 69 | + if (dst < end) | ||
| 70 | + *dst++ = *p++; | ||
| 71 | + | ||
| 72 | + /* copy the digits */ | ||
| 73 | + while (*p && isdigit((unsigned char)*p) && dst < end) | ||
| 74 | + *dst++ = *p++; | ||
| 75 | + | ||
| 76 | + if (*p == ':') /* consume trailing colon */ | ||
| 77 | + ++p; | ||
| 78 | + } else { /* if so treat as normal */ | ||
| 79 | + p = dot; | ||
| 80 | + } | ||
| 81 | + break; /* interface name ends here */ | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + *dst++ = *p++; /* ordinary character copy */ | ||
| 85 | } | ||
| 86 | - *name++ = '\0'; | ||
| 87 | + | ||
| 88 | + *dst = '\0'; /* always NUL‑terminate */ | ||
| 89 | return p; | ||
| 90 | } | ||
| 91 | |||
diff --git a/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-02.patch b/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-02.patch deleted file mode 100644 index d2c3673a24..0000000000 --- a/meta/recipes-extended/net-tools/net-tools/CVE-2025-46836-02.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From ddb0e375fb9ca95bb69335540b85bbdaa2714348 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Bernd Eckenfels <net-tools@lina.inka.de> | ||
| 3 | Date: Sat, 17 May 2025 21:53:23 +0200 | ||
| 4 | Subject: [PATCH] Interface statistic regression after 7a8f42fb2 | ||
| 5 | |||
| 6 | CVE: CVE-2025-46836 | ||
| 7 | Upstream-Status: Backport [https://sourceforge.net/p/net-tools/code/ci/ddb0e375fb9ca95bb69335540b85bbdaa2714348/] | ||
| 8 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
| 9 | --- | ||
| 10 | lib/interface.c | 5 ++--- | ||
| 11 | 1 file changed, 2 insertions(+), 3 deletions(-) | ||
| 12 | |||
| 13 | diff --git a/lib/interface.c b/lib/interface.c | ||
| 14 | index a054f12..ca4adf1 100644 | ||
| 15 | --- a/lib/interface.c | ||
| 16 | +++ b/lib/interface.c | ||
| 17 | @@ -239,12 +239,11 @@ static const char *get_name(char *name, const char *p) | ||
| 18 | /* copy the digits */ | ||
| 19 | while (*p && isdigit((unsigned char)*p) && dst < end) | ||
| 20 | *dst++ = *p++; | ||
| 21 | - | ||
| 22 | - if (*p == ':') /* consume trailing colon */ | ||
| 23 | - ++p; | ||
| 24 | } else { /* if so treat as normal */ | ||
| 25 | p = dot; | ||
| 26 | } | ||
| 27 | + if (*p == ':') /* consume trailing colon */ | ||
| 28 | + ++p; | ||
| 29 | break; /* interface name ends here */ | ||
| 30 | } | ||
| 31 | |||
diff --git a/meta/recipes-extended/net-tools/net-tools/net-tools-config.h b/meta/recipes-extended/net-tools/net-tools/net-tools-config.h deleted file mode 100644 index 6d39c2a8cb..0000000000 --- a/meta/recipes-extended/net-tools/net-tools/net-tools-config.h +++ /dev/null | |||
| @@ -1,75 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * config.h Automatically generated configuration includefile | ||
| 3 | * | ||
| 4 | * NET-TOOLS A collection of programs that form the base set of the | ||
| 5 | * NET-3 Networking Distribution for the LINUX operating | ||
| 6 | * system. | ||
| 7 | * | ||
| 8 | * DO NOT EDIT DIRECTLY | ||
| 9 | * | ||
| 10 | */ | ||
| 11 | |||
| 12 | /* | ||
| 13 | * | ||
| 14 | * Internationalization | ||
| 15 | * | ||
| 16 | * The net-tools package has currently been translated to French, | ||
| 17 | * German and Brazilian Portugese. Other translations are, of | ||
| 18 | * course, welcome. Answer `n' here if you have no support for | ||
| 19 | * internationalization on your system. | ||
| 20 | * | ||
| 21 | */ | ||
| 22 | #define I18N 1 | ||
| 23 | |||
| 24 | /* | ||
| 25 | * | ||
| 26 | * Protocol Families. | ||
| 27 | * | ||
| 28 | */ | ||
| 29 | #define HAVE_AFUNIX 1 | ||
| 30 | #define HAVE_AFINET 1 | ||
| 31 | #define HAVE_AFINET6 1 | ||
| 32 | #define HAVE_AFIPX 0 | ||
| 33 | #define HAVE_AFATALK 0 | ||
| 34 | #define HAVE_AFAX25 0 | ||
| 35 | #define HAVE_AFNETROM 1 | ||
| 36 | #define HAVE_AFROSE 0 | ||
| 37 | #define HAVE_AFX25 0 | ||
| 38 | #define HAVE_AFECONET 0 | ||
| 39 | #define HAVE_AFDECnet 0 | ||
| 40 | #define HAVE_AFASH 0 | ||
| 41 | |||
| 42 | /* | ||
| 43 | * | ||
| 44 | * Device Hardware types. | ||
| 45 | * | ||
| 46 | */ | ||
| 47 | #define HAVE_HWETHER 1 | ||
| 48 | #define HAVE_HWARC 1 | ||
| 49 | #define HAVE_HWSLIP 1 | ||
| 50 | #define HAVE_HWPPP 1 | ||
| 51 | #define HAVE_HWTUNNEL 1 | ||
| 52 | #define HAVE_HWSTRIP 0 | ||
| 53 | #define HAVE_HWTR 0 | ||
| 54 | #define HAVE_HWAX25 0 | ||
| 55 | #define HAVE_HWROSE 0 | ||
| 56 | #define HAVE_HWNETROM 1 | ||
| 57 | #define HAVE_HWX25 0 | ||
| 58 | #define HAVE_HWFR 1 | ||
| 59 | #define HAVE_HWSIT 0 | ||
| 60 | #define HAVE_HWFDDI 0 | ||
| 61 | #define HAVE_HWHIPPI 0 | ||
| 62 | #define HAVE_HWASH 0 | ||
| 63 | #define HAVE_HWHDLCLAPB 0 | ||
| 64 | #define HAVE_HWIRDA 1 | ||
| 65 | #define HAVE_HWEC 0 | ||
| 66 | #define HAVE_HWIB 0 | ||
| 67 | |||
| 68 | /* | ||
| 69 | * | ||
| 70 | * Other Features. | ||
| 71 | * | ||
| 72 | */ | ||
| 73 | #define HAVE_FW_MASQUERADE 1 | ||
| 74 | #define HAVE_IP_TOOLS 1 | ||
| 75 | #define HAVE_MII 1 | ||
diff --git a/meta/recipes-extended/net-tools/net-tools/net-tools-config.make b/meta/recipes-extended/net-tools/net-tools/net-tools-config.make deleted file mode 100644 index ec516f27ee..0000000000 --- a/meta/recipes-extended/net-tools/net-tools/net-tools-config.make +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | I18N=1 | ||
| 2 | HAVE_AFUNIX=1 | ||
| 3 | HAVE_AFINET=1 | ||
| 4 | HAVE_AFINET6=1 | ||
| 5 | # HAVE_AFIPX=0 | ||
| 6 | # HAVE_AFATALK=0 | ||
| 7 | # HAVE_AFAX25=0 | ||
| 8 | HAVE_AFNETROM=1 | ||
| 9 | # HAVE_AFROSE=0 | ||
| 10 | # HAVE_AFX25=0 | ||
| 11 | # HAVE_AFECONET=0 | ||
| 12 | # HAVE_AFDECnet=0 | ||
| 13 | # HAVE_AFASH=0 | ||
| 14 | HAVE_HWETHER=1 | ||
| 15 | HAVE_HWARC=1 | ||
| 16 | HAVE_HWSLIP=1 | ||
| 17 | HAVE_HWPPP=1 | ||
| 18 | HAVE_HWTUNNEL=1 | ||
| 19 | HAVE_HWSTRIP=1 | ||
| 20 | HAVE_HWTR=1 | ||
| 21 | # HAVE_HWAX25=0 | ||
| 22 | # HAVE_HWROSE=0 | ||
| 23 | HAVE_HWNETROM=1 | ||
| 24 | # HAVE_HWX25=0 | ||
| 25 | HAVE_HWFR=1 | ||
| 26 | # HAVE_HWSIT=0 | ||
| 27 | # HAVE_HWFDDI=0 | ||
| 28 | # HAVE_HWHIPPI=0 | ||
| 29 | # HAVE_HWASH=0 | ||
| 30 | # HAVE_HWHDLCLAPB=0 | ||
| 31 | HAVE_HWIRDA=1 | ||
| 32 | # HAVE_HWEC=0 | ||
| 33 | # HAVE_HWIB=0 | ||
| 34 | HAVE_FW_MASQUERADE=1 | ||
| 35 | HAVE_IP_TOOLS=1 | ||
| 36 | HAVE_MII=1 | ||
diff --git a/meta/recipes-extended/net-tools/net-tools_2.10.bb b/meta/recipes-extended/net-tools/net-tools_2.10.bb deleted file mode 100644 index 6c8297ba39..0000000000 --- a/meta/recipes-extended/net-tools/net-tools_2.10.bb +++ /dev/null | |||
| @@ -1,121 +0,0 @@ | |||
| 1 | SUMMARY = "Basic networking tools" | ||
| 2 | DESCRIPTION = "A collection of programs that form the base set of the NET-3 networking distribution for the Linux operating system" | ||
| 3 | HOMEPAGE = "http://net-tools.berlios.de/" | ||
| 4 | BUGTRACKER = "http://bugs.debian.org/net-tools" | ||
| 5 | LICENSE = "GPL-2.0-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 7 | file://ifconfig.c;beginline=11;endline=15;md5=d1ca372080ad5401e23ca0afc35cf9ba" | ||
| 8 | |||
| 9 | SRCREV = "80d7b95067f1f22fece9537dea6dff53081f4886" | ||
| 10 | SRC_URI = "git://git.code.sf.net/p/net-tools/code;protocol=https;branch=master \ | ||
| 11 | file://net-tools-config.h \ | ||
| 12 | file://net-tools-config.make \ | ||
| 13 | file://Add_missing_headers.patch \ | ||
| 14 | file://CVE-2025-46836-01.patch \ | ||
| 15 | file://CVE-2025-46836-02.patch \ | ||
| 16 | " | ||
| 17 | |||
| 18 | inherit gettext | ||
| 19 | |||
| 20 | # The Makefile is lame, no parallel build | ||
| 21 | PARALLEL_MAKE = "" | ||
| 22 | |||
| 23 | PACKAGECONFIG ??= "hostname arp serial plip" | ||
| 24 | PACKAGECONFIG[hostname] = "" | ||
| 25 | PACKAGECONFIG[arp] = "" | ||
| 26 | PACKAGECONFIG[serial] = "" | ||
| 27 | PACKAGECONFIG[plip] = "" | ||
| 28 | PACKAGECONFIG[slattach] = "" | ||
| 29 | PACKAGECONFIG[plipconfig] = "" | ||
| 30 | |||
| 31 | do_configure() { | ||
| 32 | # net-tools has its own config mechanism requiring "make config" | ||
| 33 | # we pre-generate desired options and copy to source directory instead | ||
| 34 | cp ${UNPACKDIR}/net-tools-config.h ${S}/config.h | ||
| 35 | cp ${UNPACKDIR}/net-tools-config.make ${S}/config.make | ||
| 36 | |||
| 37 | if [ "${USE_NLS}" = "no" ]; then | ||
| 38 | sed -i -e 's/^I18N=1/# I18N=1/' ${S}/config.make | ||
| 39 | fi | ||
| 40 | |||
| 41 | if ${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'true', 'false', d)} ; then | ||
| 42 | echo "#define HAVE_HOSTNAME_TOOLS 1" >> ${S}/config.h | ||
| 43 | echo "#define HAVE_HOSTNAME_SYMLINKS 1" >> ${S}/config.h | ||
| 44 | echo "HAVE_HOSTNAME_TOOLS=1" >> ${S}/config.make | ||
| 45 | echo "HAVE_HOSTNAME_SYMLINKS=1" >> ${S}/config.make | ||
| 46 | fi | ||
| 47 | if ${@bb.utils.contains('PACKAGECONFIG', 'arp', 'true', 'false', d)} ; then | ||
| 48 | echo "#define HAVE_ARP_TOOLS 1" >> ${S}/config.h | ||
| 49 | echo "HAVE_ARP_TOOLS=1" >> ${S}/config.make | ||
| 50 | fi | ||
| 51 | if ${@bb.utils.contains('PACKAGECONFIG', 'serial', 'true', 'false', d)} ; then | ||
| 52 | echo "#define HAVE_SERIAL_TOOLS 1" >> ${S}/config.h | ||
| 53 | echo "HAVE_SERIAL_TOOLS=1" >> ${S}/config.make | ||
| 54 | fi | ||
| 55 | if ${@bb.utils.contains('PACKAGECONFIG', 'plip', 'true', 'false', d)} ; then | ||
| 56 | echo "#define HAVE_PLIP_TOOLS 1" >> ${S}/config.h | ||
| 57 | echo "HAVE_PLIP_TOOLS=1" >> ${S}/config.make | ||
| 58 | fi | ||
| 59 | } | ||
| 60 | |||
| 61 | do_compile() { | ||
| 62 | # net-tools use COPTS/LOPTS to allow adding custom options | ||
| 63 | oe_runmake COPTS="$CFLAGS" LOPTS="$LDFLAGS" | ||
| 64 | } | ||
| 65 | |||
| 66 | do_install() { | ||
| 67 | # We don't need COPTS or LOPTS, but let's be consistent. | ||
| 68 | oe_runmake COPTS="$CFLAGS" LOPTS="$LDFLAGS" BASEDIR=${D} INSTALLNLSDIR=${D}${datadir}/locale mandir=${mandir} install | ||
| 69 | |||
| 70 | if [ "${base_bindir}" != "/bin" ]; then | ||
| 71 | mkdir -p ${D}/${base_bindir} | ||
| 72 | mv ${D}/bin/* ${D}/${base_bindir}/ | ||
| 73 | rmdir ${D}/bin | ||
| 74 | fi | ||
| 75 | if [ "${base_sbindir}" != "/sbin" ]; then | ||
| 76 | mkdir ${D}/${base_sbindir} | ||
| 77 | mv ${D}/sbin/* ${D}/${base_sbindir}/ | ||
| 78 | rmdir ${D}/sbin | ||
| 79 | fi | ||
| 80 | } | ||
| 81 | |||
| 82 | inherit update-alternatives | ||
| 83 | |||
| 84 | base_sbindir_progs = "ipmaddr iptunnel mii-tool nameif \ | ||
| 85 | ${@bb.utils.contains('PACKAGECONFIG', 'arp', 'arp rarp', '', d)} \ | ||
| 86 | ${@bb.utils.contains('PACKAGECONFIG', 'plip', 'plipconfig', '', d)} \ | ||
| 87 | ${@bb.utils.contains('PACKAGECONFIG', 'serial', 'slattach', '', d)} \ | ||
| 88 | " | ||
| 89 | base_bindir_progs = "ifconfig netstat route \ | ||
| 90 | ${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'dnsdomainname domainname hostname nisdomainname ypdomainname', '', d)} \ | ||
| 91 | " | ||
| 92 | |||
| 93 | ALTERNATIVE:${PN} = "${base_sbindir_progs} ${base_bindir_progs}" | ||
| 94 | ALTERNATIVE:${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'hostname.1 dnsdomainname.1', '', d)}" | ||
| 95 | ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" | ||
| 96 | ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1" | ||
| 97 | ALTERNATIVE_PRIORITY[hostname.1] = "10" | ||
| 98 | |||
| 99 | python __anonymous() { | ||
| 100 | for prog in d.getVar('base_sbindir_progs').split(): | ||
| 101 | d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_sbindir'), prog)) | ||
| 102 | for prog in d.getVar('base_bindir_progs').split(): | ||
| 103 | d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog)) | ||
| 104 | } | ||
| 105 | ALTERNATIVE_PRIORITY = "100" | ||
| 106 | |||
| 107 | NETTOOLS_PACKAGES = "${PN}-mii-tool" | ||
| 108 | NETTOOLS_PACKAGES:class-native = "" | ||
| 109 | |||
| 110 | PACKAGE_BEFORE_PN = "${NETTOOLS_PACKAGES}" | ||
| 111 | RDEPENDS:${PN} += "${NETTOOLS_PACKAGES}" | ||
| 112 | |||
| 113 | FILES:${PN}-mii-tool = "${base_sbindir}/mii-tool" | ||
| 114 | |||
| 115 | ALTERNATIVE:${PN}:remove = "mii-tool" | ||
| 116 | |||
| 117 | ALTERNATIVE:${PN}-mii-tool = "mii-tool" | ||
| 118 | ALTERNATIVE_TARGET[mii-tool] = "${base_sbindir}/mii-tool" | ||
| 119 | ALTERNATIVE_LINK_NAME[mii-tool] = "${base_sbindir}/mii-tool" | ||
| 120 | |||
| 121 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb deleted file mode 100644 index b17cba4a78..0000000000 --- a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Copyright (C) 2019 Konsulko Group | ||
| 3 | # | ||
| 4 | |||
| 5 | SUMMARY = "Full-featured set of base utils" | ||
| 6 | DESCRIPTION = "Package group bringing in packages needed to provide much of the base utils type functionality found in busybox" | ||
| 7 | |||
| 8 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
| 9 | |||
| 10 | inherit packagegroup | ||
| 11 | |||
| 12 | VIRTUAL-RUNTIME_vim ?= "vim-tiny" | ||
| 13 | |||
| 14 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
| 15 | |||
| 16 | RDEPENDS:${PN} = "\ | ||
| 17 | base-passwd \ | ||
| 18 | bash \ | ||
| 19 | bind-utils \ | ||
| 20 | bzip2 \ | ||
| 21 | coreutils \ | ||
| 22 | cpio \ | ||
| 23 | ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "debianutils-run-parts", d)} \ | ||
| 24 | dhcpcd \ | ||
| 25 | ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "kea", d)} \ | ||
| 26 | diffutils \ | ||
| 27 | ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "dpkg-start-stop", d)} \ | ||
| 28 | e2fsprogs \ | ||
| 29 | ed \ | ||
| 30 | file \ | ||
| 31 | findutils \ | ||
| 32 | gawk \ | ||
| 33 | grep \ | ||
| 34 | gzip \ | ||
| 35 | ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "ifupdown", d)} \ | ||
| 36 | inetutils \ | ||
| 37 | inetutils-ping \ | ||
| 38 | inetutils-telnet \ | ||
| 39 | inetutils-tftp \ | ||
| 40 | inetutils-traceroute \ | ||
| 41 | iproute2 \ | ||
| 42 | ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "kbd", "", d)} \ | ||
| 43 | kmod \ | ||
| 44 | less \ | ||
| 45 | ncurses-tools \ | ||
| 46 | net-tools \ | ||
| 47 | parted \ | ||
| 48 | patch \ | ||
| 49 | procps \ | ||
| 50 | psmisc \ | ||
| 51 | sed \ | ||
| 52 | shadow-base \ | ||
| 53 | tar \ | ||
| 54 | time \ | ||
| 55 | unzip \ | ||
| 56 | util-linux \ | ||
| 57 | ${VIRTUAL-RUNTIME_vim} \ | ||
| 58 | wget \ | ||
| 59 | which \ | ||
| 60 | xz \ | ||
| 61 | " | ||
diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb b/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb deleted file mode 100644 index 8dc62954a2..0000000000 --- a/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Copyright (C) 2010 Intel Corporation | ||
| 3 | # | ||
| 4 | |||
| 5 | SUMMARY = "Standard full-featured Linux system" | ||
| 6 | DESCRIPTION = "Package group bringing in packages needed for a more traditional full-featured Linux system" | ||
| 7 | |||
| 8 | inherit packagegroup | ||
| 9 | |||
| 10 | PACKAGES = "\ | ||
| 11 | packagegroup-core-full-cmdline \ | ||
| 12 | packagegroup-core-full-cmdline-utils \ | ||
| 13 | packagegroup-core-full-cmdline-extended \ | ||
| 14 | packagegroup-core-full-cmdline-dev-utils \ | ||
| 15 | packagegroup-core-full-cmdline-multiuser \ | ||
| 16 | packagegroup-core-full-cmdline-initscripts \ | ||
| 17 | packagegroup-core-full-cmdline-sys-services \ | ||
| 18 | " | ||
| 19 | |||
| 20 | RDEPENDS:packagegroup-core-full-cmdline = "\ | ||
| 21 | packagegroup-core-full-cmdline-utils \ | ||
| 22 | packagegroup-core-full-cmdline-extended \ | ||
| 23 | packagegroup-core-full-cmdline-dev-utils \ | ||
| 24 | packagegroup-core-full-cmdline-multiuser \ | ||
| 25 | packagegroup-core-full-cmdline-initscripts \ | ||
| 26 | packagegroup-core-full-cmdline-sys-services \ | ||
| 27 | " | ||
| 28 | |||
| 29 | RDEPENDS:packagegroup-core-full-cmdline-utils = "\ | ||
| 30 | bash \ | ||
| 31 | acl \ | ||
| 32 | attr \ | ||
| 33 | bc \ | ||
| 34 | coreutils \ | ||
| 35 | cpio \ | ||
| 36 | e2fsprogs \ | ||
| 37 | ed \ | ||
| 38 | file \ | ||
| 39 | findutils \ | ||
| 40 | gawk \ | ||
| 41 | grep \ | ||
| 42 | less \ | ||
| 43 | makedevs \ | ||
| 44 | mc \ | ||
| 45 | mc-shell \ | ||
| 46 | mc-helpers \ | ||
| 47 | mc-helpers-perl \ | ||
| 48 | ncurses \ | ||
| 49 | net-tools \ | ||
| 50 | procps \ | ||
| 51 | psmisc \ | ||
| 52 | sed \ | ||
| 53 | tar \ | ||
| 54 | time \ | ||
| 55 | util-linux \ | ||
| 56 | " | ||
| 57 | |||
| 58 | RDEPENDS:packagegroup-core-full-cmdline-extended = "\ | ||
| 59 | iproute2 \ | ||
| 60 | iputils \ | ||
| 61 | iptables \ | ||
| 62 | module-init-tools \ | ||
| 63 | openssl \ | ||
| 64 | " | ||
| 65 | |||
| 66 | RDEPENDS:packagegroup-core-full-cmdline-dev-utils = "\ | ||
| 67 | diffutils \ | ||
| 68 | m4 \ | ||
| 69 | make \ | ||
| 70 | patch \ | ||
| 71 | " | ||
| 72 | |||
| 73 | VIRTUAL-RUNTIME_syslog ?= "sysklogd" | ||
| 74 | RDEPENDS:packagegroup-core-full-cmdline-initscripts = "\ | ||
| 75 | ${VIRTUAL-RUNTIME_initscripts} \ | ||
| 76 | ${VIRTUAL-RUNTIME_init_manager} \ | ||
| 77 | ethtool \ | ||
| 78 | ${VIRTUAL-RUNTIME_login_manager} \ | ||
| 79 | ${VIRTUAL-RUNTIME_syslog} \ | ||
| 80 | " | ||
| 81 | |||
| 82 | RDEPENDS:packagegroup-core-full-cmdline-multiuser = "\ | ||
| 83 | bzip2 \ | ||
| 84 | cracklib \ | ||
| 85 | gzip \ | ||
| 86 | shadow \ | ||
| 87 | sudo \ | ||
| 88 | " | ||
| 89 | |||
| 90 | RDEPENDS:packagegroup-core-full-cmdline-sys-services = "\ | ||
| 91 | at \ | ||
| 92 | cronie \ | ||
| 93 | logrotate \ | ||
| 94 | ${@bb.utils.contains('DISTRO_FEATURES', 'nfs', 'nfs-utils rpcbind', '', d)} \ | ||
| 95 | " | ||
diff --git a/meta/recipes-extended/pam/libpam/99_pam b/meta/recipes-extended/pam/libpam/99_pam deleted file mode 100644 index a88247be13..0000000000 --- a/meta/recipes-extended/pam/libpam/99_pam +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d root root 0755 /run/sepermit none | ||
diff --git a/meta/recipes-extended/pam/libpam/pam-volatiles.conf b/meta/recipes-extended/pam/libpam/pam-volatiles.conf deleted file mode 100644 index 1263feb03d..0000000000 --- a/meta/recipes-extended/pam/libpam/pam-volatiles.conf +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d /run/sepermit 0755 root root - - | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/common-account b/meta/recipes-extended/pam/libpam/pam.d/common-account deleted file mode 100644 index 316b17337b..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/common-account +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/common-account - authorization settings common to all services | ||
| 3 | # | ||
| 4 | # This file is included from other service-specific PAM config files, | ||
| 5 | # and should contain a list of the authorization modules that define | ||
| 6 | # the central access policy for use on the system. The default is to | ||
| 7 | # only deny service to users whose accounts are expired in /etc/shadow. | ||
| 8 | # | ||
| 9 | # As of pam 1.0.1-6, this file is managed by pam-auth-update by default. | ||
| 10 | # To take advantage of this, it is recommended that you configure any | ||
| 11 | # local modules either before or after the default block, and use | ||
| 12 | # pam-auth-update to manage selection of other modules. See | ||
| 13 | # pam-auth-update(8) for details. | ||
| 14 | # | ||
| 15 | |||
| 16 | # here are the per-package modules (the "Primary" block) | ||
| 17 | account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so | ||
| 18 | # here's the fallback if no module succeeds | ||
| 19 | account requisite pam_deny.so | ||
| 20 | # prime the stack with a positive return value if there isn't one already; | ||
| 21 | # this avoids us returning an error just because nothing sets a success code | ||
| 22 | # since the modules above will each just jump around | ||
| 23 | account required pam_permit.so | ||
| 24 | # and here are more per-package modules (the "Additional" block) | ||
| 25 | # end of pam-auth-update config | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/common-auth b/meta/recipes-extended/pam/libpam/pam.d/common-auth deleted file mode 100644 index 460b69f198..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/common-auth +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/common-auth - authentication settings common to all services | ||
| 3 | # | ||
| 4 | # This file is included from other service-specific PAM config files, | ||
| 5 | # and should contain a list of the authentication modules that define | ||
| 6 | # the central authentication scheme for use on the system | ||
| 7 | # (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the | ||
| 8 | # traditional Unix authentication mechanisms. | ||
| 9 | |||
| 10 | # here are the per-package modules (the "Primary" block) | ||
| 11 | auth [success=1 default=ignore] pam_unix.so nullok_secure | ||
| 12 | # here's the fallback if no module succeeds | ||
| 13 | auth requisite pam_deny.so | ||
| 14 | # prime the stack with a positive return value if there isn't one already; | ||
| 15 | # this avoids us returning an error just because nothing sets a success code | ||
| 16 | # since the modules above will each just jump around | ||
| 17 | auth required pam_permit.so | ||
| 18 | # and here are more per-package modules (the "Additional" block) | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/common-password b/meta/recipes-extended/pam/libpam/pam.d/common-password deleted file mode 100644 index 52478dae77..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/common-password +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/common-password - password-related modules common to all services | ||
| 3 | # | ||
| 4 | # This file is included from other service-specific PAM config files, | ||
| 5 | # and should contain a list of modules that define the services to be | ||
| 6 | # used to change user passwords. The default is pam_unix. | ||
| 7 | |||
| 8 | # Explanation of pam_unix options: | ||
| 9 | # | ||
| 10 | # The "sha512" option enables salted SHA512 passwords. Without this option, | ||
| 11 | # the default is Unix crypt. Prior releases used the option "md5". | ||
| 12 | # | ||
| 13 | # See the pam_unix manpage for other options. | ||
| 14 | |||
| 15 | # here are the per-package modules (the "Primary" block) | ||
| 16 | password [success=1 default=ignore] pam_unix.so sha512 | ||
| 17 | # here's the fallback if no module succeeds | ||
| 18 | password requisite pam_deny.so | ||
| 19 | # prime the stack with a positive return value if there isn't one already; | ||
| 20 | # this avoids us returning an error just because nothing sets a success code | ||
| 21 | # since the modules above will each just jump around | ||
| 22 | password required pam_permit.so | ||
| 23 | # and here are more per-package modules (the "Additional" block) | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/common-session b/meta/recipes-extended/pam/libpam/pam.d/common-session deleted file mode 100644 index a4a551f711..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/common-session +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/common-session - session-related modules common to all services | ||
| 3 | # | ||
| 4 | # This file is included from other service-specific PAM config files, | ||
| 5 | # and should contain a list of modules that define tasks to be performed | ||
| 6 | # at the start and end of sessions of *any* kind (both interactive and | ||
| 7 | # non-interactive). | ||
| 8 | # | ||
| 9 | |||
| 10 | # here are the per-package modules (the "Primary" block) | ||
| 11 | session [default=1] pam_permit.so | ||
| 12 | # here's the fallback if no module succeeds | ||
| 13 | session requisite pam_deny.so | ||
| 14 | # prime the stack with a positive return value if there isn't one already; | ||
| 15 | # this avoids us returning an error just because nothing sets a success code | ||
| 16 | # since the modules above will each just jump around | ||
| 17 | session required pam_permit.so | ||
| 18 | # and here are more per-package modules (the "Additional" block) | ||
| 19 | session required pam_unix.so | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/common-session-noninteractive b/meta/recipes-extended/pam/libpam/pam.d/common-session-noninteractive deleted file mode 100644 index b110bb2b49..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/common-session-noninteractive +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/common-session-noninteractive - session-related modules | ||
| 3 | # common to all non-interactive services | ||
| 4 | # | ||
| 5 | # This file is included from other service-specific PAM config files, | ||
| 6 | # and should contain a list of modules that define tasks to be performed | ||
| 7 | # at the start and end of all non-interactive sessions. | ||
| 8 | # | ||
| 9 | |||
| 10 | # here are the per-package modules (the "Primary" block) | ||
| 11 | session [default=1] pam_permit.so | ||
| 12 | # here's the fallback if no module succeeds | ||
| 13 | session requisite pam_deny.so | ||
| 14 | # prime the stack with a positive return value if there isn't one already; | ||
| 15 | # this avoids us returning an error just because nothing sets a success code | ||
| 16 | # since the modules above will each just jump around | ||
| 17 | session required pam_permit.so | ||
| 18 | # and here are more per-package modules (the "Additional" block) | ||
| 19 | session required pam_unix.so | ||
diff --git a/meta/recipes-extended/pam/libpam/pam.d/other b/meta/recipes-extended/pam/libpam/pam.d/other deleted file mode 100644 index ec970ecbe0..0000000000 --- a/meta/recipes-extended/pam/libpam/pam.d/other +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | # | ||
| 2 | # /etc/pam.d/other - specify the PAM fallback behaviour | ||
| 3 | # | ||
| 4 | # Note that this file is used for any unspecified service; for example | ||
| 5 | #if /etc/pam.d/cron specifies no session modules but cron calls | ||
| 6 | #pam_open_session, the session module out of /etc/pam.d/other is | ||
| 7 | #used. | ||
| 8 | |||
| 9 | # We use pam_warn.so to generate syslog notes that the 'other' | ||
| 10 | #fallback rules are being used (as a hint to suggest you should setup | ||
| 11 | #specific PAM rules for the service and aid to debugging). Then to be | ||
| 12 | #secure, deny access to all services by default. | ||
| 13 | |||
| 14 | auth required pam_warn.so | ||
| 15 | auth required pam_deny.so | ||
| 16 | |||
| 17 | account required pam_warn.so | ||
| 18 | account required pam_deny.so | ||
| 19 | |||
| 20 | password required pam_warn.so | ||
| 21 | password required pam_deny.so | ||
| 22 | |||
| 23 | session required pam_warn.so | ||
| 24 | session required pam_deny.so | ||
diff --git a/meta/recipes-extended/pam/libpam/run-ptest b/meta/recipes-extended/pam/libpam/run-ptest deleted file mode 100644 index 9c304aee47..0000000000 --- a/meta/recipes-extended/pam/libpam/run-ptest +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | #! /bin/sh | ||
| 2 | |||
| 3 | cd tests | ||
| 4 | |||
| 5 | export srcdir=. | ||
| 6 | |||
| 7 | failed=0 | ||
| 8 | all=0 | ||
| 9 | for f in tst-*; do | ||
| 10 | "./$f" > /dev/null 2>&1 | ||
| 11 | case "$?" in | ||
| 12 | 0) | ||
| 13 | echo "PASS: $f" | ||
| 14 | all=$((all + 1)) | ||
| 15 | ;; | ||
| 16 | 77) | ||
| 17 | echo "SKIP: $f" | ||
| 18 | ;; | ||
| 19 | *) | ||
| 20 | echo "FAIL: $f" | ||
| 21 | failed=$((failed + 1)) | ||
| 22 | all=$((all + 1)) | ||
| 23 | ;; | ||
| 24 | esac | ||
| 25 | done | ||
| 26 | |||
| 27 | if [ "$failed" -eq 0 ] ; then | ||
| 28 | echo "All $all tests passed" | ||
| 29 | else | ||
| 30 | echo "$failed of $all tests failed" | ||
| 31 | fi | ||
| 32 | unset srcdir | ||
diff --git a/meta/recipes-extended/pam/libpam_1.7.1.bb b/meta/recipes-extended/pam/libpam_1.7.1.bb deleted file mode 100644 index 8d9ea27028..0000000000 --- a/meta/recipes-extended/pam/libpam_1.7.1.bb +++ /dev/null | |||
| @@ -1,172 +0,0 @@ | |||
| 1 | DISABLE_STATIC = "" | ||
| 2 | SUMMARY = "Linux-PAM (Pluggable Authentication Modules)" | ||
| 3 | DESCRIPTION = "Linux-PAM (Pluggable Authentication Modules for Linux), a flexible mechanism for authenticating users" | ||
| 4 | HOMEPAGE = "https://fedorahosted.org/linux-pam/" | ||
| 5 | BUGTRACKER = "https://fedorahosted.org/linux-pam/newticket" | ||
| 6 | SECTION = "base" | ||
| 7 | # PAM is dual licensed under GPL and BSD. | ||
| 8 | # /etc/pam.d comes from Debian libpam-runtime in 2009-11 (at that time | ||
| 9 | # libpam-runtime-1.0.1 is GPL-2.0-or-later), by openembedded | ||
| 10 | LICENSE = "GPL-2.0-or-later | BSD-3-Clause" | ||
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=7eb5c1bf854e8881005d673599ee74d3 \ | ||
| 12 | file://libpamc/License;md5=a4da476a14c093fdc73be3c3c9ba8fb3 \ | ||
| 13 | " | ||
| 14 | |||
| 15 | SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/Linux-PAM-${PV}.tar.xz \ | ||
| 16 | file://99_pam \ | ||
| 17 | file://pam.d/common-account \ | ||
| 18 | file://pam.d/common-auth \ | ||
| 19 | file://pam.d/common-password \ | ||
| 20 | file://pam.d/common-session \ | ||
| 21 | file://pam.d/common-session-noninteractive \ | ||
| 22 | file://pam.d/other \ | ||
| 23 | file://run-ptest \ | ||
| 24 | file://pam-volatiles.conf \ | ||
| 25 | " | ||
| 26 | |||
| 27 | SRC_URI[sha256sum] = "21dbcec6e01dd578f14789eac9024a18941e6f2702a05cf91b28c232eeb26ab0" | ||
| 28 | |||
| 29 | DEPENDS = "bison-native flex-native libxml2-native virtual/crypt" | ||
| 30 | |||
| 31 | EXTRA_OEMESON = "-Ddocs=disabled -Dsecuredir=${base_libdir}/security" | ||
| 32 | |||
| 33 | LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}" | ||
| 34 | |||
| 35 | S = "${UNPACKDIR}/Linux-PAM-${PV}" | ||
| 36 | |||
| 37 | inherit meson gettext pkgconfig systemd ptest github-releases | ||
| 38 | |||
| 39 | PACKAGECONFIG ??= "" | ||
| 40 | PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit," | ||
| 41 | PACKAGECONFIG[userdb] = "-Dpam_userdb=enabled -Ddb=gdbm,-Dpam_userdb=disabled,gdbm," | ||
| 42 | PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux," | ||
| 43 | |||
| 44 | PACKAGES += "${PN}-runtime ${PN}-xtests" | ||
| 45 | FILES:${PN} = " \ | ||
| 46 | ${libdir}/lib*${SOLIBS} \ | ||
| 47 | ${nonarch_libdir}/tmpfiles.d/*.conf \ | ||
| 48 | " | ||
| 49 | FILES:${PN}-dev += "${base_libdir}/security/*.la ${libdir}/*.la ${libdir}/lib*${SOLIBSDEV}" | ||
| 50 | FILES:${PN}-runtime = "${sysconfdir} ${sbindir} ${nonarch_libdir}/systemd/system" | ||
| 51 | FILES:${PN}-xtests = "${datadir}/Linux-PAM/xtests" | ||
| 52 | |||
| 53 | # libpam installs /etc/environment for use with the pam_env plugin. Make sure it is | ||
| 54 | # packaged with the pam-plugin-env package to avoid breaking installations which | ||
| 55 | # install that file via other packages | ||
| 56 | FILES:pam-plugin-env = "${sysconfdir}/environment" | ||
| 57 | |||
| 58 | PACKAGES_DYNAMIC += "^${MLPREFIX}pam-plugin-.*" | ||
| 59 | |||
| 60 | def get_multilib_bit(d): | ||
| 61 | baselib = d.getVar('baselib') or '' | ||
| 62 | return baselib.replace('lib', '') | ||
| 63 | |||
| 64 | libpam_suffix = "suffix${@get_multilib_bit(d)}" | ||
| 65 | |||
| 66 | RPROVIDES:${PN} += "${PN}-${libpam_suffix}" | ||
| 67 | RPROVIDES:${PN}-runtime += "${PN}-runtime-${libpam_suffix}" | ||
| 68 | |||
| 69 | RDEPENDS:${PN}-runtime = "${PN}-${libpam_suffix} \ | ||
| 70 | ${MLPREFIX}pam-plugin-deny-${libpam_suffix} \ | ||
| 71 | ${MLPREFIX}pam-plugin-permit-${libpam_suffix} \ | ||
| 72 | ${MLPREFIX}pam-plugin-warn-${libpam_suffix} \ | ||
| 73 | ${MLPREFIX}pam-plugin-unix-${libpam_suffix} \ | ||
| 74 | ${@bb.utils.contains('PACKAGECONFIG', 'selinux', '${MLPREFIX}pam-plugin-selinux-${libpam_suffix}', '', d)} \ | ||
| 75 | " | ||
| 76 | RDEPENDS:${PN}-xtests = "${PN}-${libpam_suffix} \ | ||
| 77 | ${MLPREFIX}pam-plugin-access-${libpam_suffix} \ | ||
| 78 | ${MLPREFIX}pam-plugin-debug-${libpam_suffix} \ | ||
| 79 | ${MLPREFIX}pam-plugin-pwhistory-${libpam_suffix} \ | ||
| 80 | ${MLPREFIX}pam-plugin-succeed-if-${libpam_suffix} \ | ||
| 81 | ${MLPREFIX}pam-plugin-time-${libpam_suffix} \ | ||
| 82 | bash coreutils" | ||
| 83 | |||
| 84 | # FIXME: Native suffix breaks here, disable it for now | ||
| 85 | RRECOMMENDS:${PN} = "${PN}-runtime-${libpam_suffix}" | ||
| 86 | RRECOMMENDS:${PN}:class-native = "" | ||
| 87 | |||
| 88 | python populate_packages:prepend () { | ||
| 89 | def pam_plugin_hook(file, pkg, pattern, format, basename): | ||
| 90 | pn = d.getVar('PN') | ||
| 91 | libpam_suffix = d.getVar('libpam_suffix') | ||
| 92 | |||
| 93 | rdeps = d.getVar('RDEPENDS:' + pkg) | ||
| 94 | if rdeps: | ||
| 95 | rdeps = rdeps + " " + pn + "-" + libpam_suffix | ||
| 96 | else: | ||
| 97 | rdeps = pn + "-" + libpam_suffix | ||
| 98 | d.setVar('RDEPENDS:' + pkg, rdeps) | ||
| 99 | |||
| 100 | provides = d.getVar('RPROVIDES:' + pkg) | ||
| 101 | if provides: | ||
| 102 | provides = provides + " " + pkg + "-" + libpam_suffix | ||
| 103 | else: | ||
| 104 | provides = pkg + "-" + libpam_suffix | ||
| 105 | d.setVar('RPROVIDES:' + pkg, provides) | ||
| 106 | |||
| 107 | mlprefix = d.getVar('MLPREFIX') or '' | ||
| 108 | dvar = d.expand('${WORKDIR}/package') | ||
| 109 | pam_libdir = d.expand('${base_libdir}/security') | ||
| 110 | pam_sbindir = d.expand('${sbindir}') | ||
| 111 | pam_filterdir = d.expand('${base_libdir}/security/pam_filter') | ||
| 112 | pam_pkgname = mlprefix + 'pam-plugin%s' | ||
| 113 | |||
| 114 | do_split_packages(d, pam_libdir, r'^pam(.*)\.so$', pam_pkgname, | ||
| 115 | 'PAM plugin for %s', hook=pam_plugin_hook, extra_depends='', prepend=True) | ||
| 116 | do_split_packages(d, pam_filterdir, r'^(.*)$', 'pam-filter-%s', 'PAM filter for %s', extra_depends='') | ||
| 117 | } | ||
| 118 | |||
| 119 | do_install:append() { | ||
| 120 | # don't install /var/run when populating rootfs. Do it through volatile | ||
| 121 | rm -rf ${D}${localstatedir} | ||
| 122 | |||
| 123 | if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','false','true',d)}; then | ||
| 124 | rm -rf ${D}${sysconfdir}/init.d/ | ||
| 125 | rm -rf ${D}${sysconfdir}/rc* | ||
| 126 | install -d ${D}${nonarch_libdir}/tmpfiles.d | ||
| 127 | install -m 0644 ${UNPACKDIR}/pam-volatiles.conf \ | ||
| 128 | ${D}${nonarch_libdir}/tmpfiles.d/pam.conf | ||
| 129 | else | ||
| 130 | install -d ${D}${sysconfdir}/default/volatiles | ||
| 131 | install -m 0644 ${UNPACKDIR}/99_pam \ | ||
| 132 | ${D}${sysconfdir}/default/volatiles/ | ||
| 133 | fi | ||
| 134 | |||
| 135 | install -d ${D}${sysconfdir}/pam.d/ | ||
| 136 | install -m 0644 ${UNPACKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/ | ||
| 137 | |||
| 138 | # The lsb requires unix_chkpwd has setuid permission | ||
| 139 | chmod 4755 ${D}${sbindir}/unix_chkpwd | ||
| 140 | |||
| 141 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then | ||
| 142 | echo "session optional pam_systemd.so" >> ${D}${sysconfdir}/pam.d/common-session | ||
| 143 | fi | ||
| 144 | } | ||
| 145 | |||
| 146 | do_install_ptest() { | ||
| 147 | mkdir -p ${D}${PTEST_PATH}/tests | ||
| 148 | find ${B}/tests -maxdepth 1 -type f -exec cp {} ${D}${PTEST_PATH}/tests \; | ||
| 149 | install -m 0644 ${S}/tests/confdir ${D}${PTEST_PATH}/tests | ||
| 150 | } | ||
| 151 | |||
| 152 | pkg_postinst:${PN}() { | ||
| 153 | if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ] ; then | ||
| 154 | /etc/init.d/populate-volatile.sh update | ||
| 155 | fi | ||
| 156 | } | ||
| 157 | |||
| 158 | inherit features_check | ||
| 159 | ANY_OF_DISTRO_FEATURES = "pam systemd" | ||
| 160 | |||
| 161 | BBCLASSEXTEND = "nativesdk native" | ||
| 162 | |||
| 163 | CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-session" | ||
| 164 | CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-auth" | ||
| 165 | CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-password" | ||
| 166 | CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-session-noninteractive" | ||
| 167 | CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-account" | ||
| 168 | CONFFILES:${PN}-runtime += "${sysconfdir}/security/limits.conf" | ||
| 169 | |||
| 170 | GITHUB_BASE_URI = "https://github.com/linux-pam/linux-pam/releases" | ||
| 171 | |||
| 172 | CVE_PRODUCT = "linux-pam" | ||
diff --git a/meta/recipes-extended/parted/files/0001-bug-74444-PATCH-parted-fix-do_version-declaration.patch b/meta/recipes-extended/parted/files/0001-bug-74444-PATCH-parted-fix-do_version-declaration.patch deleted file mode 100644 index a8ea7ec4f7..0000000000 --- a/meta/recipes-extended/parted/files/0001-bug-74444-PATCH-parted-fix-do_version-declaration.patch +++ /dev/null | |||
| @@ -1,40 +0,0 @@ | |||
| 1 | From eb6bb2e8dfc78ca1a187d07ea29b23a805c61794 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 3 | Date: Wed, 20 Nov 2024 12:22:22 +0000 | ||
| 4 | Subject: [PATCH] bug#74444: [PATCH] parted: fix do_version declaration | ||
| 5 | |||
| 6 | With gcc 15-20241117 compile fails with the below error, update the | ||
| 7 | do_version declaration to match the header in command.h | ||
| 8 | |||
| 9 | ../../parted/parted.c: In function '_init_commands': | ||
| 10 | ../../parted/parted.c:2469:9: error: passing argument 2 of 'command_create' from incompatible pointer type [-Wincompatible-pointer-types] | ||
| 11 | 2469 | do_version, | ||
| 12 | | ^~~~~~~~~~ | ||
| 13 | | | | ||
| 14 | | int (*)(void) | ||
| 15 | In file included from ../../parted/parted.c:28: | ||
| 16 | ../../parted/command.h:35:39: note: expected 'int (*)(PedDevice **, PedDisk **)' {aka 'int (*)(struct _PedDevice **, struct _PedDisk **)'} but argument is of type 'int (*)(void)' | ||
| 17 | 35 | int (*method) (PedDevice** dev, PedDisk** diskp), | ||
| 18 | | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| 19 | |||
| 20 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/parted.git/commit/?id=16343bda6ce0d41edf43f8dac368db3bbb63d271] | ||
| 21 | Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> | ||
| 22 | Signed-off-by: Brian C. Lane <bcl@redhat.com> | ||
| 23 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 24 | --- | ||
| 25 | parted/parted.c | 2 +- | ||
| 26 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 27 | |||
| 28 | diff --git a/parted/parted.c b/parted/parted.c | ||
| 29 | index 3abb52f..fc2aeba 100644 | ||
| 30 | --- a/parted/parted.c | ||
| 31 | +++ b/parted/parted.c | ||
| 32 | @@ -2172,7 +2172,7 @@ do_unit (PedDevice** dev, PedDisk** diskp) | ||
| 33 | } | ||
| 34 | |||
| 35 | static int | ||
| 36 | -do_version () | ||
| 37 | +do_version (PedDevice** dev, PedDisk** diskp) | ||
| 38 | { | ||
| 39 | printf ("\n%s\n%s", | ||
| 40 | prog_name, | ||
diff --git a/meta/recipes-extended/parted/files/0001-fs-Add-libuuid-to-linker-flags-for-libparted-fs-resi.patch b/meta/recipes-extended/parted/files/0001-fs-Add-libuuid-to-linker-flags-for-libparted-fs-resi.patch deleted file mode 100644 index 10354f1ed9..0000000000 --- a/meta/recipes-extended/parted/files/0001-fs-Add-libuuid-to-linker-flags-for-libparted-fs-resi.patch +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | From 1fc88332f7e906294fd889287b9e84cefc7f1586 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 12 Jun 2023 10:40:07 -0700 | ||
| 4 | Subject: [PATCH] fs: Add libuuid to linker flags for libparted-fs-resize | ||
| 5 | library | ||
| 6 | |||
| 7 | This library uses uuid_generate function which comes from libuuid and | ||
| 8 | hence it should be mentioned on linker cmdline | ||
| 9 | |||
| 10 | fixes | ||
| 11 | | aarch64-yoe-linux-ld.lld: error: undefined reference due to --no-allow-shlib-undefined: uuid_generate | ||
| 12 | | >>> referenced by /mnt/b/yoe/master/build/tmp/work/cortexa72-cortexa53-crypto-yoe-linux/fatresize/1.1.0-r0/recipe-sysroot/usr/lib/libparted-fs-resize.so | ||
| 13 | |||
| 14 | Upstream-Status: Submitted [https://alioth-lists.debian.net/pipermail/parted-devel/2023-June/005873.html] | ||
| 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 16 | --- | ||
| 17 | libparted/fs/Makefile.am | 1 + | ||
| 18 | 1 file changed, 1 insertion(+) | ||
| 19 | |||
| 20 | diff --git a/libparted/fs/Makefile.am b/libparted/fs/Makefile.am | ||
| 21 | index 2f345f3..a8970eb 100644 | ||
| 22 | --- a/libparted/fs/Makefile.am | ||
| 23 | +++ b/libparted/fs/Makefile.am | ||
| 24 | @@ -75,6 +75,7 @@ libparted_fs_resize_la_LDFLAGS = \ | ||
| 25 | EXTRA_DIST += fsresize.sym | ||
| 26 | libparted_fs_resize_la_DEPENDENCIES = $(sym_file) | ||
| 27 | |||
| 28 | +libparted_fs_resize_la_LIBADD = $(UUID_LIBS) | ||
| 29 | libparted_fs_resize_la_SOURCES = \ | ||
| 30 | r/filesys.c \ | ||
| 31 | r/fat/bootsector.c \ | ||
| 32 | -- | ||
| 33 | 2.41.0 | ||
| 34 | |||
diff --git a/meta/recipes-extended/parted/files/autoconf-2.73.patch b/meta/recipes-extended/parted/files/autoconf-2.73.patch deleted file mode 100644 index 63dea88bfc..0000000000 --- a/meta/recipes-extended/parted/files/autoconf-2.73.patch +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | The gnulib largefile macro needs updating to work with autoconf 2.73. Rather | ||
| 2 | than the full code: | ||
| 3 | |||
| 4 | https://git.savannah.gnu.org/cgit/gnulib.git/commit/m4/largefile.m4?id=f91f633858cf132e50924224c50d6264a92caabb | ||
| 5 | |||
| 6 | Just tweak the exiting code to work with 2.73. The next parted upgrade should | ||
| 7 | update to new gnulib | ||
| 8 | |||
| 9 | Upstream-Status: Inappropriate | ||
| 10 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 11 | |||
| 12 | --- a/m4/largefile.m4 | ||
| 13 | +++ b/m4/largefile.m4 | ||
| 14 | @@ -27,7 +27,7 @@ AC_DEFUN([gl_SET_LARGEFILE_SOURCE], | ||
| 15 | # Work around a problem in autoconf <= 2.69: | ||
| 16 | # AC_SYS_LARGEFILE does not configure for large inodes on Mac OS X 10.5, | ||
| 17 | # or configures them incorrectly in some cases. | ||
| 18 | -m4_version_prereq([2.70], [], [ | ||
| 19 | +m4_version_prereq([2.73], [], [ | ||
| 20 | |||
| 21 | # _AC_SYS_LARGEFILE_TEST_INCLUDES | ||
| 22 | # ------------------------------- | ||
diff --git a/meta/recipes-extended/parted/files/fix-doc-mandir.patch b/meta/recipes-extended/parted/files/fix-doc-mandir.patch deleted file mode 100644 index 0711d4e297..0000000000 --- a/meta/recipes-extended/parted/files/fix-doc-mandir.patch +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | Upstream-Status: Submitted [bug-parted@gnu.org] | ||
| 2 | |||
| 3 | | for po in `ls -1 ./*.pt_BR.po 2>/dev/null`; do \ | ||
| 4 | | make $(basename ${po%.pt_BR.po}); \ | ||
| 5 | | done | ||
| 6 | | Makefile:904: *** Recursive variable `mandir' references itself (eventually). Stop. | ||
| 7 | |||
| 8 | Signed-off-by: Andreas Oberritter <obi@opendreambox.org> | ||
| 9 | |||
| 10 | --- parted-3.1/doc/po4a.mk.orig 2012-03-15 14:09:11.555831872 +0100 | ||
| 11 | +++ parted-3.1/doc/po4a.mk 2012-03-15 14:10:44.243830985 +0100 | ||
| 12 | @@ -23,7 +23,7 @@ | ||
| 13 | # threshold is 80%), it won't be distributed, and the build won't fail. | ||
| 14 | # | ||
| 15 | |||
| 16 | -mandir = $(mandir)/$(lang) | ||
| 17 | +mandir := $(mandir)/$(lang) | ||
| 18 | |||
| 19 | # Inform automake that we want to install some man pages in section 1, 5 | ||
| 20 | # and 8. | ||
diff --git a/meta/recipes-extended/parted/files/run-ptest b/meta/recipes-extended/parted/files/run-ptest deleted file mode 100644 index 096078967f..0000000000 --- a/meta/recipes-extended/parted/files/run-ptest +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | mkdir -p /etc/udev/mount.ignorelist.d | ||
| 4 | echo /dev/sda1 >> /etc/udev/mount.ignorelist.d/parted-tmp | ||
| 5 | rm -f tests/*.log | ||
| 6 | make -C tests test-suite.log | ||
| 7 | rm /etc/udev/mount.ignorelist.d/parted-tmp | ||
diff --git a/meta/recipes-extended/parted/parted_3.6.bb b/meta/recipes-extended/parted/parted_3.6.bb deleted file mode 100644 index 6fc2cb3b3a..0000000000 --- a/meta/recipes-extended/parted/parted_3.6.bb +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | SUMMARY = "Disk partition editing/resizing utility" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/parted/parted.html" | ||
| 3 | DESCRIPTION = "GNU Parted manipulates partition tables. This is useful for creating space for new operating systems, reorganizing disk usage, copying data on hard disks and disk imaging." | ||
| 4 | LICENSE = "GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=2f31b266d3440dd7ee50f92cf67d8e6c" | ||
| 6 | SECTION = "console/tools" | ||
| 7 | DEPENDS = "ncurses util-linux virtual/libiconv" | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.xz \ | ||
| 10 | file://fix-doc-mandir.patch \ | ||
| 11 | file://0001-fs-Add-libuuid-to-linker-flags-for-libparted-fs-resi.patch \ | ||
| 12 | file://autoconf-2.73.patch \ | ||
| 13 | file://0001-bug-74444-PATCH-parted-fix-do_version-declaration.patch \ | ||
| 14 | file://run-ptest \ | ||
| 15 | " | ||
| 16 | |||
| 17 | SRC_URI[sha256sum] = "3b43dbe33cca0f9a18601ebab56b7852b128ec1a3df3a9b30ccde5e73359e612" | ||
| 18 | |||
| 19 | inherit autotools pkgconfig gettext texinfo ptest | ||
| 20 | |||
| 21 | PACKAGECONFIG ?= "readline" | ||
| 22 | PACKAGECONFIG[device-mapper] = "--enable-device-mapper,--disable-device-mapper,libdevmapper lvm2" | ||
| 23 | PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" | ||
| 24 | |||
| 25 | BBCLASSEXTEND = "native nativesdk" | ||
| 26 | |||
| 27 | do_compile_ptest() { | ||
| 28 | oe_runmake -C tests print-align print-max dup-clobber duplicate fs-resize print-flags | ||
| 29 | } | ||
| 30 | |||
| 31 | do_install_ptest() { | ||
| 32 | t=${D}${PTEST_PATH} | ||
| 33 | mkdir $t/build-aux | ||
| 34 | cp ${S}/build-aux/test-driver $t/build-aux/ | ||
| 35 | cp -r ${S}/tests $t | ||
| 36 | cp ${B}/tests/Makefile $t/tests/ | ||
| 37 | mkdir $t/lib | ||
| 38 | cp ${B}/lib/config.h $t/lib | ||
| 39 | sed -e "s|^VERSION.*|VERSION = ${PV}|g" \ | ||
| 40 | -e "s|^srcdir =.*|srcdir = \.|g" \ | ||
| 41 | -e "s|^abs_srcdir =.*|abs_srcdir = \.|g" \ | ||
| 42 | -e "s|^abs_top_srcdir =.*|abs_top_srcdir = "${PTEST_PATH}"|g" \ | ||
| 43 | -e "s|^abs_top_builddir =.*|abs_top_builddir = "${PTEST_PATH}"|g" \ | ||
| 44 | -e "/^SH_LOG_DRIVER =/s|(top_srcdir)|(top_builddir)|" \ | ||
| 45 | -e "s|^Makefile:.*|Makefile:|g" \ | ||
| 46 | -e "/^BUILDINFO.*$/d" \ | ||
| 47 | -i $t/tests/Makefile | ||
| 48 | for i in print-align print-max print-flags dup-clobber duplicate fs-resize; \ | ||
| 49 | do cp ${B}/tests/.libs/$i $t/tests/; \ | ||
| 50 | done | ||
| 51 | sed -e 's| ../parted||' -i $t/tests/*.sh | ||
| 52 | } | ||
| 53 | |||
| 54 | RDEPENDS:${PN}-ptest = "bash coreutils perl util-linux-losetup util-linux-mkswap python3 make gawk e2fsprogs-mke2fs e2fsprogs-tune2fs python3-core dosfstools" | ||
| 55 | RRECOMMENDS:${PN}-ptest += "kernel-module-scsi-debug kernel-module-loop kernel-module-vfat" | ||
| 56 | RDEPENDS:${PN}-ptest:append:libc-glibc = "\ | ||
| 57 | glibc-utils \ | ||
| 58 | locale-base-en-us \ | ||
| 59 | " | ||
| 60 | |||
| 61 | inherit update-alternatives | ||
| 62 | |||
| 63 | ALTERNATIVE_PRIORITY = "100" | ||
| 64 | ALTERNATIVE:${PN} = "partprobe" | ||
| 65 | ALTERNATIVE_LINK_NAME[partprobe] = "${sbindir}/partprobe" | ||
diff --git a/meta/recipes-extended/pbzip2/pbzip2/0001-Do-not-rely-on-std-char_traits-template-from-stdlib.patch b/meta/recipes-extended/pbzip2/pbzip2/0001-Do-not-rely-on-std-char_traits-template-from-stdlib.patch deleted file mode 100644 index 21c9145a1a..0000000000 --- a/meta/recipes-extended/pbzip2/pbzip2/0001-Do-not-rely-on-std-char_traits-template-from-stdlib.patch +++ /dev/null | |||
| @@ -1,116 +0,0 @@ | |||
| 1 | From c9f1af117557ad5d75df9e37bf3fbb1185f67de2 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Fri, 18 Jul 2025 10:26:06 -0700 | ||
| 4 | Subject: [PATCH] Do not rely on std::char_traits template from stdlib | ||
| 5 | |||
| 6 | standard never required the base template for | ||
| 7 | char_traits to any type but it was given for | ||
| 8 | convenience purposes. Nowadays, at least in LLVM's | ||
| 9 | libcxx version 19+ it got removed [1]. | ||
| 10 | |||
| 11 | GCC might follow the same path at some point so | ||
| 12 | porting it away from char_traits might be a good | ||
| 13 | idea. | ||
| 14 | |||
| 15 | The fix is applied to FreeBSD [2] [3] | ||
| 16 | |||
| 17 | Reported issue [4] | ||
| 18 | |||
| 19 | [1] https://reviews.llvm.org/D138307 | ||
| 20 | [2] https://cgit.freebsd.org/ports/commit/archivers/pbzip2/files/patch-BZ2StreamScanner.cpp?id=29c80f114ea6cc60be39502339572af8c35ac440 | ||
| 21 | [3] https://cgit.freebsd.org/ports/commit/archivers/pbzip2/files/patch-BZ2StreamScanner.cpp?id=89f872ec2ccf488f24cd9daca2e0d1f80e7ee429 | ||
| 22 | [4] https://github.com/ruanhuabin/pbzip2/issues/1 | ||
| 23 | |||
| 24 | Upstream-Status: Inactive-Upstream [lastcommit: 2015-12-17] | ||
| 25 | |||
| 26 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 27 | --- | ||
| 28 | BZ2StreamScanner.cpp | 21 +++++++++++---------- | ||
| 29 | BZ2StreamScanner.h | 6 +++--- | ||
| 30 | 2 files changed, 14 insertions(+), 13 deletions(-) | ||
| 31 | |||
| 32 | diff --git a/BZ2StreamScanner.cpp b/BZ2StreamScanner.cpp | ||
| 33 | index a134712..f32a321 100644 | ||
| 34 | --- a/BZ2StreamScanner.cpp | ||
| 35 | +++ b/BZ2StreamScanner.cpp | ||
| 36 | @@ -42,15 +42,15 @@ int BZ2StreamScanner::init( int hInFile, size_t inBuffCapacity ) | ||
| 37 | { | ||
| 38 | dispose(); | ||
| 39 | |||
| 40 | - CharType bz2header[] = "BZh91AY&SY"; | ||
| 41 | - // zero-terminated string | ||
| 42 | + CharType bz2header[] = | ||
| 43 | + { 'B', 'Z', 'h', '9', '1', 'A', 'Y', '&', 'S', 'Y' }; | ||
| 44 | CharType bz2ZeroHeader[] = | ||
| 45 | - { 'B', 'Z', 'h', '9', 0x17, 0x72, 0x45, 0x38, 0x50, 0x90, 0 }; | ||
| 46 | + { 'B', 'Z', 'h', '9', 0x17, 0x72, 0x45, 0x38, 0x50, 0x90 }; | ||
| 47 | |||
| 48 | _hInFile = hInFile; | ||
| 49 | _eof = false; | ||
| 50 | - _bz2Header = bz2header; | ||
| 51 | - _bz2HeaderZero = bz2ZeroHeader; | ||
| 52 | + _bz2Header.assign(begin(bz2header), end(bz2header)); | ||
| 53 | + _bz2HeaderZero.assign(begin(bz2ZeroHeader), end(bz2ZeroHeader)); | ||
| 54 | _bz2HeaderFound = false; | ||
| 55 | _inBuffCapacity = 0; | ||
| 56 | _errState = 0; | ||
| 57 | @@ -361,7 +361,7 @@ BZ2StreamScanner::CharType * BZ2StreamScanner::locateHeaderPrefixInBuff() | ||
| 58 | _errState |= ERR_INVALID_FILE_FORMAT; | ||
| 59 | _inBuffSearchPtr = getInBuffEnd(); | ||
| 60 | } | ||
| 61 | - else if ( _bz2Header.compare( 0, prefixLen, getInBuffSearchPtr(), prefixLen ) == 0 ) | ||
| 62 | + else if ( equal( _bz2Header.begin(), _bz2Header.begin() + prefixLen, getInBuffSearchPtr() ) ) | ||
| 63 | { | ||
| 64 | // header prefix found | ||
| 65 | } | ||
| 66 | @@ -416,7 +416,7 @@ BZ2StreamScanner::CharType * BZ2StreamScanner::searchNextHeaderInBuff() | ||
| 67 | while ( !failed() && ( getUnsearchedCount() >= getHeaderSize() ) ) | ||
| 68 | { | ||
| 69 | // _inBuffSearchPtr += prefixLen; | ||
| 70 | - basic_string<CharType> * pHdr = NULL; | ||
| 71 | + vector<CharType> * pHdr = NULL; | ||
| 72 | |||
| 73 | if ( getInBuffSearchPtr()[hsp] == _bz2Header[hsp] ) | ||
| 74 | { | ||
| 75 | @@ -441,13 +441,14 @@ BZ2StreamScanner::CharType * BZ2StreamScanner::searchNextHeaderInBuff() | ||
| 76 | (*pHdr)[prefixLen] = bwtSizeChar; | ||
| 77 | |||
| 78 | // compare the remaining part of magic header | ||
| 79 | - int cmpres = pHdr->compare( hsp, pHdr->size() - hsp, | ||
| 80 | - getInBuffSearchPtr() + hsp, pHdr->size() - hsp ); | ||
| 81 | + bool cmpres = equal( pHdr->begin() + hsp, pHdr->end(), | ||
| 82 | + getInBuffSearchPtr() + hsp ); | ||
| 83 | + | ||
| 84 | |||
| 85 | #ifdef PBZIP_DEBUG | ||
| 86 | fprintf( stderr, " searchNextHeaderInBuff:cmpres=%d\n", cmpres ); | ||
| 87 | #endif | ||
| 88 | - if ( cmpres == 0 ) | ||
| 89 | + if ( cmpres ) | ||
| 90 | { | ||
| 91 | _searchStatus = true; | ||
| 92 | #ifdef PBZIP_DEBUG | ||
| 93 | diff --git a/BZ2StreamScanner.h b/BZ2StreamScanner.h | ||
| 94 | index d3729fe..32697cb 100644 | ||
| 95 | --- a/BZ2StreamScanner.h | ||
| 96 | +++ b/BZ2StreamScanner.h | ||
| 97 | @@ -44,7 +44,7 @@ public: | ||
| 98 | |||
| 99 | size_t getInBuffSize() const { return ( _inBuffEnd - _inBuff ); } | ||
| 100 | size_t getInBuffCapacity() const { return _inBuffCapacity; } | ||
| 101 | - const basic_string<CharType> & getHeader() const { return _bz2Header; } | ||
| 102 | + const vector<CharType> & getHeader() const { return _bz2Header; } | ||
| 103 | size_t getHeaderSize() const { return _bz2Header.size(); } | ||
| 104 | int getErrState() const { return _errState; } | ||
| 105 | bool failed() { return ( _errState != 0 ); } | ||
| 106 | @@ -125,8 +125,8 @@ private: | ||
| 107 | int _hInFile; // input file descriptor | ||
| 108 | bool _eof; | ||
| 109 | |||
| 110 | - basic_string<CharType> _bz2Header; | ||
| 111 | - basic_string<CharType> _bz2HeaderZero; | ||
| 112 | + vector<CharType> _bz2Header; | ||
| 113 | + vector<CharType> _bz2HeaderZero; | ||
| 114 | bool _bz2HeaderFound; | ||
| 115 | bool _searchStatus; | ||
| 116 | |||
diff --git a/meta/recipes-extended/pbzip2/pbzip2/0001-pbzip2-Fix-invalid-suffix-on-literal-C-11-warning.patch b/meta/recipes-extended/pbzip2/pbzip2/0001-pbzip2-Fix-invalid-suffix-on-literal-C-11-warning.patch deleted file mode 100644 index 8fc377c31b..0000000000 --- a/meta/recipes-extended/pbzip2/pbzip2/0001-pbzip2-Fix-invalid-suffix-on-literal-C-11-warning.patch +++ /dev/null | |||
| @@ -1,73 +0,0 @@ | |||
| 1 | From de4a948d356c9befb88c796168e97eb05b9a3385 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 23 Apr 2018 22:54:42 -0700 | ||
| 4 | Subject: [PATCH] pbzip2: Fix invalid suffix on literal C++11 warning | ||
| 5 | |||
| 6 | Fixes -Wreserved-user-defined-literal] errors. | ||
| 7 | Also reported in launchpad here https://bugs.launchpad.net/pbzip2/+bug/1746369 | ||
| 8 | |||
| 9 | Upstream-Status: Submitted [https://launchpadlibrarian.net/355230152/pbzip2.patch] | ||
| 10 | |||
| 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 12 | --- | ||
| 13 | pbzip2.cpp | 12 ++++++------ | ||
| 14 | 1 file changed, 6 insertions(+), 6 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/pbzip2.cpp b/pbzip2.cpp | ||
| 17 | index 66ca978..4287ea7 100644 | ||
| 18 | --- a/pbzip2.cpp | ||
| 19 | +++ b/pbzip2.cpp | ||
| 20 | @@ -1220,7 +1220,7 @@ int producer_decompress(int hInfile, OFF_T fileSize, queue *fifo) | ||
| 21 | // give warning to user if block is larger than 250 million bytes | ||
| 22 | if (fileData->bufSize > 250000000) | ||
| 23 | { | ||
| 24 | - fprintf(stderr, "pbzip2: *WARNING: Compressed block size is large [%"PRIuMAX" bytes].\n", | ||
| 25 | + fprintf(stderr, "pbzip2: *WARNING: Compressed block size is large [%" PRIuMAX " bytes].\n", | ||
| 26 | (uintmax_t) fileData->bufSize); | ||
| 27 | fprintf(stderr, " If program aborts, use regular BZIP2 to decompress.\n"); | ||
| 28 | } | ||
| 29 | @@ -1829,7 +1829,7 @@ void *fileWriter(void *outname) | ||
| 30 | |||
| 31 | if (QuietMode != 1) | ||
| 32 | { | ||
| 33 | - fprintf(stderr, " Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize); | ||
| 34 | + fprintf(stderr, " Output Size: %" PRIuMAX " bytes\n", (uintmax_t)CompressedSize); | ||
| 35 | } | ||
| 36 | |||
| 37 | #ifdef PBZIP_DEBUG | ||
| 38 | @@ -2072,7 +2072,7 @@ int directcompress(int hInfile, OFF_T fileSize, int blockSize, const char *OutFi | ||
| 39 | close(hOutfile); | ||
| 40 | if (QuietMode != 1) | ||
| 41 | { | ||
| 42 | - fprintf(stderr, " Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize); | ||
| 43 | + fprintf(stderr, " Output Size: %" PRIuMAX " bytes\n", (uintmax_t)CompressedSize); | ||
| 44 | } | ||
| 45 | |||
| 46 | syncSetProducerDone(1); // Not really needed for direct version | ||
| 47 | @@ -2794,7 +2794,7 @@ void outputBufferInit(size_t size) | ||
| 48 | // unlikely to get here since more likely exception will be thrown | ||
| 49 | if (OutputBuffer.size() != size) | ||
| 50 | { | ||
| 51 | - fprintf(stderr, "pbzip2: *ERROR: Could not initialize (OutputBuffer); size=%"PRIuMAX"! Aborting...\n", (uintmax_t)size); | ||
| 52 | + fprintf(stderr, "pbzip2: *ERROR: Could not initialize (OutputBuffer); size=%" PRIuMAX "! Aborting...\n", (uintmax_t)size); | ||
| 53 | safe_mutex_unlock(OutMutex); | ||
| 54 | exit(1); | ||
| 55 | } | ||
| 56 | @@ -4102,7 +4102,7 @@ int main(int argc, char* argv[]) | ||
| 57 | if (decompress == 1) | ||
| 58 | fprintf(stderr, " BWT Block Size: %c00k\n", BWTblockSizeChar); | ||
| 59 | if (hasInFile) | ||
| 60 | - fprintf(stderr, " Input Size: %"PRIuMAX" bytes\n", (uintmax_t)InFileSize); | ||
| 61 | + fprintf(stderr, " Input Size: %" PRIuMAX " bytes\n", (uintmax_t)InFileSize); | ||
| 62 | } | ||
| 63 | |||
| 64 | if (decompress == 1) | ||
| 65 | @@ -4224,7 +4224,7 @@ int main(int argc, char* argv[]) | ||
| 66 | { | ||
| 67 | NumBufferedBlocksMax = numCPU; | ||
| 68 | if (QuietMode != 1) | ||
| 69 | - fprintf(stderr, "*Warning* Max memory limit increased to %"PRIuMAX" MB to support %d CPUs\n", (uintmax_t)((NumBufferedBlocksMax + (numCPU * 2)) * blockSize)/1000000, numCPU); | ||
| 70 | + fprintf(stderr, "*Warning* Max memory limit increased to %" PRIuMAX " MB to support %d CPUs\n", (uintmax_t)((NumBufferedBlocksMax + (numCPU * 2)) * blockSize)/1000000, numCPU); | ||
| 71 | } | ||
| 72 | else | ||
| 73 | { | ||
diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb deleted file mode 100644 index 063f600ba9..0000000000 --- a/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | SUMMARY = "PBZIP2 is a parallel implementation of bzip2" | ||
| 2 | DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \ | ||
| 3 | file compressor that uses pthreads and achieves near-linear speedup on SMP \ | ||
| 4 | machines. The output of this version is fully compatible with bzip2 v1.0.2 or \ | ||
| 5 | newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)." | ||
| 6 | HOMEPAGE = "https://launchpad.net/pbzip2/" | ||
| 7 | SECTION = "console/utils" | ||
| 8 | LICENSE = "bzip2-1.0.6" | ||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=398b8832c6f840cfebd20ab2be6a3743" | ||
| 10 | |||
| 11 | DEPENDS = "bzip2" | ||
| 12 | DEPENDS:append:class-native = " bzip2-replacement-native" | ||
| 13 | |||
| 14 | SRC_URI = "https://launchpad.net/${BPN}/1.1/${PV}/+download/${BP}.tar.gz \ | ||
| 15 | file://0001-pbzip2-Fix-invalid-suffix-on-literal-C-11-warning.patch \ | ||
| 16 | file://0001-Do-not-rely-on-std-char_traits-template-from-stdlib.patch \ | ||
| 17 | " | ||
| 18 | |||
| 19 | SRC_URI[sha256sum] = "8fd13eaaa266f7ee91f85c1ea97c86d9c9cc985969db9059cdebcb1e1b7bdbe6" | ||
| 20 | |||
| 21 | UPSTREAM_CHECK_URI = "https://launchpad.net/pbzip2/+milestones" | ||
| 22 | UPSTREAM_CHECK_REGEX = "pbzip2 (?P<pver>\d+(\.\d+)+)" | ||
| 23 | |||
| 24 | EXTRA_OEMAKE = "CXX='${CXX} ${CXXFLAGS}' LDFLAGS='${LDFLAGS}'" | ||
| 25 | |||
| 26 | do_install() { | ||
| 27 | install -d ${D}${bindir} | ||
| 28 | install -m 0755 pbzip2 ${D}${bindir}/ | ||
| 29 | } | ||
| 30 | |||
| 31 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/perl/libconvert-asn1-perl_0.34.bb b/meta/recipes-extended/perl/libconvert-asn1-perl_0.34.bb deleted file mode 100644 index 7e167d6e67..0000000000 --- a/meta/recipes-extended/perl/libconvert-asn1-perl_0.34.bb +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | SUMMARY = "Convert::ASN1 - Perl ASN.1 Encode/Decode library" | ||
| 2 | SECTION = "libs" | ||
| 3 | HOMEPAGE = "http://search.cpan.org/dist/Convert-ASN1/" | ||
| 4 | DESCRIPTION = "Convert::ASN1 is a perl library for encoding/decoding data using ASN.1 definitions." | ||
| 5 | LICENSE = "Artistic-1.0 | GPL-1.0-or-later" | ||
| 6 | LIC_FILES_CHKSUM = "file://README.md;beginline=91;endline=97;md5=ceff7fd286eb6d8e8e0d3d23e096a63f" | ||
| 7 | |||
| 8 | SRC_URI = "https://cpan.metacpan.org/authors/id/T/TI/TIMLEGGE/Convert-ASN1-${PV}.tar.gz" | ||
| 9 | |||
| 10 | SRC_URI[sha256sum] = "a628d7c9d390568fb76359975fa03f626ce57f10dc17980e8e3587d7713e4ee7" | ||
| 11 | |||
| 12 | S = "${UNPACKDIR}/Convert-ASN1-${PV}" | ||
| 13 | |||
| 14 | inherit cpan ptest-perl | ||
| 15 | |||
| 16 | EXTRA_PERLFLAGS = "-I ${PERLHOSTLIB}" | ||
| 17 | |||
| 18 | RDEPENDS:${PN} += "perl-module-exporter perl-module-constant perl-module-encode perl-module-encode-encoding perl-module-utf8 \ | ||
| 19 | perl-module-socket perl-module-time-local perl-module-posix perl-module-scalar-util perl-module-test-more" | ||
| 20 | RDEPENDS:${PN}-ptest += "perl-module-math-bigint perl-module-io-socket perl-module-data-dumper perl-module-math-bigint-calc" | ||
| 21 | |||
| 22 | BBCLASSEXTEND = "native" | ||
diff --git a/meta/recipes-extended/perl/libtimedate-perl_2.30.bb b/meta/recipes-extended/perl/libtimedate-perl_2.30.bb deleted file mode 100644 index 7f9f40d996..0000000000 --- a/meta/recipes-extended/perl/libtimedate-perl_2.30.bb +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | SUMMARY = "Perl modules useful for manipulating date and time information" | ||
| 2 | HOMEPAGE = "https://metacpan.org/release/TimeDate" | ||
| 3 | DESCRIPTION = "This is the perl5 TimeDate distribution. It requires perl version 5.003 or later." | ||
| 4 | SECTION = "libs" | ||
| 5 | # You can redistribute it and/or modify it under the same terms as Perl itself. | ||
| 6 | LICENSE = "Artistic-1.0 | GPL-1.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://README;beginline=21;md5=576b7cb41e5e821501a01ed66f0f9d9e" | ||
| 8 | |||
| 9 | SRC_URI = "http://search.cpan.org/CPAN/authors/id/G/GB/GBARR/TimeDate-${PV}.tar.gz" | ||
| 10 | |||
| 11 | S = "${UNPACKDIR}/TimeDate-${PV}" | ||
| 12 | |||
| 13 | inherit cpan ptest-perl | ||
| 14 | |||
| 15 | BBCLASSEXTEND = "native" | ||
| 16 | |||
| 17 | RDEPENDS:${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local" | ||
| 18 | RDEPENDS:${PN}-ptest += "perl-module-test-more perl-module-utf8" | ||
| 19 | |||
| 20 | SRC_URI[sha256sum] = "75bd254871cb5853a6aa0403ac0be270cdd75c9d1b6639f18ecba63c15298e86" | ||
diff --git a/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb b/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb deleted file mode 100644 index 9653cb427b..0000000000 --- a/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | SUMMARY = "Perl module for supporting simple generic namespaces" | ||
| 2 | HOMEPAGE = "http://veillard.com/XML/" | ||
| 3 | DESCRIPTION = "XML::NamespaceSupport offers a simple way to process namespace-based XML names. \ | ||
| 4 | It also helps maintain a prefix-to-namespace URI map, and provides a number of \ | ||
| 5 | basic checks. " | ||
| 6 | |||
| 7 | SECTION = "libs" | ||
| 8 | LICENSE = "Artistic-1.0 | GPL-1.0-or-later" | ||
| 9 | |||
| 10 | SRCNAME = "XML-NamespaceSupport" | ||
| 11 | |||
| 12 | LIC_FILES_CHKSUM = "file://LICENSE;md5=c9d8a117e7620b5adf8d69c29613ceab" | ||
| 13 | |||
| 14 | SRC_URI = "${CPAN_MIRROR}/authors/id/P/PE/PERIGRIN/${SRCNAME}-${PV}.tar.gz" | ||
| 15 | SRC_URI[sha256sum] = "47e995859f8dd0413aa3f22d350c4a62da652e854267aa0586ae544ae2bae5ef" | ||
| 16 | |||
| 17 | UPSTREAM_CHECK_REGEX = "XML\-NamespaceSupport\-(?P<pver>(\d+\.\d+))(?!_\d+).tar" | ||
| 18 | |||
| 19 | S = "${UNPACKDIR}/${SRCNAME}-${PV}" | ||
| 20 | |||
| 21 | inherit cpan ptest-perl | ||
| 22 | |||
| 23 | RDEPENDS:${PN}-ptest += "perl-module-test-more" | ||
| 24 | |||
| 25 | BBCLASSEXTEND = "native nativesdk" | ||
| 26 | |||
diff --git a/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb b/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb deleted file mode 100644 index 8d97e95e83..0000000000 --- a/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | SUMMARY = "Base class SAX Drivers and Filters" | ||
| 2 | HOMEPAGE = "http://search.cpan.org/dist/XML-SAX-Base/" | ||
| 3 | DESCRIPTION = "This module has a very simple task - to be a base class for \ | ||
| 4 | PerlSAX drivers and filters. It's default behaviour is to pass \ | ||
| 5 | the input directly to the output unchanged. It can be useful to \ | ||
| 6 | use this module as a base class so you don't have to, for example, \ | ||
| 7 | implement the characters() callback." | ||
| 8 | |||
| 9 | SECTION = "libs" | ||
| 10 | LICENSE = "Artistic-1.0 | GPL-1.0-or-later" | ||
| 11 | RDEPENDS:${PN} += "perl-module-extutils-makemaker" | ||
| 12 | |||
| 13 | LIC_FILES_CHKSUM = "file://dist.ini;endline=5;md5=8f9c9a55340aefaee6e9704c88466446" | ||
| 14 | |||
| 15 | SRC_URI = "http://search.cpan.org/CPAN/authors/id/G/GR/GRANTM/XML-SAX-Base-${PV}.tar.gz" | ||
| 16 | |||
| 17 | SRC_URI[sha256sum] = "66cb355ba4ef47c10ca738bd35999723644386ac853abbeb5132841f5e8a2ad0" | ||
| 18 | |||
| 19 | S = "${UNPACKDIR}/XML-SAX-Base-${PV}" | ||
| 20 | |||
| 21 | inherit cpan ptest-perl | ||
| 22 | |||
| 23 | RDEPENDS:${PN}-ptest += "perl-module-test perl-module-test-more" | ||
| 24 | |||
| 25 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb b/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb deleted file mode 100644 index 67bdac981d..0000000000 --- a/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | SUMMARY = "Perl module for using and building Perl SAX2 XML processors" | ||
| 2 | HOMEPAGE = "http://search.cpan.org/dist/XML-SAX/" | ||
| 3 | DESCRIPTION = "XML::SAX consists of several framework classes for using and \ | ||
| 4 | building Perl SAX2 XML parsers, filters, and drivers. It is designed \ | ||
| 5 | around the need to be able to "plug in" different SAX parsers to an \ | ||
| 6 | application without requiring programmer intervention. Those of you \ | ||
| 7 | familiar with the DBI will be right at home. Some of the designs \ | ||
| 8 | come from the Java JAXP specification (SAX part), only without the \ | ||
| 9 | javaness." | ||
| 10 | |||
| 11 | SECTION = "libs" | ||
| 12 | LICENSE = "Artistic-1.0 | GPL-1.0-or-later" | ||
| 13 | DEPENDS += "libxml-namespacesupport-perl-native" | ||
| 14 | RDEPENDS:${PN} += "libxml-namespacesupport-perl libxml-sax-base-perl perl-module-file-temp" | ||
| 15 | |||
| 16 | LIC_FILES_CHKSUM = "file://LICENSE;md5=65c4cd8f39c24c7135ed70dacbcb09e3" | ||
| 17 | |||
| 18 | SRC_URI = "http://search.cpan.org/CPAN/authors/id/G/GR/GRANTM/XML-SAX-${PV}.tar.gz" | ||
| 19 | |||
| 20 | SRC_URI[sha256sum] = "4506c387043aa6a77b455f00f57409f3720aa7e553495ab2535263b4ed1ea12a" | ||
| 21 | |||
| 22 | S = "${UNPACKDIR}/XML-SAX-${PV}" | ||
| 23 | |||
| 24 | inherit cpan ptest-perl | ||
| 25 | |||
| 26 | do_install_ptest() { | ||
| 27 | cp -r ${B}/testfiles ${D}${PTEST_PATH} | ||
| 28 | chown -R root:root ${D}${PTEST_PATH}/testfiles | ||
| 29 | } | ||
| 30 | |||
| 31 | RDEPENDS:${PN} += "perl-module-encode perl-module-perlio perl-module-encode-encoding" | ||
| 32 | |||
| 33 | RDEPENDS:${PN}-ptest += " \ | ||
| 34 | perl-module-base \ | ||
| 35 | perl-module-encode-byte \ | ||
| 36 | perl-module-encode-unicode \ | ||
| 37 | perl-module-fatal \ | ||
| 38 | perl-module-test \ | ||
| 39 | " | ||
| 40 | |||
| 41 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/pigz/pigz_2.8.bb b/meta/recipes-extended/pigz/pigz_2.8.bb deleted file mode 100644 index fcf0c93e41..0000000000 --- a/meta/recipes-extended/pigz/pigz_2.8.bb +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | SUMMARY = "A parallel implementation of gzip" | ||
| 2 | DESCRIPTION = "pigz, which stands for parallel implementation of gzip, is a \ | ||
| 3 | fully functional replacement for gzip that exploits multiple processors and \ | ||
| 4 | multiple cores to the hilt when compressing data. pigz was written by Mark \ | ||
| 5 | Adler, and uses the zlib and pthread libraries." | ||
| 6 | HOMEPAGE = "http://zlib.net/pigz/" | ||
| 7 | SECTION = "console/utils" | ||
| 8 | LICENSE = "Zlib & Apache-2.0" | ||
| 9 | LIC_FILES_CHKSUM = "file://pigz.c;md5=9ae6dee8ceba9610596ed0ada493d142;beginline=7;endline=21" | ||
| 10 | |||
| 11 | SRC_URI = "http://zlib.net/${BPN}/fossils/${BP}.tar.gz" | ||
| 12 | SRC_URI[sha256sum] = "eb872b4f0e1f0ebe59c9f7bd8c506c4204893ba6a8492de31df416f0d5170fd0" | ||
| 13 | PROVIDES:class-native += "gzip-native" | ||
| 14 | |||
| 15 | # Point this at the homepage in case /fossils/ isn't updated | ||
| 16 | UPSTREAM_CHECK_URI = "http://zlib.net/${BPN}/" | ||
| 17 | UPSTREAM_CHECK_REGEX = "pigz-(?P<pver>.*)\.tar" | ||
| 18 | |||
| 19 | DEPENDS = "zlib" | ||
| 20 | |||
| 21 | EXTRA_OEMAKE = "-e MAKEFLAGS=" | ||
| 22 | |||
| 23 | inherit update-alternatives | ||
| 24 | |||
| 25 | do_install() { | ||
| 26 | # Install files into /bin (FHS), which is typical place for gzip | ||
| 27 | install -d ${D}${base_bindir} | ||
| 28 | install ${B}/pigz ${D}${base_bindir}/pigz | ||
| 29 | ln -nsf pigz ${D}${base_bindir}/unpigz | ||
| 30 | ln -nsf pigz ${D}${base_bindir}/pigzcat | ||
| 31 | } | ||
| 32 | |||
| 33 | do_install:append:class-native() { | ||
| 34 | install -d ${D}${bindir} | ||
| 35 | install ${B}/pigz ${D}${bindir}/gzip | ||
| 36 | ln -nsf gzip ${D}${bindir}/gunzip | ||
| 37 | ln -nsf gzip ${D}${bindir}/zcat | ||
| 38 | } | ||
| 39 | |||
| 40 | ALTERNATIVE_PRIORITY = "110" | ||
| 41 | ALTERNATIVE:${PN} = "gunzip gzip zcat" | ||
| 42 | ALTERNATIVE:${PN}:class-nativesdk = "" | ||
| 43 | ALTERNATIVE_LINK_NAME[gunzip] = "${base_bindir}/gunzip" | ||
| 44 | ALTERNATIVE_LINK_NAME[gzip] = "${base_bindir}/gzip" | ||
| 45 | ALTERNATIVE_LINK_NAME[zcat] = "${base_bindir}/zcat" | ||
| 46 | ALTERNATIVE_TARGET = "${base_bindir}/pigz" | ||
| 47 | |||
| 48 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/procps/procps/sysctl.conf b/meta/recipes-extended/procps/procps/sysctl.conf deleted file mode 100644 index 253f3701bd..0000000000 --- a/meta/recipes-extended/procps/procps/sysctl.conf +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | # This configuration taken from procps v3.3.15 | ||
| 2 | # Commented out kernel/pid_max=10000 line | ||
| 3 | # | ||
| 4 | # /etc/sysctl.conf - Configuration file for setting system variables | ||
| 5 | # See sysctl.conf (5) for information. | ||
| 6 | |||
| 7 | # you can have the CD-ROM close when you use it, and open | ||
| 8 | # when you are done. | ||
| 9 | #dev.cdrom.autoeject = 1 | ||
| 10 | #dev.cdrom.autoclose = 1 | ||
| 11 | |||
| 12 | # protection from the SYN flood attack | ||
| 13 | net/ipv4/tcp_syncookies=1 | ||
| 14 | |||
| 15 | # see the evil packets in your log files | ||
| 16 | net/ipv4/conf/all/log_martians=1 | ||
| 17 | |||
| 18 | # makes you vulnerable or not :-) | ||
| 19 | net/ipv4/conf/all/accept_redirects=0 | ||
| 20 | net/ipv4/conf/all/accept_source_route=0 | ||
| 21 | net/ipv4/icmp_echo_ignore_broadcasts =1 | ||
| 22 | |||
| 23 | # needed for routing, including masquerading or NAT | ||
| 24 | #net/ipv4/ip_forward=1 | ||
| 25 | |||
| 26 | # sets the port range used for outgoing connections | ||
| 27 | #net.ipv4.ip_local_port_range = 32768 61000 | ||
| 28 | |||
| 29 | # Broken routers and obsolete firewalls will corrupt the window scaling | ||
| 30 | # and ECN. Set these values to 0 to disable window scaling and ECN. | ||
| 31 | # This may, rarely, cause some performance loss when running high-speed | ||
| 32 | # TCP/IP over huge distances or running TCP/IP over connections with high | ||
| 33 | # packet loss and modern routers. This sure beats dropped connections. | ||
| 34 | #net.ipv4.tcp_ecn = 0 | ||
| 35 | |||
| 36 | # Swapping too much or not enough? Disks spinning up when you'd | ||
| 37 | # rather they didn't? Tweak these. | ||
| 38 | #vm.vfs_cache_pressure = 100 | ||
| 39 | #vm.laptop_mode = 0 | ||
| 40 | #vm.swappiness = 60 | ||
| 41 | |||
| 42 | #kernel.printk_ratelimit_burst = 10 | ||
| 43 | #kernel.printk_ratelimit = 5 | ||
| 44 | #kernel.panic_on_oops = 0 | ||
| 45 | |||
| 46 | # Reboot 600 seconds after a panic | ||
| 47 | #kernel.panic = 600 | ||
| 48 | |||
| 49 | # enable SysRq key (note: console security issues) | ||
| 50 | #kernel.sysrq = 1 | ||
| 51 | |||
| 52 | # Change name of core file to start with the command name | ||
| 53 | # so you get things like: emacs.core mozilla-bin.core X.core | ||
| 54 | #kernel.core_pattern = %e.core | ||
| 55 | |||
| 56 | # NIS/YP domain (not always equal to DNS domain) | ||
| 57 | #kernel.domainname = example.com | ||
| 58 | #kernel.hostname = darkstar | ||
| 59 | |||
| 60 | # This limits PID values to 4 digits, which allows tools like ps | ||
| 61 | # to save screen space. | ||
| 62 | #kernel/pid_max=10000 | ||
| 63 | |||
| 64 | # Protects against creating or following links under certain conditions | ||
| 65 | # See https://www.kernel.org/doc/Documentation/sysctl/fs.txt | ||
| 66 | #fs.protected_hardlinks = 1 | ||
| 67 | #fs.protected_symlinks = 1 | ||
diff --git a/meta/recipes-extended/procps/procps_4.0.5.bb b/meta/recipes-extended/procps/procps_4.0.5.bb deleted file mode 100644 index d568cc831e..0000000000 --- a/meta/recipes-extended/procps/procps_4.0.5.bb +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | SUMMARY = "System and process monitoring utilities" | ||
| 2 | DESCRIPTION = "Procps contains a set of system utilities that provide system information about processes using \ | ||
| 3 | the /proc filesystem. The package includes the programs ps, top, vmstat, w, kill, and skill." | ||
| 4 | HOMEPAGE = "https://gitlab.com/procps-ng/procps" | ||
| 5 | SECTION = "base" | ||
| 6 | LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 8 | file://COPYING.LIB;md5=4cf66a4984120007c9881cc871cf49db \ | ||
| 9 | " | ||
| 10 | |||
| 11 | DEPENDS = "ncurses" | ||
| 12 | |||
| 13 | inherit autotools gettext pkgconfig update-alternatives | ||
| 14 | |||
| 15 | SRC_URI = "git://gitlab.com/procps-ng/procps.git;protocol=https;branch=master;tag=v${PV} \ | ||
| 16 | file://sysctl.conf \ | ||
| 17 | " | ||
| 18 | SRCREV = "f46b2f7929cdfe2913ed0a7f585b09d6adbf994e" | ||
| 19 | |||
| 20 | # Upstream has a custom autogen.sh which invokes po/update-potfiles as they | ||
| 21 | # don't ship a po/POTFILES.in (which is silly). Without that file gettext | ||
| 22 | # doesn't believe po/ is a gettext directory and won't generate po/Makefile. | ||
| 23 | do_configure:prepend() { | ||
| 24 | ( cd ${S} && po/update-potfiles ) | ||
| 25 | } | ||
| 26 | |||
| 27 | EXTRA_OECONF = "--enable-skill --disable-modern-top" | ||
| 28 | |||
| 29 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" | ||
| 30 | PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd" | ||
| 31 | |||
| 32 | do_install:append () { | ||
| 33 | install -d ${D}${base_bindir} | ||
| 34 | [ "${bindir}" != "${base_bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i; done | ||
| 35 | install -d ${D}${base_sbindir} | ||
| 36 | [ "${sbindir}" != "${base_sbindir}" ] && for i in ${base_sbindir_progs}; do mv ${D}${sbindir}/$i ${D}${base_sbindir}/$i; done | ||
| 37 | if [ "${base_sbindir}" != "${sbindir}" ]; then | ||
| 38 | rmdir ${D}${sbindir} | ||
| 39 | fi | ||
| 40 | |||
| 41 | install -d ${D}${sysconfdir} | ||
| 42 | install -m 0644 ${UNPACKDIR}/sysctl.conf ${D}${sysconfdir}/sysctl.conf | ||
| 43 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then | ||
| 44 | install -d ${D}${sysconfdir}/sysctl.d | ||
| 45 | ln -sf ../sysctl.conf ${D}${sysconfdir}/sysctl.d/99-sysctl.conf | ||
| 46 | fi | ||
| 47 | } | ||
| 48 | |||
| 49 | CONFFILES:${PN} = "${sysconfdir}/sysctl.conf" | ||
| 50 | |||
| 51 | bindir_progs = "free pkill pmap pgrep pwdx skill snice top uptime w" | ||
| 52 | base_bindir_progs += "kill pidof ps watch" | ||
| 53 | base_sbindir_progs += "sysctl" | ||
| 54 | |||
| 55 | ALTERNATIVE_PRIORITY = "200" | ||
| 56 | ALTERNATIVE_PRIORITY[pidof] = "150" | ||
| 57 | |||
| 58 | ALTERNATIVE:${PN} = "${bindir_progs} ${base_bindir_progs} ${base_sbindir_progs}" | ||
| 59 | |||
| 60 | ALTERNATIVE:${PN}-doc = "kill.1 uptime.1" | ||
| 61 | ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1" | ||
| 62 | ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1" | ||
| 63 | |||
| 64 | python __anonymous() { | ||
| 65 | for prog in d.getVar('base_bindir_progs').split(): | ||
| 66 | d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog)) | ||
| 67 | |||
| 68 | for prog in d.getVar('base_sbindir_progs').split(): | ||
| 69 | d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_sbindir'), prog)) | ||
| 70 | } | ||
| 71 | |||
| 72 | PROCPS_PACKAGES = "${PN}-lib \ | ||
| 73 | ${PN}-ps \ | ||
| 74 | ${PN}-sysctl" | ||
| 75 | |||
| 76 | PACKAGE_BEFORE_PN = "${PROCPS_PACKAGES}" | ||
| 77 | RDEPENDS:${PN} += "${PROCPS_PACKAGES}" | ||
| 78 | |||
| 79 | RDEPENDS:${PN}-ps += "${PN}-lib" | ||
| 80 | RDEPENDS:${PN}-sysctl += "${PN}-lib" | ||
| 81 | |||
| 82 | FILES:${PN}-lib = "${libdir}" | ||
| 83 | FILES:${PN}-ps = "${base_bindir}/ps.${BPN}" | ||
| 84 | FILES:${PN}-sysctl = "${base_sbindir}/sysctl.${BPN} ${sysconfdir}/sysctl.conf ${sysconfdir}/sysctl.d" | ||
| 85 | |||
| 86 | ALTERNATIVE:${PN}:remove = "ps" | ||
| 87 | ALTERNATIVE:${PN}:remove = "sysctl" | ||
| 88 | |||
| 89 | ALTERNATIVE:${PN}-ps = "ps" | ||
| 90 | ALTERNATIVE_TARGET[ps] = "${base_bindir}/ps" | ||
| 91 | ALTERNATIVE_LINK_NAME[ps] = "${base_bindir}/ps" | ||
| 92 | |||
| 93 | ALTERNATIVE:${PN}-sysctl = "sysctl" | ||
| 94 | ALTERNATIVE_TARGET[sysctl] = "${base_sbindir}/sysctl" | ||
| 95 | ALTERNATIVE_LINK_NAME[sysctl] = "${base_sbindir}/sysctl" | ||
diff --git a/meta/recipes-extended/psmisc/psmisc_23.7.bb b/meta/recipes-extended/psmisc/psmisc_23.7.bb deleted file mode 100644 index 44f8530977..0000000000 --- a/meta/recipes-extended/psmisc/psmisc_23.7.bb +++ /dev/null | |||
| @@ -1,60 +0,0 @@ | |||
| 1 | SUMMARY = "Utilities for managing processes on your system" | ||
| 2 | HOMEPAGE = "http://psmisc.sf.net/" | ||
| 3 | DESCRIPTION = "The psmisc package contains utilities for managing processes on your \ | ||
| 4 | system: pstree, killall and fuser. The pstree command displays a tree \ | ||
| 5 | structure of all of the running processes on your system. The killall \ | ||
| 6 | command sends a specified signal (SIGTERM if nothing is specified) to \ | ||
| 7 | processes identified by name. The fuser command identifies the PIDs \ | ||
| 8 | of processes that are using specified files or filesystems." | ||
| 9 | SECTION = "base" | ||
| 10 | DEPENDS = "ncurses virtual/libintl" | ||
| 11 | |||
| 12 | LICENSE = "GPL-2.0-only" | ||
| 13 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" | ||
| 14 | |||
| 15 | SRC_URI = "git://gitlab.com/psmisc/psmisc.git;protocol=https;branch=master;tag=v${PV} \ | ||
| 16 | " | ||
| 17 | SRCREV = "9091d6dbcce3d8fb87adf9249a2eb346d25a562c" | ||
| 18 | |||
| 19 | inherit autotools gettext | ||
| 20 | |||
| 21 | # Upstream has a custom autogen.sh which invokes po/update-potfiles as they | ||
| 22 | # don't ship a po/POTFILES.in (which is silly). Without that file gettext | ||
| 23 | # doesn't believe po/ is a gettext directory and won't generate po/Makefile. | ||
| 24 | do_configure:prepend() { | ||
| 25 | ( cd ${S} && po/update-potfiles ) | ||
| 26 | } | ||
| 27 | |||
| 28 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" | ||
| 29 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," | ||
| 30 | PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux" | ||
| 31 | |||
| 32 | ALLOW_EMPTY:${PN} = "1" | ||
| 33 | |||
| 34 | PACKAGES =+ "fuser fuser-doc killall killall-doc pstree pstree-doc" | ||
| 35 | PACKAGES += "psmisc-extras" | ||
| 36 | |||
| 37 | FILES:${PN} = "" | ||
| 38 | RDEPENDS:${PN} = "fuser killall pstree" | ||
| 39 | |||
| 40 | FILES:fuser = "${bindir}/fuser.${BPN}" | ||
| 41 | FILES:fuser-doc = "${mandir}/man1/fuser*" | ||
| 42 | |||
| 43 | FILES:killall = "${bindir}/killall.${BPN}" | ||
| 44 | FILES:killall-doc = "${mandir}/man1/killall*" | ||
| 45 | |||
| 46 | FILES:pstree = "${bindir}/pstree" | ||
| 47 | FILES:pstree-doc = "${mandir}/man1/pstree*" | ||
| 48 | |||
| 49 | FILES:psmisc-extras = "${bindir}" | ||
| 50 | FILES:psmisc-extras-doc = "${mandir}" | ||
| 51 | |||
| 52 | inherit update-alternatives | ||
| 53 | |||
| 54 | ALTERNATIVE_PRIORITY = "90" | ||
| 55 | |||
| 56 | ALTERNATIVE:killall = "killall" | ||
| 57 | |||
| 58 | ALTERNATIVE:fuser = "fuser" | ||
| 59 | |||
| 60 | ALTERNATIVE:pstree = "pstree" | ||
diff --git a/meta/recipes-extended/quota/quota/0001-setproject-Fix-openWRT-build.patch b/meta/recipes-extended/quota/quota/0001-setproject-Fix-openWRT-build.patch deleted file mode 100644 index 8ca3d9f773..0000000000 --- a/meta/recipes-extended/quota/quota/0001-setproject-Fix-openWRT-build.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 41ba7031ca4852739dd1f66102d34e4a98490906 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jan Kara <jack@suse.cz> | ||
| 3 | Date: Tue, 1 Jul 2025 15:41:56 +0200 | ||
| 4 | Subject: [PATCH] setproject: Fix openWRT build | ||
| 5 | |||
| 6 | basename() needs libgen.h include in openWRT build environment. Add it. | ||
| 7 | |||
| 8 | Reported-by: "W. Michael Petullo" <mike@flyn.org> | ||
| 9 | Signed-off-by: Jan Kara <jack@suse.cz> | ||
| 10 | |||
| 11 | Upstream-Status: Backport [https://sourceforge.net/p/linuxquota/code/ci/41ba7031ca4852739dd1f66102d34e4a98490906/] | ||
| 12 | |||
| 13 | This also fixes the build in Yocto. | ||
| 14 | Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> | ||
| 15 | --- | ||
| 16 | setproject.c | 1 + | ||
| 17 | 1 file changed, 1 insertion(+) | ||
| 18 | |||
| 19 | diff --git a/setproject.c b/setproject.c | ||
| 20 | index e688dcd..4308435 100644 | ||
| 21 | --- a/setproject.c | ||
| 22 | +++ b/setproject.c | ||
| 23 | @@ -13,6 +13,7 @@ | ||
| 24 | #include <sys/stat.h> | ||
| 25 | #include <sys/types.h> | ||
| 26 | #include <unistd.h> | ||
| 27 | +#include <libgen.h> | ||
| 28 | |||
| 29 | #include <linux/fs.h> | ||
| 30 | |||
diff --git a/meta/recipes-extended/quota/quota_4.10.bb b/meta/recipes-extended/quota/quota_4.10.bb deleted file mode 100644 index 6f1dc58777..0000000000 --- a/meta/recipes-extended/quota/quota_4.10.bb +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | SUMMARY = "Tools for monitoring & limiting user disk usage per filesystem" | ||
| 2 | SECTION = "base" | ||
| 3 | HOMEPAGE = "http://sourceforge.net/projects/linuxquota/" | ||
| 4 | DESCRIPTION = "Tools and patches for the Linux Diskquota system as part of the Linux kernel" | ||
| 5 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=18136&atid=118136" | ||
| 6 | LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later" | ||
| 7 | LIC_FILES_CHKSUM = "file://rquota_server.c;beginline=1;endline=20;md5=fe7e0d7e11c6f820f8fa62a5af71230f \ | ||
| 8 | file://svc_socket.c;beginline=1;endline=17;md5=24d5a8792da45910786eeac750be8ceb" | ||
| 9 | |||
| 10 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/linuxquota/quota-tools/${PV}/quota-${PV}.tar.gz \ | ||
| 11 | file://0001-setproject-Fix-openWRT-build.patch \ | ||
| 12 | " | ||
| 13 | SRC_URI[sha256sum] = "a04a0cafca29c15be8b6ac660e06188bccb802c19efe2e7c19ed7f3d667ecf5e" | ||
| 14 | |||
| 15 | CVE_PRODUCT = "linux_diskquota" | ||
| 16 | |||
| 17 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/linuxquota/files/quota-tools/" | ||
| 18 | UPSTREAM_CHECK_REGEX = "/quota-tools/(?P<pver>(\d+[\.\-_]*)+)/" | ||
| 19 | |||
| 20 | DEPENDS = "gettext-native e2fsprogs libnl dbus" | ||
| 21 | |||
| 22 | inherit autotools-brokensep gettext pkgconfig | ||
| 23 | |||
| 24 | CFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-I${STAGING_INCDIR}/tirpc', '', d)}" | ||
| 25 | LDFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-ltirpc', '', d)}" | ||
| 26 | ASNEEDED = "" | ||
| 27 | |||
| 28 | PACKAGECONFIG ??= "tcp-wrappers rpc bsd" | ||
| 29 | PACKAGECONFIG:libc-musl = "tcp-wrappers rpc" | ||
| 30 | |||
| 31 | PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers" | ||
| 32 | PACKAGECONFIG[rpc] = "--enable-rpc,--disable-rpc,libtirpc" | ||
| 33 | PACKAGECONFIG[bsd] = "--enable-bsd_behaviour=yes,--enable-bsd_behaviour=no," | ||
| 34 | PACKAGECONFIG[ldapmail] = "--enable-ldapmail,--disable-ldapmail,openldap" | ||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/0001-systemd-use-EnvironmentFile.patch b/meta/recipes-extended/rpcbind/rpcbind/0001-systemd-use-EnvironmentFile.patch deleted file mode 100644 index 28d83e74f5..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/0001-systemd-use-EnvironmentFile.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | From 87a9931e4aa97d7b6eb3b25f26444e30e45e3e41 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Stefan Agner <stefan.agner@toradex.com> | ||
| 3 | Date: Wed, 27 Aug 2025 11:30:48 +0800 | ||
| 4 | Subject: [PATCH] systemd: use EnvironmentFile | ||
| 5 | |||
| 6 | Use OE specific environment file. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [OE specific] | ||
| 9 | Signed-off-by: Stefan Agner <stefan.agner@toradex.com> | ||
| 10 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 11 | --- | ||
| 12 | configure.ac | 2 ++ | ||
| 13 | systemd/rpcbind.service.in | 6 +++--- | ||
| 14 | 2 files changed, 5 insertions(+), 3 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/configure.ac b/configure.ac | ||
| 17 | index 6ede0af..d1ae5e4 100644 | ||
| 18 | --- a/configure.ac | ||
| 19 | +++ b/configure.ac | ||
| 20 | @@ -86,5 +86,7 @@ AC_CHECK_HEADERS([nss.h]) | ||
| 21 | # 2 "evals" needed to expand variable names | ||
| 22 | AC_SUBST([_sbindir]) | ||
| 23 | AC_CONFIG_COMMANDS_PRE([eval eval _sbindir=$sbindir]) | ||
| 24 | +AC_SUBST([_sysconfdir]) | ||
| 25 | +AC_CONFIG_COMMANDS_PRE([eval eval _sysconfdir=$sysconfdir]) | ||
| 26 | |||
| 27 | AC_OUTPUT([Makefile systemd/rpcbind.service systemd/rpcbind.socket]) | ||
| 28 | diff --git a/systemd/rpcbind.service.in b/systemd/rpcbind.service.in | ||
| 29 | index 771b944..5992098 100644 | ||
| 30 | --- a/systemd/rpcbind.service.in | ||
| 31 | +++ b/systemd/rpcbind.service.in | ||
| 32 | @@ -23,9 +23,9 @@ ProtectControlGroups=true | ||
| 33 | RestrictRealtime=true | ||
| 34 | Type=notify | ||
| 35 | # distro can provide a drop-in adding EnvironmentFile=-/??? if needed. | ||
| 36 | -EnvironmentFile=-/etc/rpcbind.conf | ||
| 37 | -EnvironmentFile=-/etc/default/rpcbind | ||
| 38 | -EnvironmentFile=-/etc/sysconfig/rpcbind | ||
| 39 | +EnvironmentFile=-@_sysconfdir@/rpcbind.conf | ||
| 40 | +EnvironmentFile=-@_sysconfdir@/default/rpcbind | ||
| 41 | +EnvironmentFile=-@_sysconfdir@/sysconfig/rpcbind | ||
| 42 | ExecStart=@_sbindir@/rpcbind $RPCBIND_OPTIONS @warmstarts_opt@ -f | ||
| 43 | |||
| 44 | [Install] | ||
| 45 | -- | ||
| 46 | 2.34.1 | ||
| 47 | |||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/init.d b/meta/recipes-extended/rpcbind/rpcbind/init.d deleted file mode 100644 index 67499aa828..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/init.d +++ /dev/null | |||
| @@ -1,87 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # | ||
| 3 | # start/stop rpcbind daemon. | ||
| 4 | |||
| 5 | ### BEGIN INIT INFO | ||
| 6 | # Provides: rpcbind | ||
| 7 | # Required-Start: $network | ||
| 8 | # Required-Stop: $network | ||
| 9 | # Default-Start: S 2 3 4 5 | ||
| 10 | # Default-Stop: 0 1 6 | ||
| 11 | # Short-Description: RPC portmapper replacement | ||
| 12 | # Description: rpcbind is a server that converts RPC (Remote | ||
| 13 | # Procedure Call) program numbers into DARPA | ||
| 14 | # protocol port numbers. It must be running in | ||
| 15 | # order to make RPC calls. Services that use | ||
| 16 | # RPC include NFS and NIS. | ||
| 17 | ### END INIT INFO | ||
| 18 | |||
| 19 | # Source function library. | ||
| 20 | . /etc/init.d/functions | ||
| 21 | |||
| 22 | test -f /sbin/rpcbind || exit 0 | ||
| 23 | |||
| 24 | OPTIONS="" | ||
| 25 | if [ -f /etc/default/rpcbind ] | ||
| 26 | then | ||
| 27 | . /etc/default/rpcbind | ||
| 28 | elif [ -f /etc/rpcbind.conf ] | ||
| 29 | then | ||
| 30 | . /etc/rpcbind.conf | ||
| 31 | fi | ||
| 32 | |||
| 33 | start () | ||
| 34 | { | ||
| 35 | echo -n "Starting rpcbind daemon..." | ||
| 36 | if pidof /sbin/rpcbind >/dev/null; then | ||
| 37 | echo "already running." | ||
| 38 | exit 0 | ||
| 39 | fi | ||
| 40 | start-stop-daemon --start --quiet --exec /sbin/rpcbind -- "$@" | ||
| 41 | if [ $? -eq 0 ]; then | ||
| 42 | echo "done." | ||
| 43 | else | ||
| 44 | echo "failed." | ||
| 45 | fi | ||
| 46 | } | ||
| 47 | |||
| 48 | stop () | ||
| 49 | { | ||
| 50 | echo "Stopping rpcbind daemon..." | ||
| 51 | if ! pidof /sbin/rpcbind >/dev/null; then | ||
| 52 | echo "not running." | ||
| 53 | return 0 | ||
| 54 | fi | ||
| 55 | start-stop-daemon --stop --quiet --exec /sbin/rpcbind | ||
| 56 | if [ $? -eq 0 ]; then | ||
| 57 | echo "done." | ||
| 58 | else | ||
| 59 | echo "failed." | ||
| 60 | fi | ||
| 61 | } | ||
| 62 | |||
| 63 | case "$1" in | ||
| 64 | start) | ||
| 65 | start $OPTIONS | ||
| 66 | ;; | ||
| 67 | stop) | ||
| 68 | stop | ||
| 69 | ;; | ||
| 70 | force-reload) | ||
| 71 | stop | ||
| 72 | start $OPTIONS | ||
| 73 | ;; | ||
| 74 | restart) | ||
| 75 | stop | ||
| 76 | start $OPTIONS | ||
| 77 | ;; | ||
| 78 | status) | ||
| 79 | status /sbin/rpcbind | ||
| 80 | ;; | ||
| 81 | *) | ||
| 82 | echo "Usage: /etc/init.d/rpcbind {start|stop|force-reload|restart|status}" | ||
| 83 | exit 1 | ||
| 84 | ;; | ||
| 85 | esac | ||
| 86 | |||
| 87 | exit $? | ||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf deleted file mode 100644 index f423ac1788..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | # Optional arguments passed to rpcbind. | ||
| 2 | # | ||
| 3 | RPCBIND_OPTIONS="" | ||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.systemd b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.systemd deleted file mode 100644 index 5765751326..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.systemd +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | # Make sure the runtime directory exists | ||
| 3 | After=systemd-tmpfiles-setup.service | ||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.tmpfiles b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.tmpfiles deleted file mode 100644 index fecee72c09..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.tmpfiles +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d /run/rpcbind 0755 root root - | ||
diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind_add_option_to_fix_port_number.patch b/meta/recipes-extended/rpcbind/rpcbind/rpcbind_add_option_to_fix_port_number.patch deleted file mode 100644 index 3205ff3086..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind/rpcbind_add_option_to_fix_port_number.patch +++ /dev/null | |||
| @@ -1,131 +0,0 @@ | |||
| 1 | From 285c193dc94b53763ac8d6f91229eaab37d45fc6 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Roy Li <rongqing.li@windriver.com> | ||
| 3 | Date: Wed, 27 Aug 2025 11:24:53 +0800 | ||
| 4 | Subject: [PATCH] add option to make users able to use fixed port number | ||
| 5 | |||
| 6 | Upstream-Status: Submitted [https://sourceforge.net/p/rpcbind/discussion/716839/thread/32af721d/] | ||
| 7 | |||
| 8 | Signed-off-by: Li Wang <li.wang@windriver.com> | ||
| 9 | Signed-off-by: Roy Li <rongqing.li@windriver.com> | ||
| 10 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
| 11 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 12 | --- | ||
| 13 | man/rpcbind.8 | 4 +++- | ||
| 14 | src/rpcb_svc_com.c | 17 +++++++++++++++++ | ||
| 15 | src/rpcbind.c | 8 ++++++-- | ||
| 16 | 3 files changed, 26 insertions(+), 3 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/man/rpcbind.8 b/man/rpcbind.8 | ||
| 19 | index 15b70f9..4a6ffbc 100644 | ||
| 20 | --- a/man/rpcbind.8 | ||
| 21 | +++ b/man/rpcbind.8 | ||
| 22 | @@ -11,7 +11,7 @@ | ||
| 23 | .Nd universal addresses to RPC program number mapper | ||
| 24 | .Sh SYNOPSIS | ||
| 25 | .Nm | ||
| 26 | -.Op Fl adfhilsvw | ||
| 27 | +.Op Fl adfhpilsvw | ||
| 28 | .Sh DESCRIPTION | ||
| 29 | The | ||
| 30 | .Nm | ||
| 31 | @@ -96,6 +96,8 @@ will automatically add | ||
| 32 | and if IPv6 is enabled, | ||
| 33 | .Li ::1 | ||
| 34 | to the list. | ||
| 35 | +.It Fl p | ||
| 36 | +Bind for fixed UDP port number | ||
| 37 | If no | ||
| 38 | .Fl h | ||
| 39 | option is specified, | ||
| 40 | diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c | ||
| 41 | index 1743dad..07a1c75 100644 | ||
| 42 | --- a/src/rpcb_svc_com.c | ||
| 43 | +++ b/src/rpcb_svc_com.c | ||
| 44 | @@ -48,6 +48,7 @@ | ||
| 45 | #include <rpc/rpc.h> | ||
| 46 | #include <rpc/rpcb_prot.h> | ||
| 47 | #include <rpc/svc_dg.h> | ||
| 48 | +#include <rpc/rpc_com.h> | ||
| 49 | #include <netconfig.h> | ||
| 50 | #include <errno.h> | ||
| 51 | #include <syslog.h> | ||
| 52 | @@ -497,6 +498,7 @@ xdr_opaque_parms(XDR *xdrs, struct r_rmtcall_args *cap) | ||
| 53 | |||
| 54 | static struct rmtcallfd_list *rmthead; | ||
| 55 | static struct rmtcallfd_list *rmttail; | ||
| 56 | +extern unsigned short fixed_port; | ||
| 57 | |||
| 58 | int | ||
| 59 | create_rmtcall_fd(struct netconfig *nconf) | ||
| 60 | @@ -504,6 +506,8 @@ create_rmtcall_fd(struct netconfig *nconf) | ||
| 61 | int fd; | ||
| 62 | struct rmtcallfd_list *rmt; | ||
| 63 | SVCXPRT *xprt; | ||
| 64 | + struct __rpc_sockinfo si; | ||
| 65 | + struct t_bind taddr; | ||
| 66 | |||
| 67 | if ((fd = __rpc_nconf2fd(nconf)) == -1) { | ||
| 68 | if (debugging) | ||
| 69 | @@ -512,6 +516,19 @@ create_rmtcall_fd(struct netconfig *nconf) | ||
| 70 | nconf->nc_device, errno); | ||
| 71 | return (-1); | ||
| 72 | } | ||
| 73 | + | ||
| 74 | + if (fixed_port) { | ||
| 75 | + __rpc_fd2sockinfo(fd, &si); | ||
| 76 | + memset(&taddr, 0, sizeof(taddr)); | ||
| 77 | + taddr.addr.maxlen = taddr.addr.len = si.si_alen; | ||
| 78 | + taddr.addr.buf = malloc(si.si_alen); | ||
| 79 | + if (taddr.addr.buf == NULL) { | ||
| 80 | + return -1; | ||
| 81 | + } | ||
| 82 | + *(unsigned short *)(&(taddr.addr.buf[0])) = si.si_af; | ||
| 83 | + *(unsigned short *)(&(taddr.addr.buf[2])) = htons(fixed_port); | ||
| 84 | + xprt = svc_tli_create(fd, nconf, &taddr, RPC_MAXDATASIZE, RPC_MAXDATASIZE); | ||
| 85 | + } else | ||
| 86 | xprt = svc_tli_create(fd, 0, (struct t_bind *) 0, 0, 0); | ||
| 87 | if (xprt == NULL) { | ||
| 88 | if (debugging) | ||
| 89 | diff --git a/src/rpcbind.c b/src/rpcbind.c | ||
| 90 | index bf7b499..7268907 100644 | ||
| 91 | --- a/src/rpcbind.c | ||
| 92 | +++ b/src/rpcbind.c | ||
| 93 | @@ -112,6 +112,7 @@ int runasdaemon = 0; | ||
| 94 | int insecure = 0; | ||
| 95 | int oldstyle_local = 0; | ||
| 96 | int verboselog = 0; | ||
| 97 | +unsigned short fixed_port = 0; | ||
| 98 | |||
| 99 | char **hosts = NULL; | ||
| 100 | int nhosts = 0; | ||
| 101 | @@ -959,7 +960,7 @@ parseargs(int argc, char *argv[]) | ||
| 102 | { | ||
| 103 | int c; | ||
| 104 | oldstyle_local = 1; | ||
| 105 | - while ((c = getopt(argc, argv, "adfh:ilsvw")) != -1) { | ||
| 106 | + while ((c = getopt(argc, argv, "adfh:p:ilsvw")) != -1) { | ||
| 107 | switch (c) { | ||
| 108 | case 'a': | ||
| 109 | doabort = 1; /* when debugging, do an abort on */ | ||
| 110 | @@ -977,6 +978,9 @@ parseargs(int argc, char *argv[]) | ||
| 111 | if (hosts[nhosts - 1] == NULL) | ||
| 112 | errx(1, "Out of memory"); | ||
| 113 | break; | ||
| 114 | + case 'p': | ||
| 115 | + fixed_port = atoi(optarg); | ||
| 116 | + break; | ||
| 117 | case 'i': | ||
| 118 | insecure = 1; | ||
| 119 | break; | ||
| 120 | @@ -999,7 +1003,7 @@ parseargs(int argc, char *argv[]) | ||
| 121 | break; | ||
| 122 | #endif | ||
| 123 | default: /* error */ | ||
| 124 | - fprintf(stderr, "usage: rpcbind [-adfhilsvw]\n"); | ||
| 125 | + fprintf(stderr, "usage: rpcbind [-adfhpilsvw]\n"); | ||
| 126 | exit (1); | ||
| 127 | } | ||
| 128 | } | ||
| 129 | -- | ||
| 130 | 2.34.1 | ||
| 131 | |||
diff --git a/meta/recipes-extended/rpcbind/rpcbind_1.2.8.bb b/meta/recipes-extended/rpcbind/rpcbind_1.2.8.bb deleted file mode 100644 index b669a53ae9..0000000000 --- a/meta/recipes-extended/rpcbind/rpcbind_1.2.8.bb +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | SUMMARY = "Universal Addresses to RPC Program Number Mapper" | ||
| 2 | DESCRIPTION = "The rpcbind utility is a server that converts RPC \ | ||
| 3 | program numbers into universal addresses." | ||
| 4 | SECTION = "console/network" | ||
| 5 | HOMEPAGE = "http://sourceforge.net/projects/rpcbind/" | ||
| 6 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=201237&atid=976751" | ||
| 7 | DEPENDS = "libtirpc quota" | ||
| 8 | |||
| 9 | LICENSE = "BSD-3-Clause" | ||
| 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \ | ||
| 11 | file://src/rpcinfo.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" | ||
| 12 | |||
| 13 | SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \ | ||
| 14 | file://init.d \ | ||
| 15 | file://rpcbind.conf \ | ||
| 16 | file://rpcbind.tmpfiles \ | ||
| 17 | file://rpcbind.systemd \ | ||
| 18 | file://rpcbind_add_option_to_fix_port_number.patch \ | ||
| 19 | file://0001-systemd-use-EnvironmentFile.patch \ | ||
| 20 | " | ||
| 21 | SRC_URI[sha256sum] = "964132c389918e8964d7334936b6dd10ef025b300c6b29e693ba0f29550e3de5" | ||
| 22 | |||
| 23 | inherit autotools update-rc.d systemd pkgconfig update-alternatives sourceforge-releases | ||
| 24 | |||
| 25 | PACKAGECONFIG ??= "tcp-wrappers" | ||
| 26 | PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers" | ||
| 27 | |||
| 28 | INITSCRIPT_NAME = "rpcbind" | ||
| 29 | INITSCRIPT_PARAMS = "start 12 2 3 4 5 . stop 60 0 1 6 ." | ||
| 30 | |||
| 31 | SYSTEMD_SERVICE:${PN} = "rpcbind.service rpcbind.socket" | ||
| 32 | |||
| 33 | inherit useradd | ||
| 34 | |||
| 35 | USERADD_PACKAGES = "${PN}" | ||
| 36 | USERADD_PARAM:${PN} = "--system --no-create-home --home-dir / \ | ||
| 37 | --shell /bin/false --user-group rpc" | ||
| 38 | |||
| 39 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" | ||
| 40 | PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_system_unitdir}/, \ | ||
| 41 | --without-systemdsystemunitdir, \ | ||
| 42 | systemd \ | ||
| 43 | " | ||
| 44 | |||
| 45 | EXTRA_OECONF += " --enable-warmstarts --with-rpcuser=rpc --with-statedir=${runtimedir}/rpcbind" | ||
| 46 | |||
| 47 | do_install:append () { | ||
| 48 | install -d ${D}${sysconfdir}/init.d | ||
| 49 | sed -e 's,/etc/,${sysconfdir}/,g' \ | ||
| 50 | -e 's,/sbin/,${sbindir}/,g' \ | ||
| 51 | ${UNPACKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind | ||
| 52 | chmod 0755 ${D}${sysconfdir}/init.d/rpcbind | ||
| 53 | install -m 0644 ${UNPACKDIR}/rpcbind.conf ${D}${sysconfdir}/rpcbind.conf | ||
| 54 | |||
| 55 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
| 56 | install -m 0644 ${UNPACKDIR}/rpcbind.tmpfiles ${D}${sysconfdir}/tmpfiles.d/rpcbind.conf | ||
| 57 | |||
| 58 | install -d ${D}${systemd_system_unitdir}/rpcbind.service.d | ||
| 59 | install -m 0644 ${UNPACKDIR}/rpcbind.systemd ${D}${systemd_system_unitdir}/rpcbind.service.d/rpcbind.conf | ||
| 60 | } | ||
| 61 | |||
| 62 | FILES:${PN} += "${systemd_system_unitdir}/rpcbind.service.d/rpcbind.conf" | ||
| 63 | |||
| 64 | ALTERNATIVE:${PN} = "rpcinfo" | ||
| 65 | ALTERNATIVE_LINK_NAME[rpcinfo] = "${bindir}/rpcinfo" | ||
diff --git a/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb b/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb deleted file mode 100644 index 4cb785aa90..0000000000 --- a/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | # Copyright (C) 2018 Khem Raj <raj.khem@gmail.com> | ||
| 2 | # Released under the MIT license (see COPYING.MIT for the terms) | ||
| 3 | |||
| 4 | SUMMARY = "rpcsvc protocol definitions from glibc" | ||
| 5 | |||
| 6 | DESCRIPTION = "This package contains rpcsvc proto.x files from glibc, which are\ | ||
| 7 | missing in libtirpc. Additional it contains rpcgen, which is needed\ | ||
| 8 | to create header files and sources from protocol files.\ | ||
| 9 | This package is only needed, if glibc is installed without the\ | ||
| 10 | deprecated sunrpc functionality and libtirpc should replace it." | ||
| 11 | |||
| 12 | HOMEPAGE = "https://github.com/thkukuk/rpcsvc-proto" | ||
| 13 | LICENSE = "BSD-3-Clause" | ||
| 14 | LIC_FILES_CHKSUM = "file://COPYING;md5=0daaf958d5531ab86169ec6e275e1517" | ||
| 15 | SECTION = "libs" | ||
| 16 | DEPENDS += "rpcsvc-proto-native" | ||
| 17 | |||
| 18 | PV = "1.4.4" | ||
| 19 | |||
| 20 | SRCREV = "c65926005e50da02a4da3e26abc42eded36cd19d" | ||
| 21 | |||
| 22 | SRC_URI = "git://github.com/thkukuk/${BPN};branch=master;protocol=https \ | ||
| 23 | file://0001-Use-cross-compiled-rpcgen.patch \ | ||
| 24 | " | ||
| 25 | |||
| 26 | inherit autotools gettext | ||
| 27 | |||
| 28 | EXTRA_OEMAKE:class-native = " -C rpcgen" | ||
| 29 | |||
| 30 | do_configure:prepend() { | ||
| 31 | touch ${S}/ABOUT-NLS | ||
| 32 | } | ||
| 33 | |||
| 34 | do_install:append() { | ||
| 35 | # They come from quota recipe | ||
| 36 | rm -rf ${D}${includedir}/rpcsvc/rquota.[hx] | ||
| 37 | } | ||
| 38 | |||
| 39 | BBCLASSEXTEND += "native nativesdk" | ||
diff --git a/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto/0001-Use-cross-compiled-rpcgen.patch b/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto/0001-Use-cross-compiled-rpcgen.patch deleted file mode 100644 index 8e459b5634..0000000000 --- a/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto/0001-Use-cross-compiled-rpcgen.patch +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | From de9345207beb71e4d5b6b40b52cac4ebd2e3858c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Fri, 27 Apr 2018 23:23:20 -0700 | ||
| 4 | Subject: [PATCH] Use cross compiled rpcgen | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [OE-Specific] | ||
| 7 | |||
| 8 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 9 | --- | ||
| 10 | rpcsvc/Makefile.am | 2 +- | ||
| 11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 12 | |||
| 13 | --- a/rpcsvc/Makefile.am | ||
| 14 | +++ b/rpcsvc/Makefile.am | ||
| 15 | @@ -12,4 +12,4 @@ nodist_rpcsvc_HEADERS = klm_prot.h nlm_p | ||
| 16 | nfs_prot.h rquota.h sm_inter.h | ||
| 17 | |||
| 18 | .x.h: | ||
| 19 | - $(top_builddir)/rpcgen/rpcgen -h -o $@ $< | ||
| 20 | + rpcgen -h -o $@ $< | ||
diff --git a/meta/recipes-extended/scdoc/scdoc/0001-Makefile-drop-static.patch b/meta/recipes-extended/scdoc/scdoc/0001-Makefile-drop-static.patch deleted file mode 100644 index 631d06375b..0000000000 --- a/meta/recipes-extended/scdoc/scdoc/0001-Makefile-drop-static.patch +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | From 3667cced504bc40b176d4570d99a83fe67599f3a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Drew DeVault <sir@cmpwn.com> | ||
| 3 | Date: Wed, 4 Sep 2024 10:07:46 +0200 | ||
| 4 | Subject: [PATCH] Makefile: drop -static | ||
| 5 | |||
| 6 | Upstream-Status: Backport [https://git.sr.ht/~sircmpwn/scdoc/commit/3667cced504bc40b176d4570d99a83fe67599f3a] | ||
| 7 | Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> | ||
| 8 | --- | ||
| 9 | Makefile | 1 - | ||
| 10 | 1 file changed, 1 deletion(-) | ||
| 11 | |||
| 12 | diff --git a/Makefile b/Makefile | ||
| 13 | index 96ad48cd04a6..49f076aadd39 100644 | ||
| 14 | --- a/Makefile | ||
| 15 | +++ b/Makefile | ||
| 16 | @@ -1,7 +1,6 @@ | ||
| 17 | VERSION=1.11.3 | ||
| 18 | CFLAGS?=-g | ||
| 19 | MAINFLAGS:=-DVERSION='"$(VERSION)"' -Wall -Wextra -Werror -Wno-unused-parameter | ||
| 20 | -LDFLAGS+=-static | ||
| 21 | INCLUDE+=-Iinclude | ||
| 22 | PREFIX?=/usr/local | ||
| 23 | BINDIR?=$(PREFIX)/bin | ||
diff --git a/meta/recipes-extended/scdoc/scdoc_1.11.3.bb b/meta/recipes-extended/scdoc/scdoc_1.11.3.bb deleted file mode 100644 index 5f571c64dd..0000000000 --- a/meta/recipes-extended/scdoc/scdoc_1.11.3.bb +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | SUMMARY = "scdoc is a simple man page generator for POSIX systems written in C99." | ||
| 2 | HOMEPAGE = "https://git.sr.ht/~sircmpwn/scdoc" | ||
| 3 | SECTION = "base/doc" | ||
| 4 | LICENSE = "MIT" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=31752b4a8edd3fb9ddba1cb90fada74d" | ||
| 6 | |||
| 7 | DEPENDS = "scdoc-native" | ||
| 8 | |||
| 9 | SRC_URI = "git://git.sr.ht/~sircmpwn/scdoc;protocol=https;branch=master \ | ||
| 10 | file://0001-Makefile-drop-static.patch " | ||
| 11 | SRCREV = "0528bcb993cac6c412acd3ae2e09539e994c0a59" | ||
| 12 | |||
| 13 | do_install() { | ||
| 14 | oe_runmake 'DESTDIR=${D}' install | ||
| 15 | } | ||
| 16 | |||
| 17 | EXTRA_OEMAKE = "PREFIX=${prefix}" | ||
| 18 | EXTRA_OEMAKE:append:class-target = " HOST_SCDOC=${STAGING_BINDIR_NATIVE}/scdoc" | ||
| 19 | |||
| 20 | BBCLASSEXTEND = "native" | ||
diff --git a/meta/recipes-extended/screen/screen/screen.pam b/meta/recipes-extended/screen/screen/screen.pam deleted file mode 100644 index ff657fa07c..0000000000 --- a/meta/recipes-extended/screen/screen/screen.pam +++ /dev/null | |||
| @@ -1,2 +0,0 @@ | |||
| 1 | #%PAM-1.0 | ||
| 2 | auth include common-auth | ||
diff --git a/meta/recipes-extended/screen/screen_5.0.1.bb b/meta/recipes-extended/screen/screen_5.0.1.bb deleted file mode 100644 index 69f4098519..0000000000 --- a/meta/recipes-extended/screen/screen_5.0.1.bb +++ /dev/null | |||
| @@ -1,46 +0,0 @@ | |||
| 1 | SUMMARY = "Multiplexing terminal manager" | ||
| 2 | DESCRIPTION = "Screen is a full-screen window manager \ | ||
| 3 | that multiplexes a physical terminal between several \ | ||
| 4 | processes, typically interactive shells." | ||
| 5 | HOMEPAGE = "http://www.gnu.org/software/screen/" | ||
| 6 | BUGTRACKER = "https://savannah.gnu.org/bugs/?func=additem&group=screen" | ||
| 7 | |||
| 8 | SECTION = "console/utils" | ||
| 9 | |||
| 10 | LICENSE = "GPL-3.0-or-later" | ||
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e \ | ||
| 12 | file://screen.h;endline=26;md5=b8dc717c9a3dba842ae6c44ca0f73f52 \ | ||
| 13 | " | ||
| 14 | |||
| 15 | DEPENDS = "ncurses virtual/crypt \ | ||
| 16 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" | ||
| 17 | RDEPENDS:${PN} = "base-files" | ||
| 18 | |||
| 19 | SRC_URI = "${GNU_MIRROR}/screen/screen-${PV}.tar.gz \ | ||
| 20 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://screen.pam', '', d)} \ | ||
| 21 | " | ||
| 22 | |||
| 23 | SRC_URI[sha256sum] = "2dae36f4db379ffcd14b691596ba6ec18ac3a9e22bc47ac239789ab58409869d" | ||
| 24 | |||
| 25 | inherit autotools-brokensep texinfo | ||
| 26 | |||
| 27 | PACKAGECONFIG ??= "" | ||
| 28 | PACKAGECONFIG[utempter] = "ac_cv_header_utempter_h=yes,ac_cv_header_utempter_h=no,libutempter," | ||
| 29 | |||
| 30 | EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-system_screenrc=${sysconfdir}/screenrc \ | ||
| 31 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}" | ||
| 32 | |||
| 33 | do_install:append () { | ||
| 34 | install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc | ||
| 35 | if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then | ||
| 36 | install -D -m 644 ${UNPACKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen | ||
| 37 | fi | ||
| 38 | } | ||
| 39 | |||
| 40 | pkg_postinst:${PN} () { | ||
| 41 | grep -q "^${bindir}/screen$" $D${sysconfdir}/shells || echo ${bindir}/screen >> $D${sysconfdir}/shells | ||
| 42 | } | ||
| 43 | |||
| 44 | pkg_postrm:${PN} () { | ||
| 45 | printf "$(grep -v "^${bindir}/screen$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells | ||
| 46 | } | ||
diff --git a/meta/recipes-extended/sed/sed/run-ptest b/meta/recipes-extended/sed/sed/run-ptest deleted file mode 100644 index 0460c7961f..0000000000 --- a/meta/recipes-extended/sed/sed/run-ptest +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | chown nobody testsuite | ||
| 4 | chown nobody ../ptest | ||
| 5 | su nobody -s /bin/sh -c "make test-suite.log" | ||
diff --git a/meta/recipes-extended/sed/sed_4.9.bb b/meta/recipes-extended/sed/sed_4.9.bb deleted file mode 100644 index b30ddc73ca..0000000000 --- a/meta/recipes-extended/sed/sed_4.9.bb +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | SUMMARY = "Stream EDitor (text filtering utility)" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/sed/" | ||
| 3 | DESCRIPTION = "sed (stream editor) is a non-interactive command-line text editor." | ||
| 4 | LICENSE = "GPL-3.0-or-later" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 6 | file://sed/sed.h;beginline=1;endline=15;md5=4e8e0f77bc4c1c2c02c2b90d3d24c670 \ | ||
| 7 | " | ||
| 8 | SECTION = "console/utils" | ||
| 9 | |||
| 10 | SRC_URI = "${GNU_MIRROR}/sed/sed-${PV}.tar.xz \ | ||
| 11 | file://run-ptest \ | ||
| 12 | " | ||
| 13 | |||
| 14 | SRC_URI[sha256sum] = "6e226b732e1cd739464ad6862bd1a1aba42d7982922da7a53519631d24975181" | ||
| 15 | |||
| 16 | inherit autotools texinfo update-alternatives gettext ptest | ||
| 17 | |||
| 18 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
| 19 | |||
| 20 | RDEPENDS:${PN}-ptest += "make gawk perl perl-module-filehandle perl-module-file-compare perl-module-file-find perl-module-file-temp perl-module-file-stat" | ||
| 21 | RRECOMMENDS:${PN}-ptest:append:libc-glibc = " locale-base-ru-ru locale-base-en-us locale-base-el-gr.iso-8859-7" | ||
| 22 | |||
| 23 | EXTRA_OECONF = "--disable-acl \ | ||
| 24 | " | ||
| 25 | |||
| 26 | do_install () { | ||
| 27 | autotools_do_install | ||
| 28 | install -d ${D}${base_bindir} | ||
| 29 | if [ ! ${D}${bindir} -ef ${D}${base_bindir} ]; then | ||
| 30 | mv ${D}${bindir}/sed ${D}${base_bindir}/sed | ||
| 31 | rmdir ${D}${bindir}/ | ||
| 32 | fi | ||
| 33 | } | ||
| 34 | |||
| 35 | ALTERNATIVE:${PN} = "sed" | ||
| 36 | ALTERNATIVE_LINK_NAME[sed] = "${base_bindir}/sed" | ||
| 37 | ALTERNATIVE_PRIORITY = "100" | ||
| 38 | |||
| 39 | do_compile_ptest() { | ||
| 40 | oe_runmake testsuite/get-mb-cur-max testsuite/test-mbrtowc | ||
| 41 | } | ||
| 42 | |||
| 43 | do_install_ptest() { | ||
| 44 | cp -rf ${S}/testsuite/ ${D}${PTEST_PATH} | ||
| 45 | cp -rf ${B}/testsuite/* ${D}${PTEST_PATH}/testsuite/ | ||
| 46 | cp -rf ${S}/build-aux/ ${D}${PTEST_PATH}/ | ||
| 47 | cp ${B}/Makefile ${D}${PTEST_PATH} | ||
| 48 | cp ${S}/init.cfg ${D}${PTEST_PATH} | ||
| 49 | |||
| 50 | sed -e 's/^Makefile:/_Makefile:/' -e 's/^srcdir = \(.*\)/srcdir = ./' -e 's/bash/sh/' -i ${D}${PTEST_PATH}/Makefile | ||
| 51 | for i in `grep -rl "sed/sed" ${D}${PTEST_PATH}`; do sed -e 's/..\/sed\/sed/sed/' -i $i; done | ||
| 52 | |||
| 53 | sed -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ | ||
| 54 | -e 's|${DEBUG_PREFIX_MAP}||g' \ | ||
| 55 | -e 's:${HOSTTOOLS_DIR}/::g' \ | ||
| 56 | -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ | ||
| 57 | -e 's:abs_top_builddir =.*:abs_top_builddir = ..:g' \ | ||
| 58 | -e 's:abs_top_srcdir =.*:abs_top_srcdir = ..:g' \ | ||
| 59 | -e 's:abs_srcdir =.*:abs_srcdir = ..:g' \ | ||
| 60 | -e 's:top_srcdir =.*:top_srcdir = ..:g' \ | ||
| 61 | -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ | ||
| 62 | -e "/^\(PL\|SH\)_LOG_DRIVER =/s|(top_srcdir)|(top_builddir)|" \ | ||
| 63 | -i ${D}${PTEST_PATH}/Makefile | ||
| 64 | } | ||
| 65 | |||
| 66 | RPROVIDES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sed', '', d)}" | ||
| 67 | |||
| 68 | BBCLASSEXTEND = "nativesdk" | ||
diff --git a/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch b/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch deleted file mode 100644 index 699269ed64..0000000000 --- a/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | From f7b765c022e4cad9140ac44712885c66e149abdc Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Thu, 17 Jul 2014 15:53:34 +0800 | ||
| 4 | Subject: [PATCH] commonio.c-fix-unexpected-open-failure-in-chroot-env | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [OE specific] | ||
| 7 | |||
| 8 | commonio.c: fix unexpected open failure in chroot environment | ||
| 9 | |||
| 10 | When using commands with '-R <newroot>' option in our pseudo environment, | ||
| 11 | we would usually get the 'Pemission Denied' error. This patch serves as | ||
| 12 | a workaround to this problem. | ||
| 13 | |||
| 14 | Note that this patch doesn't change the logic in the code, it just expands | ||
| 15 | the codes. | ||
| 16 | |||
| 17 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 18 | --- | ||
| 19 | lib/commonio.c | 16 ++++++++++++---- | ||
| 20 | 1 file changed, 12 insertions(+), 4 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/lib/commonio.c b/lib/commonio.c | ||
| 23 | index 4d83e83..9ee0e13 100644 | ||
| 24 | --- a/lib/commonio.c | ||
| 25 | +++ b/lib/commonio.c | ||
| 26 | @@ -604,10 +604,18 @@ int commonio_open (struct commonio_db *db, int mode) | ||
| 27 | db->cursor = NULL; | ||
| 28 | db->changed = false; | ||
| 29 | |||
| 30 | - fd = open (db->filename, | ||
| 31 | - (db->readonly ? O_RDONLY : O_RDWR) | ||
| 32 | - | O_NOCTTY | O_NONBLOCK | O_NOFOLLOW | O_CLOEXEC); | ||
| 33 | - saved_errno = errno; | ||
| 34 | + if (db->readonly) { | ||
| 35 | + fd = open (db->filename, | ||
| 36 | + (true ? O_RDONLY : O_RDWR) | ||
| 37 | + | O_NOCTTY | O_NONBLOCK | O_NOFOLLOW | O_CLOEXEC); | ||
| 38 | + saved_errno = errno; | ||
| 39 | + } else { | ||
| 40 | + fd = open (db->filename, | ||
| 41 | + (false ? O_RDONLY : O_RDWR) | ||
| 42 | + | O_NOCTTY | O_NONBLOCK | O_NOFOLLOW| O_CLOEXEC); | ||
| 43 | + saved_errno = errno; | ||
| 44 | + } | ||
| 45 | + | ||
| 46 | db->fp = NULL; | ||
| 47 | if (fd >= 0) { | ||
| 48 | #ifdef WITH_TCB | ||
diff --git a/meta/recipes-extended/shadow/files/disable_syslog.patch b/meta/recipes-extended/shadow/files/disable_syslog.patch deleted file mode 100644 index 7299a8e61c..0000000000 --- a/meta/recipes-extended/shadow/files/disable_syslog.patch +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | When building images using shadow-native, we shouldn't be spamming the host's | ||
| 2 | log with lots of syslog messages which aren't relavent. Disable syslog use | ||
| 3 | in the native case. | ||
| 4 | |||
| 5 | Upstream-Status: Inappropriate [Would upstream accept a configure option?] | ||
| 6 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 7 | |||
| 8 | Index: shadow-4.17.2/lib/defines.h | ||
| 9 | =================================================================== | ||
| 10 | --- shadow-4.17.2.orig/lib/defines.h | ||
| 11 | +++ shadow-4.17.2/lib/defines.h | ||
| 12 | @@ -88,7 +88,9 @@ | ||
| 13 | |||
| 14 | /* cleaner than lots of #ifdefs everywhere - use this as follows: | ||
| 15 | SYSLOG((LOG_CRIT, "user %s cracked root", user)); */ | ||
| 16 | -#ifdef ENABLE_NLS | ||
| 17 | +#if 1 | ||
| 18 | +#define SYSLOG(x) | ||
| 19 | +#elif ENABLE_NLS | ||
| 20 | /* Temporarily set LC_TIME to "C" to avoid strange dates in syslog. | ||
| 21 | This is a workaround for a more general syslog(d) design problem - | ||
| 22 | syslogd should log the current system time for each event, and not | ||
diff --git a/meta/recipes-extended/shadow/files/login.defs_shadow-sysroot b/meta/recipes-extended/shadow/files/login.defs_shadow-sysroot deleted file mode 100644 index 09df77d2e7..0000000000 --- a/meta/recipes-extended/shadow/files/login.defs_shadow-sysroot +++ /dev/null | |||
| @@ -1,387 +0,0 @@ | |||
| 1 | # SPDX-License-Identifier: BSD-3-Clause OR Artistic-1.0 | ||
| 2 | # | ||
| 3 | # /etc/login.defs - Configuration control definitions for the shadow package. | ||
| 4 | # | ||
| 5 | # $Id: login.defs 3038 2009-07-23 20:41:35Z nekral-guest $ | ||
| 6 | # | ||
| 7 | |||
| 8 | # | ||
| 9 | # Delay in seconds before being allowed another attempt after a login failure | ||
| 10 | # Note: When PAM is used, some modules may enfore a minimal delay (e.g. | ||
| 11 | # pam_unix enforces a 2s delay) | ||
| 12 | # | ||
| 13 | FAIL_DELAY 3 | ||
| 14 | |||
| 15 | # | ||
| 16 | # Enable logging and display of /var/log/faillog login failure info. | ||
| 17 | # | ||
| 18 | #FAILLOG_ENAB yes | ||
| 19 | |||
| 20 | # | ||
| 21 | # Enable display of unknown usernames when login failures are recorded. | ||
| 22 | # | ||
| 23 | LOG_UNKFAIL_ENAB no | ||
| 24 | |||
| 25 | # | ||
| 26 | # Enable logging of successful logins | ||
| 27 | # | ||
| 28 | LOG_OK_LOGINS no | ||
| 29 | |||
| 30 | # | ||
| 31 | # Enable logging and display of /var/log/lastlog login time info. | ||
| 32 | # | ||
| 33 | #LASTLOG_ENAB yes | ||
| 34 | |||
| 35 | # | ||
| 36 | # Enable checking and display of mailbox status upon login. | ||
| 37 | # | ||
| 38 | # Disable if the shell startup files already check for mail | ||
| 39 | # ("mailx -e" or equivalent). | ||
| 40 | # | ||
| 41 | ##MAIL_CHECK_ENAB yes | ||
| 42 | |||
| 43 | # | ||
| 44 | # Enable additional checks upon password changes. | ||
| 45 | # | ||
| 46 | #OBSCURE_CHECKS_ENAB yes | ||
| 47 | |||
| 48 | # | ||
| 49 | # Enable checking of time restrictions specified in /etc/porttime. | ||
| 50 | # | ||
| 51 | #PORTTIME_CHECKS_ENAB yes | ||
| 52 | |||
| 53 | # | ||
| 54 | # Enable setting of ulimit, umask, and niceness from passwd gecos field. | ||
| 55 | # | ||
| 56 | #QUOTAS_ENAB yes | ||
| 57 | |||
| 58 | # | ||
| 59 | # Enable "syslog" logging of su activity - in addition to sulog file logging. | ||
| 60 | # SYSLOG_SG_ENAB does the same for newgrp and sg. | ||
| 61 | # | ||
| 62 | SYSLOG_SU_ENAB yes | ||
| 63 | SYSLOG_SG_ENAB yes | ||
| 64 | |||
| 65 | # | ||
| 66 | # If defined, either full pathname of a file containing device names or | ||
| 67 | # a ":" delimited list of device names. Root logins will be allowed only | ||
| 68 | # upon these devices. | ||
| 69 | # | ||
| 70 | CONSOLE /etc/securetty | ||
| 71 | #CONSOLE console:tty01:tty02:tty03:tty04 | ||
| 72 | |||
| 73 | # | ||
| 74 | # If defined, all su activity is logged to this file. | ||
| 75 | # | ||
| 76 | #SULOG_FILE /var/log/sulog | ||
| 77 | |||
| 78 | # | ||
| 79 | # If defined, ":" delimited list of "message of the day" files to | ||
| 80 | # be displayed upon login. | ||
| 81 | # | ||
| 82 | #MOTD_FILE /etc/motd | ||
| 83 | #MOTD_FILE /etc/motd:/usr/lib/news/news-motd | ||
| 84 | |||
| 85 | # | ||
| 86 | # If defined, this file will be output before each login prompt. | ||
| 87 | # | ||
| 88 | #ISSUE_FILE /etc/issue | ||
| 89 | |||
| 90 | # | ||
| 91 | # If defined, file which maps tty line to TERM environment parameter. | ||
| 92 | # Each line of the file is in a format something like "vt100 tty01". | ||
| 93 | # | ||
| 94 | #TTYTYPE_FILE /etc/ttytype | ||
| 95 | |||
| 96 | # | ||
| 97 | # If defined, login failures will be logged here in a utmp format. | ||
| 98 | # last, when invoked as lastb, will read /var/log/btmp, so... | ||
| 99 | # | ||
| 100 | #FTMP_FILE /var/log/btmp | ||
| 101 | |||
| 102 | # | ||
| 103 | # If defined, name of file whose presence which will inhibit non-root | ||
| 104 | # logins. The contents of this file should be a message indicating | ||
| 105 | # why logins are inhibited. | ||
| 106 | # | ||
| 107 | #NOLOGINS_FILE /etc/nologin | ||
| 108 | |||
| 109 | # | ||
| 110 | # If defined, the command name to display when running "su -". For | ||
| 111 | # example, if this is defined as "su" then a "ps" will display the | ||
| 112 | # command is "-su". If not defined, then "ps" would display the | ||
| 113 | # name of the shell actually being run, e.g. something like "-sh". | ||
| 114 | # | ||
| 115 | SU_NAME su | ||
| 116 | |||
| 117 | # | ||
| 118 | # *REQUIRED* | ||
| 119 | # Directory where mailboxes reside, _or_ name of file, relative to the | ||
| 120 | # home directory. If you _do_ define both, #MAIL_DIR takes precedence. | ||
| 121 | # | ||
| 122 | #MAIL_DIR /var/spool/mail | ||
| 123 | MAIL_FILE .mail | ||
| 124 | |||
| 125 | # | ||
| 126 | # If defined, file which inhibits all the usual chatter during the login | ||
| 127 | # sequence. If a full pathname, then hushed mode will be enabled if the | ||
| 128 | # user's name or shell are found in the file. If not a full pathname, then | ||
| 129 | # hushed mode will be enabled if the file exists in the user's home directory. | ||
| 130 | # | ||
| 131 | HUSHLOGIN_FILE .hushlogin | ||
| 132 | #HUSHLOGIN_FILE /etc/hushlogins | ||
| 133 | |||
| 134 | # | ||
| 135 | # If defined, either a TZ environment parameter spec or the | ||
| 136 | # fully-rooted pathname of a file containing such a spec. | ||
| 137 | # | ||
| 138 | #ENV_TZ TZ=CST6CDT | ||
| 139 | #ENV_TZ /etc/tzname | ||
| 140 | |||
| 141 | # | ||
| 142 | # If defined, an HZ environment parameter spec. | ||
| 143 | # | ||
| 144 | # for Linux/x86 | ||
| 145 | #ENV_HZ HZ=100 | ||
| 146 | # For Linux/Alpha... | ||
| 147 | #ENV_HZ HZ=1024 | ||
| 148 | |||
| 149 | # | ||
| 150 | # *REQUIRED* The default PATH settings, for superuser and normal users. | ||
| 151 | # | ||
| 152 | # (they are minimal, add the rest in the shell startup files) | ||
| 153 | ENV_SUPATH PATH=/sbin:/bin:/usr/sbin:/usr/bin | ||
| 154 | ENV_PATH PATH=/bin:/usr/bin | ||
| 155 | |||
| 156 | # | ||
| 157 | # Terminal permissions | ||
| 158 | # | ||
| 159 | # TTYGROUP Login tty will be assigned this group ownership. | ||
| 160 | # TTYPERM Login tty will be set to this permission. | ||
| 161 | # | ||
| 162 | # If you have a "write" program which is "setgid" to a special group | ||
| 163 | # which owns the terminals, define TTYGROUP to the group number and | ||
| 164 | # TTYPERM to 0620. Otherwise leave TTYGROUP commented out and assign | ||
| 165 | # TTYPERM to either 622 or 600. | ||
| 166 | # | ||
| 167 | TTYGROUP tty | ||
| 168 | TTYPERM 0600 | ||
| 169 | |||
| 170 | # | ||
| 171 | # Login configuration initializations: | ||
| 172 | # | ||
| 173 | # ERASECHAR Terminal ERASE character ('\010' = backspace). | ||
| 174 | # KILLCHAR Terminal KILL character ('\025' = CTRL/U). | ||
| 175 | # ULIMIT Default "ulimit" value. | ||
| 176 | # | ||
| 177 | # The ERASECHAR and KILLCHAR are used only on System V machines. | ||
| 178 | # The ULIMIT is used only if the system supports it. | ||
| 179 | # (now it works with setrlimit too; ulimit is in 512-byte units) | ||
| 180 | # | ||
| 181 | # Prefix these values with "0" to get octal, "0x" to get hexadecimal. | ||
| 182 | # | ||
| 183 | ERASECHAR 0177 | ||
| 184 | KILLCHAR 025 | ||
| 185 | #ULIMIT 2097152 | ||
| 186 | |||
| 187 | # Default initial "umask" value for non-PAM enabled systems. | ||
| 188 | # UMASK is also used by useradd and newusers to set the mode of new home | ||
| 189 | # directories. | ||
| 190 | # 022 is the default value, but 027, or even 077, could be considered | ||
| 191 | # better for privacy. There is no One True Answer here: each sysadmin | ||
| 192 | # must make up her mind. | ||
| 193 | UMASK 022 | ||
| 194 | |||
| 195 | # | ||
| 196 | # Password aging controls: | ||
| 197 | # | ||
| 198 | # PASS_MAX_DAYS Maximum number of days a password may be used. | ||
| 199 | # PASS_MIN_DAYS Minimum number of days allowed between password changes. | ||
| 200 | # PASS_MIN_LEN Minimum acceptable password length. | ||
| 201 | # PASS_WARN_AGE Number of days warning given before a password expires. | ||
| 202 | # | ||
| 203 | PASS_MAX_DAYS 99999 | ||
| 204 | PASS_MIN_DAYS 0 | ||
| 205 | #PASS_MIN_LEN 5 | ||
| 206 | PASS_WARN_AGE 7 | ||
| 207 | |||
| 208 | # | ||
| 209 | # If "yes", the user must be listed as a member of the first gid 0 group | ||
| 210 | # in /etc/group (called "root" on most Linux systems) to be able to "su" | ||
| 211 | # to uid 0 accounts. If the group doesn't exist or is empty, no one | ||
| 212 | # will be able to "su" to uid 0. | ||
| 213 | # | ||
| 214 | #SU_WHEEL_ONLY no | ||
| 215 | |||
| 216 | # | ||
| 217 | # If compiled with cracklib support, where are the dictionaries | ||
| 218 | # | ||
| 219 | #CRACKLIB_DICTPATH /var/cache/cracklib/cracklib_dict | ||
| 220 | |||
| 221 | # | ||
| 222 | # Min/max values for automatic uid selection in useradd | ||
| 223 | # | ||
| 224 | UID_MIN 1000 | ||
| 225 | UID_MAX 60000 | ||
| 226 | # System accounts | ||
| 227 | SYS_UID_MIN 101 | ||
| 228 | SYS_UID_MAX 999 | ||
| 229 | |||
| 230 | # | ||
| 231 | # Min/max values for automatic gid selection in groupadd | ||
| 232 | # | ||
| 233 | GID_MIN 1000 | ||
| 234 | GID_MAX 60000 | ||
| 235 | # System accounts | ||
| 236 | SYS_GID_MIN 101 | ||
| 237 | SYS_GID_MAX 999 | ||
| 238 | |||
| 239 | # | ||
| 240 | # Max number of login retries if password is bad | ||
| 241 | # | ||
| 242 | LOGIN_RETRIES 5 | ||
| 243 | |||
| 244 | # | ||
| 245 | # Max time in seconds for login | ||
| 246 | # | ||
| 247 | LOGIN_TIMEOUT 60 | ||
| 248 | |||
| 249 | # | ||
| 250 | # Maximum number of attempts to change password if rejected (too easy) | ||
| 251 | # | ||
| 252 | #PASS_CHANGE_TRIES 5 | ||
| 253 | |||
| 254 | # | ||
| 255 | # Warn about weak passwords (but still allow them) if you are root. | ||
| 256 | # | ||
| 257 | #PASS_ALWAYS_WARN yes | ||
| 258 | |||
| 259 | # | ||
| 260 | # Number of significant characters in the password for crypt(). | ||
| 261 | # Default is 8, don't change unless your crypt() is better. | ||
| 262 | # Ignored if MD5_CRYPT_ENAB set to "yes". | ||
| 263 | # | ||
| 264 | #PASS_MAX_LEN 8 | ||
| 265 | |||
| 266 | # | ||
| 267 | # Require password before chfn/chsh can make any changes. | ||
| 268 | # | ||
| 269 | #CHFN_AUTH yes | ||
| 270 | |||
| 271 | # | ||
| 272 | # Which fields may be changed by regular users using chfn - use | ||
| 273 | # any combination of letters "frwh" (full name, room number, work | ||
| 274 | # phone, home phone). If not defined, no changes are allowed. | ||
| 275 | # For backward compatibility, "yes" = "rwh" and "no" = "frwh". | ||
| 276 | # | ||
| 277 | CHFN_RESTRICT rwh | ||
| 278 | |||
| 279 | # | ||
| 280 | # Password prompt (%s will be replaced by user name). | ||
| 281 | # | ||
| 282 | # XXX - it doesn't work correctly yet, for now leave it commented out | ||
| 283 | # to use the default which is just "Password: ". | ||
| 284 | #LOGIN_STRING "%s's Password: " | ||
| 285 | |||
| 286 | # | ||
| 287 | # Only works if compiled with MD5_CRYPT defined: | ||
| 288 | # If set to "yes", new passwords will be encrypted using the MD5-based | ||
| 289 | # algorithm compatible with the one used by recent releases of FreeBSD. | ||
| 290 | # It supports passwords of unlimited length and longer salt strings. | ||
| 291 | # Set to "no" if you need to copy encrypted passwords to other systems | ||
| 292 | # which don't understand the new algorithm. Default is "no". | ||
| 293 | # | ||
| 294 | # Note: If you use PAM, it is recommended to use a value consistent with | ||
| 295 | # the PAM modules configuration. | ||
| 296 | # | ||
| 297 | # This variable is deprecated. You should use ENCRYPT_METHOD. | ||
| 298 | # | ||
| 299 | #MD5_CRYPT_ENAB no | ||
| 300 | |||
| 301 | # | ||
| 302 | # Only works if compiled with ENCRYPTMETHOD_SELECT defined: | ||
| 303 | # If set to MD5 , MD5-based algorithm will be used for encrypting password | ||
| 304 | # If set to SHA256, SHA256-based algorithm will be used for encrypting password | ||
| 305 | # If set to SHA512, SHA512-based algorithm will be used for encrypting password | ||
| 306 | # If set to DES, DES-based algorithm will be used for encrypting password (default) | ||
| 307 | # Overrides the MD5_CRYPT_ENAB option | ||
| 308 | # | ||
| 309 | # Note: If you use PAM, it is recommended to use a value consistent with | ||
| 310 | # the PAM modules configuration. | ||
| 311 | # | ||
| 312 | #ENCRYPT_METHOD DES | ||
| 313 | |||
| 314 | # | ||
| 315 | # Only works if ENCRYPT_METHOD is set to SHA256 or SHA512. | ||
| 316 | # | ||
| 317 | # Define the number of SHA rounds. | ||
| 318 | # With a lot of rounds, it is more difficult to brute forcing the password. | ||
| 319 | # But note also that it more CPU resources will be needed to authenticate | ||
| 320 | # users. | ||
| 321 | # | ||
| 322 | # If not specified, the libc will choose the default number of rounds (5000). | ||
| 323 | # The values must be inside the 1000-999999999 range. | ||
| 324 | # If only one of the MIN or MAX values is set, then this value will be used. | ||
| 325 | # If MIN > MAX, the highest value will be used. | ||
| 326 | # | ||
| 327 | # SHA_CRYPT_MIN_ROUNDS 5000 | ||
| 328 | # SHA_CRYPT_MAX_ROUNDS 5000 | ||
| 329 | |||
| 330 | # | ||
| 331 | # List of groups to add to the user's supplementary group set | ||
| 332 | # when logging in on the console (as determined by the CONSOLE | ||
| 333 | # setting). Default is none. | ||
| 334 | # | ||
| 335 | # Use with caution - it is possible for users to gain permanent | ||
| 336 | # access to these groups, even when not logged in on the console. | ||
| 337 | # How to do it is left as an exercise for the reader... | ||
| 338 | # | ||
| 339 | #CONSOLE_GROUPS floppy:audio:cdrom | ||
| 340 | |||
| 341 | # | ||
| 342 | # Should login be allowed if we can't cd to the home directory? | ||
| 343 | # Default in no. | ||
| 344 | # | ||
| 345 | DEFAULT_HOME yes | ||
| 346 | |||
| 347 | # | ||
| 348 | # If this file exists and is readable, login environment will be | ||
| 349 | # read from it. Every line should be in the form name=value. | ||
| 350 | # | ||
| 351 | #ENVIRON_FILE /etc/environment | ||
| 352 | |||
| 353 | # | ||
| 354 | # If defined, this command is run when removing a user. | ||
| 355 | # It should remove any at/cron/print jobs etc. owned by | ||
| 356 | # the user to be removed (passed as the first argument). | ||
| 357 | # | ||
| 358 | #USERDEL_CMD /usr/sbin/userdel_local | ||
| 359 | |||
| 360 | # | ||
| 361 | # Enable setting of the umask group bits to be the same as owner bits | ||
| 362 | # (examples: 022 -> 002, 077 -> 007) for non-root users, if the uid is | ||
| 363 | # the same as gid, and username is the same as the primary group name. | ||
| 364 | # | ||
| 365 | # This also enables userdel to remove user groups if no members exist. | ||
| 366 | # | ||
| 367 | USERGROUPS_ENAB yes | ||
| 368 | |||
| 369 | # | ||
| 370 | # If set to a non-nul number, the shadow utilities will make sure that | ||
| 371 | # groups never have more than this number of users on one line. | ||
| 372 | # This permit to support split groups (groups split into multiple lines, | ||
| 373 | # with the same group ID, to avoid limitation of the line length in the | ||
| 374 | # group file). | ||
| 375 | # | ||
| 376 | # 0 is the default value and disables this feature. | ||
| 377 | # | ||
| 378 | #MAX_MEMBERS_PER_GROUP 0 | ||
| 379 | |||
| 380 | # | ||
| 381 | # If useradd should create home directories for users by default (non | ||
| 382 | # system users only) | ||
| 383 | # This option is overridden with the -M or -m flags on the useradd command | ||
| 384 | # line. | ||
| 385 | # | ||
| 386 | CREATE_HOME yes | ||
| 387 | |||
diff --git a/meta/recipes-extended/shadow/files/login_defs_pam.sed b/meta/recipes-extended/shadow/files/login_defs_pam.sed deleted file mode 100644 index 0a1f3be4af..0000000000 --- a/meta/recipes-extended/shadow/files/login_defs_pam.sed +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | /^FAILLOG_ENAB/b comment | ||
| 2 | /^LASTLOG_ENAB/b comment | ||
| 3 | /^MAIL_CHECK_ENAB/b comment | ||
| 4 | /^OBSCURE_CHECKS_ENAB/b comment | ||
| 5 | /^PORTTIME_CHECKS_ENAB/b comment | ||
| 6 | /^QUOTAS_ENAB/b comment | ||
| 7 | /^MOTD_FILE/b comment | ||
| 8 | /^FTMP_FILE/b comment | ||
| 9 | /^NOLOGINS_FILE/b comment | ||
| 10 | /^ENV_HZ/b comment | ||
| 11 | /^ENV_TZ/b comment | ||
| 12 | /^PASS_MIN_LEN/b comment | ||
| 13 | /^SU_WHEEL_ONLY/b comment | ||
| 14 | /^CRACKLIB_DICTPATH/b comment | ||
| 15 | /^PASS_CHANGE_TRIES/b comment | ||
| 16 | /^PASS_ALWAYS_WARN/b comment | ||
| 17 | /^PASS_MAX_LEN/b comment | ||
| 18 | /^PASS_MIN_LEN/b comment | ||
| 19 | /^CHFN_AUTH/b comment | ||
| 20 | /^CHSH_AUTH/b comment | ||
| 21 | /^ISSUE_FILE/b comment | ||
| 22 | /^LOGIN_STRING/b comment | ||
| 23 | /^ULIMIT/b comment | ||
| 24 | /^ENVIRON_FILE/b comment | ||
| 25 | |||
| 26 | b exit | ||
| 27 | |||
| 28 | : comment | ||
| 29 | s:^:#: | ||
| 30 | |||
| 31 | : exit | ||
| 32 | |||
diff --git a/meta/recipes-extended/shadow/files/pam.d/chfn b/meta/recipes-extended/shadow/files/pam.d/chfn deleted file mode 100644 index baf7698bba..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/chfn +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | # | ||
| 2 | # The PAM configuration file for the Shadow `chfn' service | ||
| 3 | # | ||
| 4 | |||
| 5 | # This allows root to change user infomation without being | ||
| 6 | # prompted for a password | ||
| 7 | auth sufficient pam_rootok.so | ||
| 8 | |||
| 9 | # The standard Unix authentication modules, used with | ||
| 10 | # NIS (man nsswitch) as well as normal /etc/passwd and | ||
| 11 | # /etc/shadow entries. | ||
| 12 | auth include common-auth | ||
| 13 | account include common-account | ||
| 14 | session include common-session | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/chpasswd b/meta/recipes-extended/shadow/files/pam.d/chpasswd deleted file mode 100644 index b769d92ba4..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/chpasswd +++ /dev/null | |||
| @@ -1,6 +0,0 @@ | |||
| 1 | # The PAM configuration file for the Shadow 'chpasswd' service | ||
| 2 | # | ||
| 3 | |||
| 4 | auth sufficient pam_rootok.so | ||
| 5 | account required pam_permit.so | ||
| 6 | password include common-password | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/chsh b/meta/recipes-extended/shadow/files/pam.d/chsh deleted file mode 100644 index 8fb169f64e..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/chsh +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | # | ||
| 2 | # The PAM configuration file for the Shadow `chsh' service | ||
| 3 | # | ||
| 4 | |||
| 5 | # This will not allow a user to change their shell unless | ||
| 6 | # their current one is listed in /etc/shells. This keeps | ||
| 7 | # accounts with special shells from changing them. | ||
| 8 | auth required pam_shells.so | ||
| 9 | |||
| 10 | # This allows root to change user shell without being | ||
| 11 | # prompted for a password | ||
| 12 | auth sufficient pam_rootok.so | ||
| 13 | |||
| 14 | # The standard Unix authentication modules, used with | ||
| 15 | # NIS (man nsswitch) as well as normal /etc/passwd and | ||
| 16 | # /etc/shadow entries. | ||
| 17 | auth include common-auth | ||
| 18 | account include common-account | ||
| 19 | session include common-session | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/login b/meta/recipes-extended/shadow/files/pam.d/login deleted file mode 100644 index d39e09b1ea..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/login +++ /dev/null | |||
| @@ -1,77 +0,0 @@ | |||
| 1 | # | ||
| 2 | # The PAM configuration file for the Shadow `login' service | ||
| 3 | # | ||
| 4 | |||
| 5 | # Enforce a minimal delay in case of failure (in microseconds). | ||
| 6 | # (Replaces the `FAIL_DELAY' setting from login.defs) | ||
| 7 | # Note that other modules may require another minimal delay. (for example, | ||
| 8 | # to disable any delay, you should add the nodelay option to pam_unix) | ||
| 9 | auth optional pam_faildelay.so delay=3000000 | ||
| 10 | |||
| 11 | # Outputs an issue file prior to each login prompt (Replaces the | ||
| 12 | # ISSUE_FILE option from login.defs). Uncomment for use | ||
| 13 | # auth required pam_issue.so issue=/etc/issue | ||
| 14 | |||
| 15 | # Disallows root logins except on tty's listed in /etc/securetty | ||
| 16 | # (Replaces the `CONSOLE' setting from login.defs) | ||
| 17 | # Note that it is included as a "requisite" module. No password prompts will | ||
| 18 | # be displayed if this module fails to avoid having the root password | ||
| 19 | # transmitted on unsecure ttys. | ||
| 20 | # You can change it to a "required" module if you think it permits to | ||
| 21 | # guess valid user names of your system (invalid user names are considered | ||
| 22 | # as possibly being root). | ||
| 23 | auth [success=ok ignore=ignore user_unknown=ignore default=die] pam_securetty.so | ||
| 24 | |||
| 25 | # Disallows other than root logins when /etc/nologin exists | ||
| 26 | # (Replaces the `NOLOGINS_FILE' option from login.defs) | ||
| 27 | auth requisite pam_nologin.so | ||
| 28 | |||
| 29 | # This module parses environment configuration file(s) | ||
| 30 | # and also allows you to use an extended config | ||
| 31 | # file /etc/security/pam_env.conf. | ||
| 32 | # | ||
| 33 | # parsing /etc/environment needs "readenv=1" | ||
| 34 | session required pam_env.so readenv=1 | ||
| 35 | |||
| 36 | # Standard Un*x authentication. | ||
| 37 | auth include common-auth | ||
| 38 | |||
| 39 | # This allows certain extra groups to be granted to a user | ||
| 40 | # based on things like time of day, tty, service, and user. | ||
| 41 | # Please edit /etc/security/group.conf to fit your needs | ||
| 42 | # (Replaces the `CONSOLE_GROUPS' option in login.defs) | ||
| 43 | auth optional pam_group.so | ||
| 44 | |||
| 45 | # Uncomment and edit /etc/security/time.conf if you need to set | ||
| 46 | # time restrainst on logins. | ||
| 47 | # (Replaces the `PORTTIME_CHECKS_ENAB' option from login.defs | ||
| 48 | # as well as /etc/porttime) | ||
| 49 | # account requisite pam_time.so | ||
| 50 | |||
| 51 | # Uncomment and edit /etc/security/access.conf if you need to | ||
| 52 | # set access limits. | ||
| 53 | # (Replaces /etc/login.access file) | ||
| 54 | # account required pam_access.so | ||
| 55 | |||
| 56 | # Sets up user limits according to /etc/security/limits.conf | ||
| 57 | # (Replaces the use of /etc/limits in old login) | ||
| 58 | session required pam_limits.so | ||
| 59 | |||
| 60 | # Prints the motd upon succesful login | ||
| 61 | # (Replaces the `MOTD_FILE' option in login.defs) | ||
| 62 | session optional pam_motd.so | ||
| 63 | |||
| 64 | # Prints the status of the user's mailbox upon succesful login | ||
| 65 | # (Replaces the `MAIL_CHECK_ENAB' option from login.defs). | ||
| 66 | # | ||
| 67 | # This also defines the MAIL environment variable | ||
| 68 | # However, userdel also needs MAIL_DIR and MAIL_FILE variables | ||
| 69 | # in /etc/login.defs to make sure that removing a user | ||
| 70 | # also removes the user's mail spool file. | ||
| 71 | # See comments in /etc/login.defs | ||
| 72 | session optional pam_mail.so standard | ||
| 73 | |||
| 74 | # Standard Un*x account and session | ||
| 75 | account include common-account | ||
| 76 | password include common-password | ||
| 77 | session include common-session | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/newusers b/meta/recipes-extended/shadow/files/pam.d/newusers deleted file mode 100644 index 4c59dfa478..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/newusers +++ /dev/null | |||
| @@ -1,6 +0,0 @@ | |||
| 1 | # The PAM configuration file for the Shadow 'newusers' service | ||
| 2 | # | ||
| 3 | |||
| 4 | auth sufficient pam_rootok.so | ||
| 5 | account required pam_permit.so | ||
| 6 | password include common-password | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/passwd b/meta/recipes-extended/shadow/files/pam.d/passwd deleted file mode 100644 index f534992435..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/passwd +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | # | ||
| 2 | # The PAM configuration file for the Shadow `passwd' service | ||
| 3 | # | ||
| 4 | |||
| 5 | password include common-password | ||
diff --git a/meta/recipes-extended/shadow/files/pam.d/su b/meta/recipes-extended/shadow/files/pam.d/su deleted file mode 100644 index 8d590a32e6..0000000000 --- a/meta/recipes-extended/shadow/files/pam.d/su +++ /dev/null | |||
| @@ -1,57 +0,0 @@ | |||
| 1 | # | ||
| 2 | # The PAM configuration file for the Shadow `su' service | ||
| 3 | # | ||
| 4 | |||
| 5 | # This allows root to su without passwords (normal operation) | ||
| 6 | auth sufficient pam_rootok.so | ||
| 7 | |||
| 8 | # Uncomment this to force users to be a member of group root | ||
| 9 | # before they can use `su'. You can also add "group=foo" | ||
| 10 | # to the end of this line if you want to use a group other | ||
| 11 | # than the default "root" (but this may have side effect of | ||
| 12 | # denying "root" user, unless she's a member of "foo" or explicitly | ||
| 13 | # permitted earlier by e.g. "sufficient pam_rootok.so"). | ||
| 14 | # (Replaces the `SU_WHEEL_ONLY' option from login.defs) | ||
| 15 | # auth required pam_wheel.so | ||
| 16 | |||
| 17 | # Uncomment this if you want wheel members to be able to | ||
| 18 | # su without a password. | ||
| 19 | # auth sufficient pam_wheel.so trust | ||
| 20 | |||
| 21 | # Uncomment this if you want members of a specific group to not | ||
| 22 | # be allowed to use su at all. | ||
| 23 | # auth required pam_wheel.so deny group=nosu | ||
| 24 | |||
| 25 | # Uncomment and edit /etc/security/time.conf if you need to set | ||
| 26 | # time restrainst on su usage. | ||
| 27 | # (Replaces the `PORTTIME_CHECKS_ENAB' option from login.defs | ||
| 28 | # as well as /etc/porttime) | ||
| 29 | # account requisite pam_time.so | ||
| 30 | |||
| 31 | # This module parses environment configuration file(s) | ||
| 32 | # and also allows you to use an extended config | ||
| 33 | # file /etc/security/pam_env.conf. | ||
| 34 | # | ||
| 35 | # parsing /etc/environment needs "readenv=1" | ||
| 36 | session required pam_env.so readenv=1 | ||
| 37 | |||
| 38 | # Defines the MAIL environment variable | ||
| 39 | # However, userdel also needs MAIL_DIR and MAIL_FILE variables | ||
| 40 | # in /etc/login.defs to make sure that removing a user | ||
| 41 | # also removes the user's mail spool file. | ||
| 42 | # See comments in /etc/login.defs | ||
| 43 | # | ||
| 44 | # "nopen" stands to avoid reporting new mail when su'ing to another user | ||
| 45 | session optional pam_mail.so nopen | ||
| 46 | |||
| 47 | # Sets up user limits, please uncomment and read /etc/security/limits.conf | ||
| 48 | # to enable this functionality. | ||
| 49 | # (Replaces the use of /etc/limits in old login) | ||
| 50 | # session required pam_limits.so | ||
| 51 | |||
| 52 | # The standard Unix authentication modules, used with | ||
| 53 | # NIS (man nsswitch) as well as normal /etc/passwd and | ||
| 54 | # /etc/shadow entries. | ||
| 55 | auth include common-auth | ||
| 56 | account include common-account | ||
| 57 | session include common-session | ||
diff --git a/meta/recipes-extended/shadow/files/securetty b/meta/recipes-extended/shadow/files/securetty deleted file mode 100644 index 820728faa6..0000000000 --- a/meta/recipes-extended/shadow/files/securetty +++ /dev/null | |||
| @@ -1,239 +0,0 @@ | |||
| 1 | # /etc/securetty: list of terminals on which root is allowed to login. | ||
| 2 | # See securetty(5) and login(1). | ||
| 3 | console | ||
| 4 | |||
| 5 | # Standard serial ports | ||
| 6 | ttyS0 | ||
| 7 | ttyS1 | ||
| 8 | ttyS2 | ||
| 9 | ttyS3 | ||
| 10 | ttyS4 | ||
| 11 | |||
| 12 | # ARM AMBA SoCs | ||
| 13 | ttyAM0 | ||
| 14 | ttyAM1 | ||
| 15 | ttyAM2 | ||
| 16 | ttyAM3 | ||
| 17 | ttyAMA0 | ||
| 18 | ttyAMA1 | ||
| 19 | ttyAMA2 | ||
| 20 | ttyAMA3 | ||
| 21 | |||
| 22 | # QCOM Socs | ||
| 23 | ttyHSL0 | ||
| 24 | ttyHSL1 | ||
| 25 | ttyHSL2 | ||
| 26 | ttyHSL3 | ||
| 27 | ttyMSM0 | ||
| 28 | ttyMSM1 | ||
| 29 | ttyMSM2 | ||
| 30 | |||
| 31 | # Samsung ARM SoCs | ||
| 32 | ttySAC0 | ||
| 33 | ttySAC1 | ||
| 34 | ttySAC2 | ||
| 35 | ttySAC3 | ||
| 36 | |||
| 37 | # STM SoCs | ||
| 38 | ttyAS0 | ||
| 39 | ttyAS1 | ||
| 40 | ttyAS2 | ||
| 41 | ttyAS3 | ||
| 42 | |||
| 43 | # TI OMAP SoCs | ||
| 44 | ttyO0 | ||
| 45 | ttyO1 | ||
| 46 | ttyO2 | ||
| 47 | ttyO3 | ||
| 48 | |||
| 49 | # Xilinx Zynq SoC | ||
| 50 | ttyPS0 | ||
| 51 | ttyPS1 | ||
| 52 | |||
| 53 | # USB dongles | ||
| 54 | ttyUSB0 | ||
| 55 | ttyUSB1 | ||
| 56 | ttyUSB2 | ||
| 57 | |||
| 58 | # USB serial gadget | ||
| 59 | ttyGS0 | ||
| 60 | |||
| 61 | # PowerMac | ||
| 62 | ttyPZ0 | ||
| 63 | ttyPZ1 | ||
| 64 | ttyPZ2 | ||
| 65 | ttyPZ3 | ||
| 66 | |||
| 67 | # Embedded MPC platforms | ||
| 68 | ttyPSC0 | ||
| 69 | ttyPSC1 | ||
| 70 | ttyPSC2 | ||
| 71 | ttyPSC3 | ||
| 72 | ttyPSC4 | ||
| 73 | ttyPSC5 | ||
| 74 | |||
| 75 | # PA-RISC mux ports | ||
| 76 | ttyB0 | ||
| 77 | ttyB1 | ||
| 78 | |||
| 79 | # Standard hypervisor virtual console | ||
| 80 | hvc0 | ||
| 81 | |||
| 82 | # Oldstyle Xen console | ||
| 83 | xvc0 | ||
| 84 | |||
| 85 | # Standard consoles | ||
| 86 | tty1 | ||
| 87 | tty2 | ||
| 88 | tty3 | ||
| 89 | tty4 | ||
| 90 | tty5 | ||
| 91 | tty6 | ||
| 92 | tty7 | ||
| 93 | tty8 | ||
| 94 | tty9 | ||
| 95 | tty10 | ||
| 96 | tty11 | ||
| 97 | tty12 | ||
| 98 | tty13 | ||
| 99 | tty14 | ||
| 100 | tty15 | ||
| 101 | tty16 | ||
| 102 | tty17 | ||
| 103 | tty18 | ||
| 104 | tty19 | ||
| 105 | tty20 | ||
| 106 | tty21 | ||
| 107 | tty22 | ||
| 108 | tty23 | ||
| 109 | tty24 | ||
| 110 | tty25 | ||
| 111 | tty26 | ||
| 112 | tty27 | ||
| 113 | tty28 | ||
| 114 | tty29 | ||
| 115 | tty30 | ||
| 116 | tty31 | ||
| 117 | tty32 | ||
| 118 | tty33 | ||
| 119 | tty34 | ||
| 120 | tty35 | ||
| 121 | tty36 | ||
| 122 | tty37 | ||
| 123 | tty38 | ||
| 124 | tty39 | ||
| 125 | tty40 | ||
| 126 | tty41 | ||
| 127 | tty42 | ||
| 128 | tty43 | ||
| 129 | tty44 | ||
| 130 | tty45 | ||
| 131 | tty46 | ||
| 132 | tty47 | ||
| 133 | tty48 | ||
| 134 | tty49 | ||
| 135 | tty50 | ||
| 136 | tty51 | ||
| 137 | tty52 | ||
| 138 | tty53 | ||
| 139 | tty54 | ||
| 140 | tty55 | ||
| 141 | tty56 | ||
| 142 | tty57 | ||
| 143 | tty58 | ||
| 144 | tty59 | ||
| 145 | tty60 | ||
| 146 | tty61 | ||
| 147 | tty62 | ||
| 148 | tty63 | ||
| 149 | |||
| 150 | # Local X displays (allows empty passwords with pam_unix's nullok_secure) | ||
| 151 | pts/0 | ||
| 152 | pts/1 | ||
| 153 | pts/2 | ||
| 154 | pts/3 | ||
| 155 | |||
| 156 | # Embedded Freescale i.MX ports | ||
| 157 | ttymxc0 | ||
| 158 | ttymxc1 | ||
| 159 | ttymxc2 | ||
| 160 | ttymxc3 | ||
| 161 | ttymxc4 | ||
| 162 | ttymxc5 | ||
| 163 | |||
| 164 | # Freescale lpuart ports | ||
| 165 | ttyLP0 | ||
| 166 | ttyLP1 | ||
| 167 | ttyLP2 | ||
| 168 | ttyLP3 | ||
| 169 | ttyLP4 | ||
| 170 | ttyLP5 | ||
| 171 | |||
| 172 | # Standard serial ports, with devfs | ||
| 173 | tts/0 | ||
| 174 | tts/1 | ||
| 175 | |||
| 176 | # Standard consoles, with devfs | ||
| 177 | vc/1 | ||
| 178 | vc/2 | ||
| 179 | vc/3 | ||
| 180 | vc/4 | ||
| 181 | vc/5 | ||
| 182 | vc/6 | ||
| 183 | vc/7 | ||
| 184 | vc/8 | ||
| 185 | vc/9 | ||
| 186 | vc/10 | ||
| 187 | vc/11 | ||
| 188 | vc/12 | ||
| 189 | vc/13 | ||
| 190 | vc/14 | ||
| 191 | vc/15 | ||
| 192 | vc/16 | ||
| 193 | vc/17 | ||
| 194 | vc/18 | ||
| 195 | vc/19 | ||
| 196 | vc/20 | ||
| 197 | vc/21 | ||
| 198 | vc/22 | ||
| 199 | vc/23 | ||
| 200 | vc/24 | ||
| 201 | vc/25 | ||
| 202 | vc/26 | ||
| 203 | vc/27 | ||
| 204 | vc/28 | ||
| 205 | vc/29 | ||
| 206 | vc/30 | ||
| 207 | vc/31 | ||
| 208 | vc/32 | ||
| 209 | vc/33 | ||
| 210 | vc/34 | ||
| 211 | vc/35 | ||
| 212 | vc/36 | ||
| 213 | vc/37 | ||
| 214 | vc/38 | ||
| 215 | vc/39 | ||
| 216 | vc/40 | ||
| 217 | vc/41 | ||
| 218 | vc/42 | ||
| 219 | vc/43 | ||
| 220 | vc/44 | ||
| 221 | vc/45 | ||
| 222 | vc/46 | ||
| 223 | vc/47 | ||
| 224 | vc/48 | ||
| 225 | vc/49 | ||
| 226 | vc/50 | ||
| 227 | vc/51 | ||
| 228 | vc/52 | ||
| 229 | vc/53 | ||
| 230 | vc/54 | ||
| 231 | vc/55 | ||
| 232 | vc/56 | ||
| 233 | vc/57 | ||
| 234 | vc/58 | ||
| 235 | vc/59 | ||
| 236 | vc/60 | ||
| 237 | vc/61 | ||
| 238 | vc/62 | ||
| 239 | vc/63 | ||
diff --git a/meta/recipes-extended/shadow/files/shadow-update-pam-conf.patch b/meta/recipes-extended/shadow/files/shadow-update-pam-conf.patch deleted file mode 100644 index 318e2665c2..0000000000 --- a/meta/recipes-extended/shadow/files/shadow-update-pam-conf.patch +++ /dev/null | |||
| @@ -1,110 +0,0 @@ | |||
| 1 | From eb17cd91d8e4d76ee95de9c0c9f4938ba2e3e82a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Kang Kai <kai.kang@windriver.com> | ||
| 3 | Date: Wed, 20 Jul 2011 19:18:14 +0800 | ||
| 4 | Subject: [PATCH] shadow: update pam related configure files | ||
| 5 | |||
| 6 | The system-auth in the configure files is from Fedora which put all the 4 pam type rules | ||
| 7 | in one file. | ||
| 8 | In yocto it obey the way with Debian/Ubuntu, and the names are common-auth, common-account, | ||
| 9 | common-password and common-session. | ||
| 10 | So update them with oe way. | ||
| 11 | |||
| 12 | See meta/recipes-extended/pam/libpam/pam.d/common-password | ||
| 13 | |||
| 14 | Upstream-Status: Inappropriate [oe-core specific] | ||
| 15 | |||
| 16 | Signed-off-by: Kang Kai <kai.kang@windriver.com> | ||
| 17 | --- | ||
| 18 | etc/pam.d/chgpasswd | 2 +- | ||
| 19 | etc/pam.d/groupadd | 2 +- | ||
| 20 | etc/pam.d/groupdel | 2 +- | ||
| 21 | etc/pam.d/groupmems | 2 +- | ||
| 22 | etc/pam.d/groupmod | 2 +- | ||
| 23 | etc/pam.d/useradd | 2 +- | ||
| 24 | etc/pam.d/userdel | 2 +- | ||
| 25 | etc/pam.d/usermod | 2 +- | ||
| 26 | 8 files changed, 8 insertions(+), 8 deletions(-) | ||
| 27 | |||
| 28 | diff --git a/etc/pam.d/chgpasswd b/etc/pam.d/chgpasswd | ||
| 29 | index 8f49f5c..b1f365d 100644 | ||
| 30 | --- a/etc/pam.d/chgpasswd | ||
| 31 | +++ b/etc/pam.d/chgpasswd | ||
| 32 | @@ -1,4 +1,4 @@ | ||
| 33 | #%PAM-1.0 | ||
| 34 | auth sufficient pam_rootok.so | ||
| 35 | account required pam_permit.so | ||
| 36 | -password include system-auth | ||
| 37 | +password include common-password | ||
| 38 | diff --git a/etc/pam.d/groupadd b/etc/pam.d/groupadd | ||
| 39 | index 8f49f5c..b1f365d 100644 | ||
| 40 | --- a/etc/pam.d/groupadd | ||
| 41 | +++ b/etc/pam.d/groupadd | ||
| 42 | @@ -1,4 +1,4 @@ | ||
| 43 | #%PAM-1.0 | ||
| 44 | auth sufficient pam_rootok.so | ||
| 45 | account required pam_permit.so | ||
| 46 | -password include system-auth | ||
| 47 | +password include common-password | ||
| 48 | diff --git a/etc/pam.d/groupdel b/etc/pam.d/groupdel | ||
| 49 | index 8f49f5c..b1f365d 100644 | ||
| 50 | --- a/etc/pam.d/groupdel | ||
| 51 | +++ b/etc/pam.d/groupdel | ||
| 52 | @@ -1,4 +1,4 @@ | ||
| 53 | #%PAM-1.0 | ||
| 54 | auth sufficient pam_rootok.so | ||
| 55 | account required pam_permit.so | ||
| 56 | -password include system-auth | ||
| 57 | +password include common-password | ||
| 58 | diff --git a/etc/pam.d/groupmems b/etc/pam.d/groupmems | ||
| 59 | index 8f49f5c..b1f365d 100644 | ||
| 60 | --- a/etc/pam.d/groupmems | ||
| 61 | +++ b/etc/pam.d/groupmems | ||
| 62 | @@ -1,4 +1,4 @@ | ||
| 63 | #%PAM-1.0 | ||
| 64 | auth sufficient pam_rootok.so | ||
| 65 | account required pam_permit.so | ||
| 66 | -password include system-auth | ||
| 67 | +password include common-password | ||
| 68 | diff --git a/etc/pam.d/groupmod b/etc/pam.d/groupmod | ||
| 69 | index 8f49f5c..b1f365d 100644 | ||
| 70 | --- a/etc/pam.d/groupmod | ||
| 71 | +++ b/etc/pam.d/groupmod | ||
| 72 | @@ -1,4 +1,4 @@ | ||
| 73 | #%PAM-1.0 | ||
| 74 | auth sufficient pam_rootok.so | ||
| 75 | account required pam_permit.so | ||
| 76 | -password include system-auth | ||
| 77 | +password include common-password | ||
| 78 | diff --git a/etc/pam.d/useradd b/etc/pam.d/useradd | ||
| 79 | index 8f49f5c..b1f365d 100644 | ||
| 80 | --- a/etc/pam.d/useradd | ||
| 81 | +++ b/etc/pam.d/useradd | ||
| 82 | @@ -1,4 +1,4 @@ | ||
| 83 | #%PAM-1.0 | ||
| 84 | auth sufficient pam_rootok.so | ||
| 85 | account required pam_permit.so | ||
| 86 | -password include system-auth | ||
| 87 | +password include common-password | ||
| 88 | diff --git a/etc/pam.d/userdel b/etc/pam.d/userdel | ||
| 89 | index 8f49f5c..b1f365d 100644 | ||
| 90 | --- a/etc/pam.d/userdel | ||
| 91 | +++ b/etc/pam.d/userdel | ||
| 92 | @@ -1,4 +1,4 @@ | ||
| 93 | #%PAM-1.0 | ||
| 94 | auth sufficient pam_rootok.so | ||
| 95 | account required pam_permit.so | ||
| 96 | -password include system-auth | ||
| 97 | +password include common-password | ||
| 98 | diff --git a/etc/pam.d/usermod b/etc/pam.d/usermod | ||
| 99 | index 8f49f5c..b1f365d 100644 | ||
| 100 | --- a/etc/pam.d/usermod | ||
| 101 | +++ b/etc/pam.d/usermod | ||
| 102 | @@ -1,4 +1,4 @@ | ||
| 103 | #%PAM-1.0 | ||
| 104 | auth sufficient pam_rootok.so | ||
| 105 | account required pam_permit.so | ||
| 106 | -password include system-auth | ||
| 107 | +password include common-password | ||
| 108 | -- | ||
| 109 | 2.43.0 | ||
| 110 | |||
diff --git a/meta/recipes-extended/shadow/files/useradd b/meta/recipes-extended/shadow/files/useradd deleted file mode 100644 index 782aeef418..0000000000 --- a/meta/recipes-extended/shadow/files/useradd +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | # useradd defaults file | ||
| 2 | GROUP=100 | ||
| 3 | HOME=/home | ||
| 4 | INACTIVE=-1 | ||
| 5 | EXPIRE= | ||
| 6 | SHELL=/bin/sh | ||
| 7 | SKEL=/etc/skel | ||
| 8 | CREATE_MAIL_SPOOL=no | ||
diff --git a/meta/recipes-extended/shadow/shadow-securetty_4.6.bb b/meta/recipes-extended/shadow/shadow-securetty_4.6.bb deleted file mode 100644 index e94e1caf22..0000000000 --- a/meta/recipes-extended/shadow/shadow-securetty_4.6.bb +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | SUMMARY = "Provider of the machine specific securetty file" | ||
| 2 | SECTION = "base utils" | ||
| 3 | LICENSE = "MIT" | ||
| 4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
| 5 | |||
| 6 | INHIBIT_DEFAULT_DEPS = "1" | ||
| 7 | |||
| 8 | SRC_URI = "file://securetty" | ||
| 9 | |||
| 10 | S = "${UNPACKDIR}" | ||
| 11 | |||
| 12 | # Since SERIAL_CONSOLES is likely to be set from the machine configuration | ||
| 13 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
| 14 | |||
| 15 | do_install () { | ||
| 16 | # Ensure we add a suitable securetty file to the package that has | ||
| 17 | # most common embedded TTYs defined. | ||
| 18 | install -d ${D}${sysconfdir} | ||
| 19 | install -m 0400 ${S}/securetty ${D}${sysconfdir}/securetty | ||
| 20 | if [ ! -z "${SERIAL_CONSOLES}" ]; then | ||
| 21 | # Our SERIAL_CONSOLES contains a baud rate and sometimes extra | ||
| 22 | # options as well. The following pearl :) takes that and converts | ||
| 23 | # it into newline-separated tty's and appends them into | ||
| 24 | # securetty. So if a machine has a weird looking console device | ||
| 25 | # node (e.g. ttyAMA0) that securetty does not know, it will get | ||
| 26 | # appended to securetty and root logins will be allowed on that | ||
| 27 | # console. | ||
| 28 | tmp="${SERIAL_CONSOLES}" | ||
| 29 | for entry in $tmp ; do | ||
| 30 | ttydev=`echo "$entry" | sed -e 's/^[0-9]*\;//' -e 's/\;.*//'` | ||
| 31 | if ! grep -q $ttydev ${D}${sysconfdir}/securetty; then | ||
| 32 | echo $ttydev >> ${D}${sysconfdir}/securetty | ||
| 33 | fi | ||
| 34 | done | ||
| 35 | fi | ||
| 36 | } | ||
diff --git a/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb b/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb deleted file mode 100644 index d66ef1e6a4..0000000000 --- a/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | SUMMARY = "Shadow utils requirements for useradd.bbclass" | ||
| 2 | HOMEPAGE = "http://github.com/shadow-maint/shadow" | ||
| 3 | BUGTRACKER = "http://github.com/shadow-maint/shadow/issues" | ||
| 4 | SECTION = "base utils" | ||
| 5 | LICENSE = "BSD-3-Clause | Artistic-1.0" | ||
| 6 | LIC_FILES_CHKSUM = "file://login.defs_shadow-sysroot;endline=1;md5=ceddfb61608e4db87012499555184aed" | ||
| 7 | |||
| 8 | DEPENDS = "base-passwd" | ||
| 9 | |||
| 10 | # The sole purpose of this recipe is to provide the /etc/login.defs | ||
| 11 | # file for the target sysroot - needed so the shadow-native utilities | ||
| 12 | # can add custom users/groups for recipes that use inherit useradd. | ||
| 13 | SRC_URI = "file://login.defs_shadow-sysroot" | ||
| 14 | |||
| 15 | S = "${UNPACKDIR}" | ||
| 16 | |||
| 17 | do_install() { | ||
| 18 | install -d ${D}${sysconfdir} | ||
| 19 | install -p -m 644 ${S}/login.defs_shadow-sysroot ${D}${sysconfdir}/login.defs | ||
| 20 | } | ||
| 21 | |||
| 22 | SYSROOT_DIRS += "${sysconfdir}" | ||
| 23 | |||
| 24 | # don't create any packages | ||
| 25 | # otherwise: dbus-dev depends on shadow-sysroot-dev which depends on shadow-sysroot | ||
| 26 | # and this has another copy of /etc/login.defs already provided by shadow | ||
| 27 | PACKAGES = "" | ||
| 28 | |||
| 29 | inherit nopackages | ||
diff --git a/meta/recipes-extended/shadow/shadow_4.18.0.bb b/meta/recipes-extended/shadow/shadow_4.18.0.bb deleted file mode 100644 index ba65fc7196..0000000000 --- a/meta/recipes-extended/shadow/shadow_4.18.0.bb +++ /dev/null | |||
| @@ -1,232 +0,0 @@ | |||
| 1 | SUMMARY = "Tools to change and administer password and group data" | ||
| 2 | HOMEPAGE = "http://github.com/shadow-maint/shadow" | ||
| 3 | DESCRIPTION = "${SUMMARY}" | ||
| 4 | BUGTRACKER = "http://github.com/shadow-maint/shadow/issues" | ||
| 5 | SECTION = "base/utils" | ||
| 6 | LICENSE = "BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=c9a450b7be84eac23e6353efecb60b5b \ | ||
| 8 | file://src/passwd.c;beginline=2;endline=7;md5=67bcf314687820b2f010d4863fce3fc5 \ | ||
| 9 | " | ||
| 10 | |||
| 11 | DEPENDS = "virtual/crypt" | ||
| 12 | |||
| 13 | GITHUB_BASE_URI = "https://github.com/shadow-maint/shadow/releases" | ||
| 14 | SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.gz \ | ||
| 15 | ${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \ | ||
| 16 | file://useradd \ | ||
| 17 | " | ||
| 18 | |||
| 19 | SRC_URI:append:class-target = " \ | ||
| 20 | file://login_defs_pam.sed \ | ||
| 21 | file://shadow-update-pam-conf.patch \ | ||
| 22 | " | ||
| 23 | |||
| 24 | SRC_URI:append:class-native = " \ | ||
| 25 | file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \ | ||
| 26 | file://disable_syslog.patch \ | ||
| 27 | " | ||
| 28 | SRC_URI[sha256sum] = "ae486ce4c0bce55c42d76d8478e428c41586f1da2f89fbf5228243fb4d849db4" | ||
| 29 | UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$" | ||
| 30 | |||
| 31 | # Additional Policy files for PAM | ||
| 32 | PAM_SRC_URI = "file://pam.d/chfn \ | ||
| 33 | file://pam.d/chpasswd \ | ||
| 34 | file://pam.d/chsh \ | ||
| 35 | file://pam.d/login \ | ||
| 36 | file://pam.d/newusers \ | ||
| 37 | file://pam.d/passwd \ | ||
| 38 | file://pam.d/su" | ||
| 39 | |||
| 40 | inherit autotools gettext github-releases pkgconfig | ||
| 41 | |||
| 42 | export CONFIG_SHELL = "/bin/sh" | ||
| 43 | |||
| 44 | EXTRA_OECONF += " \ | ||
| 45 | --enable-subordinate-ids=yes \ | ||
| 46 | --without-sssd \ | ||
| 47 | ${NSCDOPT}" | ||
| 48 | |||
| 49 | CFLAGS:append:libc-musl = " -DLIBBSD_OVERLAY" | ||
| 50 | |||
| 51 | NSCDOPT = "" | ||
| 52 | NSCDOPT:class-native = "--without-nscd" | ||
| 53 | NSCDOPT:class-nativesdk = "--without-nscd" | ||
| 54 | NSCDOPT:libc-glibc = "--with-nscd" | ||
| 55 | |||
| 56 | PAM_PLUGINS = "libpam-runtime \ | ||
| 57 | pam-plugin-faildelay \ | ||
| 58 | pam-plugin-securetty \ | ||
| 59 | pam-plugin-nologin \ | ||
| 60 | pam-plugin-env \ | ||
| 61 | pam-plugin-group \ | ||
| 62 | pam-plugin-limits \ | ||
| 63 | pam-plugin-motd \ | ||
| 64 | pam-plugin-mail \ | ||
| 65 | pam-plugin-shells \ | ||
| 66 | pam-plugin-rootok" | ||
| 67 | |||
| 68 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ | ||
| 69 | ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}" | ||
| 70 | PACKAGECONFIG:class-native ??= "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} libbsd" | ||
| 71 | PACKAGECONFIG:class-nativesdk = "" | ||
| 72 | PACKAGECONFIG[pam] = "--with-libpam,--without-libpam,libpam,${PAM_PLUGINS}" | ||
| 73 | PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr" | ||
| 74 | PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl" | ||
| 75 | PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit" | ||
| 76 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux libsemanage" | ||
| 77 | PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd" | ||
| 78 | PACKAGECONFIG[logind] = "--enable-logind,--disable-logind,systemd" | ||
| 79 | |||
| 80 | RDEPENDS:${PN} = "shadow-securetty \ | ||
| 81 | base-passwd \ | ||
| 82 | util-linux-sulogin" | ||
| 83 | RDEPENDS:${PN}:class-native = "" | ||
| 84 | RDEPENDS:${PN}:class-nativesdk = "" | ||
| 85 | |||
| 86 | do_install() { | ||
| 87 | oe_runmake DESTDIR="${D}" sbindir="${base_sbindir}" usbindir="${sbindir}" install | ||
| 88 | |||
| 89 | # Info dir listing isn't interesting at this point so remove it if it exists. | ||
| 90 | if [ -e "${D}${infodir}/dir" ]; then | ||
| 91 | rm -f ${D}${infodir}/dir | ||
| 92 | fi | ||
| 93 | |||
| 94 | # Enable CREATE_HOME by default. | ||
| 95 | sed -i 's/#CREATE_HOME/CREATE_HOME/g' ${D}${sysconfdir}/login.defs | ||
| 96 | |||
| 97 | # As we are on an embedded system, ensure the users mailbox is in | ||
| 98 | # ~/ not /var/spool/mail by default, as who knows where or how big | ||
| 99 | # /var is. The system MDA will set this later anyway. | ||
| 100 | sed -i 's/MAIL_DIR/#MAIL_DIR/g' ${D}${sysconfdir}/login.defs | ||
| 101 | sed -i 's/#MAIL_FILE/MAIL_FILE/g' ${D}${sysconfdir}/login.defs | ||
| 102 | |||
| 103 | # Disable checking emails. | ||
| 104 | sed -i 's/MAIL_CHECK_ENAB/#MAIL_CHECK_ENAB/g' ${D}${sysconfdir}/login.defs | ||
| 105 | |||
| 106 | # Comment out SU_NAME to work correctly with busybox | ||
| 107 | # See Bug#5359 and Bug#7173 | ||
| 108 | sed -i 's:^SU_NAME:#SU_NAME:g' ${D}${sysconfdir}/login.defs | ||
| 109 | |||
| 110 | # Use proper encryption for passwords | ||
| 111 | sed -i 's/^#ENCRYPT_METHOD.*$/ENCRYPT_METHOD SHA512/' ${D}${sysconfdir}/login.defs | ||
| 112 | |||
| 113 | install -d ${D}${sysconfdir}/default | ||
| 114 | install -m 0644 ${UNPACKDIR}/useradd ${D}${sysconfdir}/default | ||
| 115 | } | ||
| 116 | |||
| 117 | do_install:append() { | ||
| 118 | # Ensure that the image has as a /var/spool/mail dir so shadow can | ||
| 119 | # put mailboxes there if the user reconfigures shadow to its | ||
| 120 | # defaults (see sed below). | ||
| 121 | install -m 0775 -d ${D}${localstatedir}/spool/mail | ||
| 122 | chown root:mail ${D}${localstatedir}/spool/mail | ||
| 123 | |||
| 124 | if [ -e ${UNPACKDIR}/pam.d ]; then | ||
| 125 | install -d ${D}${sysconfdir}/pam.d/ | ||
| 126 | install -m 0644 ${UNPACKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/ | ||
| 127 | # Remove defaults that are not used when supporting PAM. | ||
| 128 | sed -i -f ${UNPACKDIR}/login_defs_pam.sed ${D}${sysconfdir}/login.defs | ||
| 129 | fi | ||
| 130 | |||
| 131 | install -d ${D}${sbindir} ${D}${base_sbindir} ${D}${base_bindir} | ||
| 132 | |||
| 133 | # Move binaries to the locations we want | ||
| 134 | rm ${D}${sbindir}/vigr | ||
| 135 | ln -sf vipw.${BPN} ${D}${base_sbindir}/vigr | ||
| 136 | if [ "${sbindir}" != "${base_sbindir}" ]; then | ||
| 137 | mv ${D}${sbindir}/vipw ${D}${base_sbindir}/vipw | ||
| 138 | fi | ||
| 139 | if [ "${bindir}" != "${base_bindir}" ]; then | ||
| 140 | mv ${D}${bindir}/login ${D}${base_bindir}/login | ||
| 141 | mv ${D}${bindir}/su ${D}${base_bindir}/su | ||
| 142 | fi | ||
| 143 | |||
| 144 | # Handle link properly after rename, otherwise missing files would | ||
| 145 | # lead rpm failed dependencies. | ||
| 146 | ln -sf newgrp.${BPN} ${D}${bindir}/sg | ||
| 147 | |||
| 148 | # usermod requires the subuid/subgid files to be in place before being | ||
| 149 | # able to use the -v/-V flags otherwise it fails: | ||
| 150 | # usermod: /etc/subuid does not exist, you cannot use the flags -v or -V | ||
| 151 | install -d ${D}${sysconfdir} | ||
| 152 | touch ${D}${sysconfdir}/subuid | ||
| 153 | touch ${D}${sysconfdir}/subgid | ||
| 154 | } | ||
| 155 | |||
| 156 | # Make executables look for dynamically linked libraries in a custom location, and install | ||
| 157 | # the needed libraries there. That way we can use them from sstate | ||
| 158 | # in setscene tasks without worrying about the dependency libraries being available. | ||
| 159 | do_install:append:class-native() { | ||
| 160 | binaries=$(find ${D}${base_bindir}/ ${D}${base_sbindir}/ ${D}${bindir}/ ${D}${sbindir}/ -executable -type f) | ||
| 161 | chrpath -k -r ${STAGING_DIR_NATIVE}/lib-shadow-deps $binaries | ||
| 162 | mkdir -p ${D}${STAGING_DIR_NATIVE}/lib-shadow-deps/ | ||
| 163 | libattr=${@bb.utils.contains('DISTRO_FEATURES', 'xattr', "${STAGING_LIBDIR_NATIVE}/libattr.so.*", '', d)} | ||
| 164 | install $libattr ${STAGING_LIBDIR_NATIVE}/libbsd.so.* ${STAGING_LIBDIR_NATIVE}/libmd.so.* ${D}${STAGING_DIR_NATIVE}/lib-shadow-deps/ | ||
| 165 | install ${D}${libdir}/*.so.* ${D}${STAGING_DIR_NATIVE}/lib-shadow-deps/ | ||
| 166 | } | ||
| 167 | |||
| 168 | SYSROOT_DIRS:append:class-native = " ${STAGING_DIR_NATIVE}/lib-shadow-deps/" | ||
| 169 | INSANE_SKIP:${PN}:class-native = "already-stripped" | ||
| 170 | |||
| 171 | do_install:append:class-nativesdk() { | ||
| 172 | oe_runmake -C ${B}/man DESTDIR="${D}" sbindir="${base_sbindir}" usbindir="${sbindir}" install-man | ||
| 173 | } | ||
| 174 | |||
| 175 | do_install:append:class-target() { | ||
| 176 | oe_runmake -C ${B}/man DESTDIR="${D}" sbindir="${base_sbindir}" usbindir="${sbindir}" install-man | ||
| 177 | } | ||
| 178 | |||
| 179 | PACKAGES =+ "${PN}-base" | ||
| 180 | FILES:${PN}-base = "\ | ||
| 181 | ${base_bindir}/login.shadow \ | ||
| 182 | ${base_bindir}/su.shadow \ | ||
| 183 | ${bindir}/sg \ | ||
| 184 | ${bindir}/newgrp.shadow \ | ||
| 185 | ${sysconfdir}/pam.d/login \ | ||
| 186 | ${sysconfdir}/pam.d/su \ | ||
| 187 | ${sysconfdir}/login.defs \ | ||
| 188 | " | ||
| 189 | RDEPENDS:${PN} += "${PN}-base" | ||
| 190 | |||
| 191 | inherit update-alternatives | ||
| 192 | |||
| 193 | ALTERNATIVE_PRIORITY = "200" | ||
| 194 | |||
| 195 | ALTERNATIVE:${PN} = "passwd chfn chsh chpasswd vipw vigr nologin" | ||
| 196 | ALTERNATIVE_LINK_NAME[chfn] = "${bindir}/chfn" | ||
| 197 | ALTERNATIVE_LINK_NAME[chsh] = "${bindir}/chsh" | ||
| 198 | ALTERNATIVE_LINK_NAME[chpasswd] = "${sbindir}/chpasswd" | ||
| 199 | ALTERNATIVE_LINK_NAME[vipw] = "${base_sbindir}/vipw" | ||
| 200 | ALTERNATIVE_LINK_NAME[vigr] = "${base_sbindir}/vigr" | ||
| 201 | ALTERNATIVE_LINK_NAME[nologin] = "${base_sbindir}/nologin" | ||
| 202 | |||
| 203 | ALTERNATIVE:${PN}-doc = "chfn.1 chsh.1 su.1 nologin.8" | ||
| 204 | ALTERNATIVE_LINK_NAME[chfn.1] = "${mandir}/man1/chfn.1" | ||
| 205 | ALTERNATIVE_LINK_NAME[chsh.1] = "${mandir}/man1/chsh.1" | ||
| 206 | ALTERNATIVE_LINK_NAME[su.1] = "${mandir}/man1/su.1" | ||
| 207 | ALTERNATIVE_LINK_NAME[nologin.8] = "${mandir}/man8/nologin.8" | ||
| 208 | |||
| 209 | ALTERNATIVE:${PN}-base = "newgrp login su" | ||
| 210 | ALTERNATIVE_LINK_NAME[login] = "${base_bindir}/login" | ||
| 211 | ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su" | ||
| 212 | |||
| 213 | PACKAGE_WRITE_DEPS += "shadow-native" | ||
| 214 | pkg_postinst:${PN}:class-target () { | ||
| 215 | if [ "x$D" != "x" ]; then | ||
| 216 | rootarg="--root $D" | ||
| 217 | else | ||
| 218 | rootarg="" | ||
| 219 | fi | ||
| 220 | |||
| 221 | pwconv $rootarg || exit 1 | ||
| 222 | grpconv $rootarg || exit 1 | ||
| 223 | } | ||
| 224 | |||
| 225 | # Build falsely assumes that if --enable-libpam is set, we don't need to link against | ||
| 226 | # libcrypt. This breaks chsh. | ||
| 227 | BUILD_LDFLAGS:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '-lcrypt', '', d)}" | ||
| 228 | |||
| 229 | BBCLASSEXTEND = "native nativesdk" | ||
| 230 | |||
| 231 | # https://bugzilla.redhat.com/show_bug.cgi?id=884658 | ||
| 232 | CVE_STATUS[CVE-2013-4235] = "upstream-wontfix: Severity is low and marked as closed and won't fix." | ||
diff --git a/meta/recipes-extended/slang/slang/array_test.patch b/meta/recipes-extended/slang/slang/array_test.patch deleted file mode 100644 index ccd416f207..0000000000 --- a/meta/recipes-extended/slang/slang/array_test.patch +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | slang: modify array test | ||
| 2 | |||
| 3 | One array test tries to create an array that is far too large and anticipates an exception. | ||
| 4 | IndexError will only be thrown for 64 bit machines, so we add InvalidParmError for 32 bit ones. | ||
| 5 | |||
| 6 | Upstream-Status: Submitted [jedsoft.org] | ||
| 7 | |||
| 8 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
| 9 | |||
| 10 | --- a/src/test/array.sl | ||
| 11 | +++ b/src/test/array.sl | ||
| 12 | @@ -165,7 +165,7 @@ try | ||
| 13 | { | ||
| 14 | SS = Long_Type[10000,10000,10000,10000,10000,10000]; | ||
| 15 | } | ||
| 16 | -catch IndexError; | ||
| 17 | +catch IndexError,InvalidParmError; | ||
| 18 | |||
| 19 | private define array_map2_func () | ||
| 20 | { | ||
diff --git a/meta/recipes-extended/slang/slang/dont-link-to-host.patch b/meta/recipes-extended/slang/slang/dont-link-to-host.patch deleted file mode 100644 index 4b02068991..0000000000 --- a/meta/recipes-extended/slang/slang/dont-link-to-host.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From b4a6e3c8309cff0f2311cd959c5091213b633851 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ross Burton <ross.burton@intel.com> | ||
| 3 | Date: Tue, 7 Feb 2017 14:35:43 +0000 | ||
| 4 | Subject: [PATCH] slang: rewrite recipe to run autoconf | ||
| 5 | |||
| 6 | SLANG_INST_LIB is the location of where slang will end up, but when building for | ||
| 7 | packaging this doesn't have DESTDIR appended so can potentially link to the host | ||
| 8 | for cross builds and will trigger QA errors. | ||
| 9 | |||
| 10 | As this is obviously wrong, delete it. | ||
| 11 | |||
| 12 | Upstream-Status: Pending | ||
| 13 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
| 14 | |||
| 15 | --- | ||
| 16 | slsh/Makefile.in | 2 +- | ||
| 17 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/slsh/Makefile.in b/slsh/Makefile.in | ||
| 20 | index addd343..63a5c9b 100644 | ||
| 21 | --- a/slsh/Makefile.in | ||
| 22 | +++ b/slsh/Makefile.in | ||
| 23 | @@ -77,7 +77,7 @@ SLSYSWRAP_LIB = @LIB_SLSYSWRAP@ | ||
| 24 | #---------------------------------------------------------------------------- | ||
| 25 | @SET_MAKE@ | ||
| 26 | SHELL = /bin/sh | ||
| 27 | -INST_LIBS = $(DEST_LIB_DIR) $(RPATH) $(SLANG_INST_LIB) -lslang $(LDFLAGS) $(READLINE_LIB) $(DYNAMIC_LIBS) | ||
| 28 | +INST_LIBS = $(DEST_LIB_DIR) $(RPATH) -lslang $(LDFLAGS) $(READLINE_LIB) $(DYNAMIC_LIBS) | ||
| 29 | DEFS = -DSLSH_CONF_DIR='"$(SLSH_CONF_DIR)"' -DSLSH_PATH='"$(SLSH_LIB_DIR)"' \ | ||
| 30 | -DSLSH_CONF_DIR_ENV='$(SLSH_CONF_DIR_ENV)' -DSLSH_LIB_DIR_ENV='$(SLSH_LIB_DIR_ENV)' \ | ||
| 31 | -DSLSH_PATH_ENV='$(SLSH_PATH_ENV)' $(SLSYSWRAP_DEF) | ||
diff --git a/meta/recipes-extended/slang/slang/no-x.patch b/meta/recipes-extended/slang/slang/no-x.patch deleted file mode 100644 index 7dc1602fe3..0000000000 --- a/meta/recipes-extended/slang/slang/no-x.patch +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | There's no need to check for the X libraries as the socket module doesn't use | ||
| 2 | anything from X. | ||
| 3 | |||
| 4 | Upstream-Status: Pending | ||
| 5 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
| 6 | |||
| 7 | diff --git a/autoconf/configure.ac b/autoconf/configure.ac | ||
| 8 | index b61e974..a3e5db2 100644 | ||
| 9 | --- a/autoconf/configure.ac | ||
| 10 | +++ b/autoconf/configure.ac | ||
| 11 | @@ -72,3 +71,0 @@ AC_SUBST(LIB_READLINE) | ||
| 12 | -# For the socket module | ||
| 13 | -AC_PATH_XTRA | ||
| 14 | - | ||
| 15 | --- a/modules/Makefile.in | ||
| 16 | +++ b/modules/Makefile.in | ||
| 17 | @@ -67 +66,0 @@ ZLIB_LIB = @Z_LIB@ -lz | ||
| 18 | -SOCKET_LIBS = @X_EXTRA_LIBS@ | ||
diff --git a/meta/recipes-extended/slang/slang/run-ptest b/meta/recipes-extended/slang/slang/run-ptest deleted file mode 100644 index 39f474af31..0000000000 --- a/meta/recipes-extended/slang/slang/run-ptest +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | make -C test runtests | ||
diff --git a/meta/recipes-extended/slang/slang/terminfo_fixes.patch b/meta/recipes-extended/slang/slang/terminfo_fixes.patch deleted file mode 100644 index 331b7f02e4..0000000000 --- a/meta/recipes-extended/slang/slang/terminfo_fixes.patch +++ /dev/null | |||
| @@ -1,168 +0,0 @@ | |||
| 1 | From 2a75095638002d37a2f9c7aeb0ec54f271b0a1c4 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joe Slater <joe.slater@windriver.com> | ||
| 3 | Date: Tue, 1 Aug 2017 12:36:53 -0700 | ||
| 4 | Subject: [PATCH] slang: fix terminfo related problems | ||
| 5 | |||
| 6 | Do not use the JD_TERMCAP macro since we cannot get the terminfo from | ||
| 7 | ncurses pkg-config, but fix the macro to not reference host directories. | ||
| 8 | Also add src/test/Makefile.in so that we can use -ltermcap if we want to. | ||
| 9 | |||
| 10 | Upstream isn't going to take this, as it forces blank values and | ||
| 11 | removes functionality without replacing it. | ||
| 12 | Upstream-Status: Inappropriate [see above] | ||
| 13 | |||
| 14 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
| 15 | |||
| 16 | --- | ||
| 17 | autoconf/aclocal.m4 | 8 +--- | ||
| 18 | autoconf/configure.ac | 11 +++++- | ||
| 19 | src/test/Makefile.in | 90 +++++++++++++++++++++++++++++++++++++++++++ | ||
| 20 | 3 files changed, 100 insertions(+), 9 deletions(-) | ||
| 21 | create mode 100644 src/test/Makefile.in | ||
| 22 | |||
| 23 | diff --git a/autoconf/aclocal.m4 b/autoconf/aclocal.m4 | ||
| 24 | index b2dfcd3..5f94ed3 100644 | ||
| 25 | --- a/autoconf/aclocal.m4 | ||
| 26 | +++ b/autoconf/aclocal.m4 | ||
| 27 | @@ -509,15 +509,9 @@ then | ||
| 28 | else | ||
| 29 | MISC_TERMINFO_DIRS="" | ||
| 30 | fi | ||
| 31 | -JD_Terminfo_Dirs="$MISC_TERMINFO_DIRS \ | ||
| 32 | - /usr/lib/terminfo \ | ||
| 33 | - /usr/share/terminfo \ | ||
| 34 | - /usr/share/lib/terminfo \ | ||
| 35 | - /usr/local/lib/terminfo \ | ||
| 36 | - /etc/terminfo /lib/terminfo" | ||
| 37 | TERMCAP=-ltermcap | ||
| 38 | |||
| 39 | -for terminfo_dir in $JD_Terminfo_Dirs | ||
| 40 | +for terminfo_dir in $MISC_TERMINFO_DIRS | ||
| 41 | do | ||
| 42 | if test -d $terminfo_dir | ||
| 43 | then | ||
| 44 | diff --git a/autoconf/configure.ac b/autoconf/configure.ac | ||
| 45 | index 8e11e13..9e6402c 100644 | ||
| 46 | --- a/autoconf/configure.ac | ||
| 47 | +++ b/autoconf/configure.ac | ||
| 48 | @@ -250,7 +250,14 @@ AC_CHECK_SIZEOF(size_t) | ||
| 49 | JD_CHECK_LONG_LONG | ||
| 50 | JD_LARGE_FILE_SUPPORT | ||
| 51 | |||
| 52 | -JD_TERMCAP | ||
| 53 | +dnl Do not use JD_TERMCAP, since we cannot get terminfo from ncurses*-config anymore. | ||
| 54 | +dnl Set TERMCAP=-ltermcap and AC_DEFINE(USE_TERMCAP,1,[Define to use termcap]) | ||
| 55 | +dnl to use libtermcap. | ||
| 56 | +TERMCAP="" | ||
| 57 | +MISC_TERMINFO_DIRS="" | ||
| 58 | +AC_SUBST(TERMCAP)dnl | ||
| 59 | +AC_SUBST(MISC_TERMINFO_DIRS)dnl | ||
| 60 | + | ||
| 61 | JD_GCC_WARNINGS | ||
| 62 | |||
| 63 | JD_SET_OBJ_SRC_DIR(src) | ||
| 64 | @@ -365,7 +372,7 @@ AC_CONFIG_HEADER(src/sysconf.h:src/config.hin) | ||
| 65 | dnl AC_CONFIG_SUBDIRS(demo) | ||
| 66 | |||
| 67 | AC_OUTPUT(Makefile:autoconf/Makefile.in \ | ||
| 68 | - src/Makefile slsh/Makefile modules/Makefile demo/Makefile \ | ||
| 69 | + src/Makefile src/test/Makefile slsh/Makefile modules/Makefile demo/Makefile \ | ||
| 70 | slang.pc:autoconf/slangpc.in \ | ||
| 71 | ) | ||
| 72 | |||
| 73 | diff --git a/src/test/Makefile.in b/src/test/Makefile.in | ||
| 74 | new file mode 100644 | ||
| 75 | index 0000000..4b7307f | ||
| 76 | --- /dev/null | ||
| 77 | +++ b/src/test/Makefile.in | ||
| 78 | @@ -0,0 +1,90 @@ | ||
| 79 | +# -*- make -*- | ||
| 80 | +TEST_SCRIPTS_SLC = argv syntax scircuit eqs sscanf loops arith array strops \ | ||
| 81 | + bstring pack stdio assoc selfload struct nspace path ifeval anytype arrmult \ | ||
| 82 | + time utf8 except bugs list regexp method deref naninf overflow sort \ | ||
| 83 | + longlong signal dollar req docfun debug qualif compare break multline \ | ||
| 84 | + stack misc posixio posdir proc math | ||
| 85 | + | ||
| 86 | +TEST_SCRIPTS_NO_SLC = autoload nspace2 prep | ||
| 87 | + | ||
| 88 | +TEST_SCRIPTS = $(TEST_SCRIPTS_SLC) $(TEST_SCRIPTS_NO_SLC) | ||
| 89 | + | ||
| 90 | +TEST_PGM = sltest | ||
| 91 | +MEMCHECK = valgrind --tool=memcheck --leak-check=yes --leak-resolution=med --num-callers=20 | ||
| 92 | +RUN_TEST_PGM = ./$(TEST_PGM) | ||
| 93 | +SLANGINC = .. | ||
| 94 | +SLANGLIB = ../$(ARCH)objs | ||
| 95 | +OTHER_LIBS = -lm @TERMCAP@ | ||
| 96 | +OTHER_CFLAGS = | ||
| 97 | + | ||
| 98 | +runtests: $(TEST_PGM) cleantmp | ||
| 99 | + @tests=""; \ | ||
| 100 | + for test in $(TEST_SCRIPTS); \ | ||
| 101 | + do \ | ||
| 102 | + tests="$$tests $$test.sl"; \ | ||
| 103 | + done; \ | ||
| 104 | + for test in $(TEST_SCRIPTS_SLC); \ | ||
| 105 | + do \ | ||
| 106 | + tests="$$tests $$test.slc"; \ | ||
| 107 | + done; \ | ||
| 108 | + MAKERUNNING=1 ./runtests.sh $$tests | ||
| 109 | +# @touch $(TEST_PGM).c | ||
| 110 | + | ||
| 111 | +update: $(TEST_PGM) cleantmp | ||
| 112 | + @tests=""; \ | ||
| 113 | + for X in $(TEST_SCRIPTS); \ | ||
| 114 | + do \ | ||
| 115 | + if [ ! -e lastrun/$$X.sl ] || [ $$X.sl -nt lastrun/$$X.sl ] ; \ | ||
| 116 | + then \ | ||
| 117 | + tests="$$tests $$X.sl"; \ | ||
| 118 | + fi \ | ||
| 119 | + done; \ | ||
| 120 | + for X in $(TEST_SCRIPTS_SLC); \ | ||
| 121 | + do \ | ||
| 122 | + if [ ! -e lastrun/$$X.slc ] || [ $$X.sl -nt lastrun/$$X.slc ] ; \ | ||
| 123 | + then \ | ||
| 124 | + tests="$$tests $$X.slc"; \ | ||
| 125 | + fi \ | ||
| 126 | + done; \ | ||
| 127 | + if test -n "$$tests"; \ | ||
| 128 | + then \ | ||
| 129 | + MAKERUNNING=1 ./runtests.sh $$tests; \ | ||
| 130 | + fi | ||
| 131 | +# @touch $(TEST_PGM).c | ||
| 132 | + | ||
| 133 | +memcheck_runtests: $(TEST_PGM) cleantmp | ||
| 134 | + @echo "" | ||
| 135 | + @echo "Running tests:" | ||
| 136 | + @echo "" | ||
| 137 | + -@for X in $(TEST_SCRIPTS); \ | ||
| 138 | + do \ | ||
| 139 | + $(MEMCHECK) --log-file=log.$${X} $(RUN_TEST_PGM) $$X.sl; \ | ||
| 140 | + grep ERROR log.$${X}; grep 'lost: [^0]' log.$${X}; \ | ||
| 141 | + $(MEMCHECK) --log-file=log.$${X}_u $(RUN_TEST_PGM) -utf8 $$X.sl; \ | ||
| 142 | + grep ERROR log.$${X}_u; grep 'lost: [^0]' log.$${X}_u; \ | ||
| 143 | + done | ||
| 144 | +# touch $(TEST_PGM).c | ||
| 145 | + | ||
| 146 | +memcheck_runtests_slc: $(TEST_PGM) cleantmp | ||
| 147 | + @echo "" | ||
| 148 | + @echo "Running tests:" | ||
| 149 | + @echo "" | ||
| 150 | + -@for X in $(TEST_SCRIPTS_SLC); \ | ||
| 151 | + do \ | ||
| 152 | + $(MEMCHECK) --log-file=log.$${X}_c $(RUN_TEST_PGM) $$X.slc; \ | ||
| 153 | + $(MEMCHECK) --log-file=log.$${X}_uc $(RUN_TEST_PGM) -utf8 $$X.slc; \ | ||
| 154 | + done | ||
| 155 | +# touch $(TEST_PGM).c | ||
| 156 | + | ||
| 157 | +memcheck: memcheck_runtests memcheck_runtests_slc | ||
| 158 | + | ||
| 159 | +$(TEST_PGM): $(TEST_PGM).c assoc.c list.c $(SLANGLIB)/libslang.a | ||
| 160 | + $(CC) $(CFLAGS) $(OTHER_CFLAGS) $(LDFLAGS) $(TEST_PGM).c -o $(TEST_PGM) -I$(SLANGINC) -L$(SLANGLIB) -lslang $(OTHER_LIBS) | ||
| 161 | +cleantmp: | ||
| 162 | + -/bin/rm -rf tmpfile*.* tmpdir*.* | ||
| 163 | +clean: cleantmp | ||
| 164 | + -/bin/rm -f *~ *.o *.log log.pid* *.slc log.* *.log-* | ||
| 165 | +distclean: clean | ||
| 166 | + /bin/rm -f $(TEST_PGM) $(TEST_PGM).gcda $(TEST_PGM).gcno | ||
| 167 | +.PHONY: clean memcheck runtests memcheck_runtests_slc memcheck_runtests cleantmp | ||
| 168 | + | ||
diff --git a/meta/recipes-extended/slang/slang/test-add-output-in-the-format-result-testname.patch b/meta/recipes-extended/slang/slang/test-add-output-in-the-format-result-testname.patch deleted file mode 100644 index 27a9bb87ea..0000000000 --- a/meta/recipes-extended/slang/slang/test-add-output-in-the-format-result-testname.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 38688ee2754415cf2a1935dafb8278861b7315e7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Stefan Strogin <sstrogin@cisco.com> | ||
| 3 | Date: Thu, 2 Mar 2017 00:26:31 +0200 | ||
| 4 | Subject: [PATCH] test: add output in the format "result: testname" | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [oe specific] | ||
| 7 | |||
| 8 | Signed-off-by: Stefan Strogin <sstrogin@cisco.com> | ||
| 9 | --- | ||
| 10 | src/test/runtests.sh | 2 ++ | ||
| 11 | 1 file changed, 2 insertions(+) | ||
| 12 | |||
| 13 | diff --git a/src/test/runtests.sh b/src/test/runtests.sh | ||
| 14 | index a3eaad0..64f0705 100755 | ||
| 15 | --- a/src/test/runtests.sh | ||
| 16 | +++ b/src/test/runtests.sh | ||
| 17 | @@ -34,8 +34,10 @@ do | ||
| 18 | then | ||
| 19 | n_failed=`expr ${n_failed} + 1` | ||
| 20 | tests_failed="$tests_failed $testfile" | ||
| 21 | + echo "FAIL: $testfile" | ||
| 22 | else | ||
| 23 | touch lastrun/$testfile | ||
| 24 | + echo "PASS: $testfile" | ||
| 25 | fi | ||
| 26 | done | ||
| 27 | |||
| 28 | -- | ||
| 29 | 2.11.0 | ||
| 30 | |||
diff --git a/meta/recipes-extended/slang/slang_2.3.3.bb b/meta/recipes-extended/slang/slang_2.3.3.bb deleted file mode 100644 index 05b8aff0f2..0000000000 --- a/meta/recipes-extended/slang/slang_2.3.3.bb +++ /dev/null | |||
| @@ -1,83 +0,0 @@ | |||
| 1 | SUMMARY = "The shared library for the S-Lang extension language" | ||
| 2 | |||
| 3 | DESCRIPTION = "S-Lang is an interpreted language and a programming library. The \ | ||
| 4 | S-Lang language was designed so that it can be easily embedded into \ | ||
| 5 | a program to provide the program with a powerful extension language. \ | ||
| 6 | The S-Lang library, provided in this package, provides the S-Lang \ | ||
| 7 | extension language. S-Lang's syntax resembles C, which makes it easy \ | ||
| 8 | to recode S-Lang procedures in C if you need to." | ||
| 9 | |||
| 10 | HOMEPAGE = "http://www.jedsoft.org/slang/" | ||
| 11 | SECTION = "libs" | ||
| 12 | DEPENDS = "ncurses virtual/libiconv" | ||
| 13 | |||
| 14 | LICENSE = "GPL-2.0-only" | ||
| 15 | LIC_FILES_CHKSUM = "file://COPYING;md5=a52a18a472d4f7e45479b06563717c02" | ||
| 16 | |||
| 17 | SRC_URI = "http://www.jedsoft.org/releases/${BPN}/${BP}.tar.bz2 \ | ||
| 18 | file://no-x.patch \ | ||
| 19 | file://dont-link-to-host.patch \ | ||
| 20 | file://test-add-output-in-the-format-result-testname.patch \ | ||
| 21 | file://terminfo_fixes.patch \ | ||
| 22 | file://array_test.patch \ | ||
| 23 | file://run-ptest \ | ||
| 24 | " | ||
| 25 | |||
| 26 | SRC_URI[sha256sum] = "f9145054ae131973c61208ea82486d5dd10e3c5cdad23b7c4a0617743c8f5a18" | ||
| 27 | |||
| 28 | UPSTREAM_CHECK_URI = "http://www.jedsoft.org/releases/slang/" | ||
| 29 | PREMIRRORS:append = " http://www.jedsoft.org/releases/slang/.* http://www.jedsoft.org/releases/slang/old/" | ||
| 30 | |||
| 31 | inherit autotools-brokensep ptest | ||
| 32 | CLEANBROKEN = "1" | ||
| 33 | |||
| 34 | EXTRA_OECONF = "--without-onig" | ||
| 35 | # There's no way to turn off rpaths and slang will -rpath to the default search | ||
| 36 | # path. Unset RPATH to stop this. | ||
| 37 | EXTRA_OEMAKE = "RPATH=''" | ||
| 38 | |||
| 39 | PACKAGECONFIG ??= "pcre" | ||
| 40 | PACKAGECONFIG[pcre] = "--with-pcre=${STAGING_DIR_HOST}${prefix},--without-pcre,pcre" | ||
| 41 | PACKAGECONFIG[png] = "--with-png=${STAGING_DIR_HOST}${prefix},--without-png,libpng" | ||
| 42 | PACKAGECONFIG[zlib] = "--with-z=${STAGING_DIR_HOST}${prefix},--without-z,zlib" | ||
| 43 | |||
| 44 | do_configure:prepend() { | ||
| 45 | cd ${S}/autoconf | ||
| 46 | # slang keeps configure.ac and rest of autoconf files in autoconf/ directory | ||
| 47 | # we have to go there to be able to run gnu-configize cause it expects configure.{in,ac} | ||
| 48 | # to be present. Resulting files land in autoconf/autoconf/ so we need to move them. | ||
| 49 | gnu-configize --force && mv autoconf/config.* . | ||
| 50 | # For the same reason we also need to run autoconf manually. | ||
| 51 | autoconf && mv configure .. | ||
| 52 | cd ${B} | ||
| 53 | } | ||
| 54 | |||
| 55 | do_compile_ptest() { | ||
| 56 | oe_runmake -C src static | ||
| 57 | oe_runmake -C src/test sltest | ||
| 58 | } | ||
| 59 | |||
| 60 | do_install_ptest() { | ||
| 61 | mkdir ${D}${PTEST_PATH}/test | ||
| 62 | for f in Makefile sltest runtests.sh *.sl *.inc; do | ||
| 63 | cp ${S}/src/test/$f ${D}${PTEST_PATH}/test/ | ||
| 64 | done | ||
| 65 | sed -e 's/\ \$(TEST_PGM)\.c\ assoc\.c\ list\.c\ \$(SLANGLIB)\/libslang\.a//' \ | ||
| 66 | -e '/\$(CC).*(TEST_PGM)/d' \ | ||
| 67 | -i ${D}${PTEST_PATH}/test/Makefile | ||
| 68 | |||
| 69 | cp ${S}/slsh/lib/require.sl ${D}${PTEST_PATH}/test/ | ||
| 70 | sed -i 's/\.\.\/\.\.\/slsh\/lib\/require\.sl/require\.sl/' ${D}${PTEST_PATH}/test/req.sl | ||
| 71 | |||
| 72 | cp ${S}/doc/text/slangfun.txt ${D}${PTEST_PATH}/test/ | ||
| 73 | sed -i 's/\.\.\/\.\.\/doc\/text\/slangfun\.txt/slangfun\.txt/' ${D}${PTEST_PATH}/test/docfun.sl | ||
| 74 | } | ||
| 75 | |||
| 76 | FILES:${PN} += "${libdir}/${BPN}/v2/modules/ ${datadir}/slsh/" | ||
| 77 | |||
| 78 | RDEPENDS:${PN}-ptest += "make" | ||
| 79 | |||
| 80 | PARALLEL_MAKE = "" | ||
| 81 | PARALLEL_MAKEINST = "" | ||
| 82 | |||
| 83 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.19.04.bb b/meta/recipes-extended/stress-ng/stress-ng_0.19.04.bb deleted file mode 100644 index 88d3ee3f4a..0000000000 --- a/meta/recipes-extended/stress-ng/stress-ng_0.19.04.bb +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | SUMMARY = "System load testing utility" | ||
| 2 | DESCRIPTION = "Deliberately simple workload generator for POSIX systems. It \ | ||
| 3 | imposes a configurable amount of CPU, memory, I/O, and disk stress on the system." | ||
| 4 | HOMEPAGE = "https://github.com/ColinIanKing/stress-ng#readme" | ||
| 5 | LICENSE = "GPL-2.0-only" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
| 7 | |||
| 8 | SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master;tag=V${PV}" | ||
| 9 | SRCREV = "6e977ddae4b66bc0e5c3f993e3b5ff0bc06915fd" | ||
| 10 | |||
| 11 | DEPENDS = "coreutils-native libbsd" | ||
| 12 | |||
| 13 | PROVIDES = "stress" | ||
| 14 | RPROVIDES:${PN} = "stress" | ||
| 15 | RREPLACES:${PN} = "stress" | ||
| 16 | RCONFLICTS:${PN} = "stress" | ||
| 17 | |||
| 18 | inherit bash-completion | ||
| 19 | |||
| 20 | EXTRA_OEMAKE = "VERBOSE=1" | ||
| 21 | |||
| 22 | do_configure() { | ||
| 23 | mkdir -p configs | ||
| 24 | touch configs/HAVE_APPARMOR | ||
| 25 | oe_runmake makeconfig | ||
| 26 | } | ||
| 27 | |||
| 28 | do_install() { | ||
| 29 | oe_runmake DESTDIR=${D} BINDIR=${bindir} install | ||
| 30 | ln -s stress-ng ${D}${bindir}/stress | ||
| 31 | } | ||
diff --git a/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch b/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch deleted file mode 100644 index 1989c5abd7..0000000000 --- a/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | From 8c69192754ba73dd6e3273728a21aa73988f4bfb Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Kai Kang <kai.kang@windriver.com> | ||
| 3 | Date: Tue, 17 Nov 2020 11:13:40 +0800 | ||
| 4 | Subject: [PATCH] sudo.conf.in: fix conflict with multilib | ||
| 5 | |||
| 6 | When pass ${libdir} to --libexecdir of sudo, it fails to install sudo | ||
| 7 | and lib32-sudo at same time: | ||
| 8 | |||
| 9 | | Error: Transaction test error: | ||
| 10 | | file /etc/sudo.conf conflicts between attempted installs of | ||
| 11 | sudo-1.9.3p1-r0.core2_64 and lib32-sudo-1.9.3p1-r0.core2_32 | ||
| 12 | |||
| 13 | Update the comments in sudo.conf.in to avoid the conflict. | ||
| 14 | |||
| 15 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
| 16 | |||
| 17 | Upstream-Status: Inappropriate [OE configuration specific] | ||
| 18 | --- | ||
| 19 | examples/sudo.conf.in | 8 ++++---- | ||
| 20 | 1 file changed, 4 insertions(+), 4 deletions(-) | ||
| 21 | |||
| 22 | diff --git a/examples/sudo.conf.in b/examples/sudo.conf.in | ||
| 23 | index bdd676c..094341c 100644 | ||
| 24 | --- a/examples/sudo.conf.in | ||
| 25 | +++ b/examples/sudo.conf.in | ||
| 26 | @@ -4,7 +4,7 @@ | ||
| 27 | # Sudo plugins: | ||
| 28 | # Plugin plugin_name plugin_path plugin_options ... | ||
| 29 | # | ||
| 30 | -# The plugin_path is relative to @plugindir@ unless | ||
| 31 | +# The plugin_path is relative to $plugindir such as /usr/lib/sudo unless | ||
| 32 | # fully qualified. | ||
| 33 | # The plugin_name corresponds to a global symbol in the plugin | ||
| 34 | # that contains the plugin interface structure. | ||
| 35 | @@ -51,7 +51,7 @@ | ||
| 36 | # The compiled-in value is usually sufficient and should only be changed | ||
| 37 | # if you rename or move the sudo_intercept.so file. | ||
| 38 | # | ||
| 39 | -#Path intercept @intercept_file@ | ||
| 40 | +#Path intercept $intercept_file | ||
| 41 | |||
| 42 | # | ||
| 43 | # Sudo noexec: | ||
| 44 | @@ -65,7 +65,7 @@ | ||
| 45 | # The compiled-in value is usually sufficient and should only be changed | ||
| 46 | # if you rename or move the sudo_noexec.so file. | ||
| 47 | # | ||
| 48 | -#Path noexec @noexec_file@ | ||
| 49 | +#Path noexec $noexec_file | ||
| 50 | |||
| 51 | # | ||
| 52 | # Sudo plugin directory: | ||
| 53 | @@ -74,7 +74,7 @@ | ||
| 54 | # The default directory to use when searching for plugins that are | ||
| 55 | # specified without a fully-qualified path name. | ||
| 56 | # | ||
| 57 | -#Path plugin_dir @plugindir@ | ||
| 58 | +#Path plugin_dir $plugindir | ||
| 59 | |||
| 60 | # | ||
| 61 | # Core dumps: | ||
diff --git a/meta/recipes-extended/sudo/files/sudo.pam b/meta/recipes-extended/sudo/files/sudo.pam deleted file mode 100644 index 515eab0c6c..0000000000 --- a/meta/recipes-extended/sudo/files/sudo.pam +++ /dev/null | |||
| @@ -1,6 +0,0 @@ | |||
| 1 | #%PAM-1.0 | ||
| 2 | auth include common-auth | ||
| 3 | account include common-account | ||
| 4 | password include common-password | ||
| 5 | session optional pam_keyinit.so revoke | ||
| 6 | session required pam_limits.so | ||
diff --git a/meta/recipes-extended/sudo/sudo.inc b/meta/recipes-extended/sudo/sudo.inc deleted file mode 100644 index a23de1fcf7..0000000000 --- a/meta/recipes-extended/sudo/sudo.inc +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | SUMMARY = "Provide limited super user privileges to specific users" | ||
| 2 | DESCRIPTION = "Sudo (superuser do) allows a system administrator to give certain users (or groups of users) the ability to run some (or all) commands as root while logging all commands and arguments." | ||
| 3 | HOMEPAGE = "http://www.sudo.ws" | ||
| 4 | BUGTRACKER = "http://www.sudo.ws/bugs/" | ||
| 5 | SECTION = "admin" | ||
| 6 | LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & Zlib" | ||
| 7 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2841c822e587db145364ca95e9be2ffa \ | ||
| 8 | file://plugins/sudoers/redblack.c;beginline=1;endline=46;md5=03e35317699ba00b496251e0dfe9f109 \ | ||
| 9 | file://lib/util/reallocarray.c;beginline=3;endline=15;md5=397dd45c7683e90b9f8bf24638cf03bf \ | ||
| 10 | file://lib/util/fnmatch.c;beginline=3;endline=27;md5=004d7d2866ba1f5b41174906849d2e0f \ | ||
| 11 | file://lib/util/glob.c;beginline=2;endline=31;md5=2852f68687544e3eb8a0a61665506f0e \ | ||
| 12 | file://lib/util/snprintf.c;beginline=3;endline=33;md5=b70df6179969e38fcf68da91b53b8029 \ | ||
| 13 | file://include/sudo_queue.h;beginline=2;endline=27;md5=ad578e9664d17a010b63e4bc0576ee8d \ | ||
| 14 | file://lib/util/inet_pton.c;beginline=3;endline=17;md5=27785c9f5835093eda42aa0816a2d0b4 \ | ||
| 15 | file://lib/util/arc4random.c;beginline=3;endline=20;md5=ced8636ecefa2ba907cfe390bc3bd964 \ | ||
| 16 | file://lib/util/arc4random_uniform.c;beginline=3;endline=17;md5=e30c2b777cdc00cfcaf7c445a10b262f \ | ||
| 17 | file://lib/util/getentropy.c;beginline=1;endline=19;md5=a0f58be3d60b6dcd898ec5fe0866d36f \ | ||
| 18 | " | ||
| 19 | |||
| 20 | inherit autotools | ||
| 21 | |||
| 22 | PACKAGECONFIG ??= "" | ||
| 23 | PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib" | ||
| 24 | PACKAGECONFIG[pam-wheel] = ",,,pam-plugin-wheel" | ||
| 25 | PACKAGECONFIG[audit] = "--with-linux-audit,--without-linux-audit,audit" | ||
| 26 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
| 27 | |||
| 28 | EXTRA_OECONF = "--with-editor=${base_bindir}/vi --with-env-editor" | ||
| 29 | |||
| 30 | EXTRA_OECONF:append:libc-musl = " --disable-hardening " | ||
| 31 | |||
| 32 | do_compile:prepend () { | ||
| 33 | # Remove build host references from config.h | ||
| 34 | sed -i \ | ||
| 35 | -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \ | ||
| 36 | -e 's,--build=${BUILD_SYS},,g' \ | ||
| 37 | -e 's,--host=${HOST_SYS},,g' \ | ||
| 38 | ${B}/config.h | ||
| 39 | } | ||
| 40 | |||
| 41 | # Explicitly create ${localstatedir}/lib before do_install to ensure | ||
| 42 | # the directory is accessible by all users. Otherwise the mkinstalldirs | ||
| 43 | # script (from sudo) will recursively create ${localstatedir}/lib/sudo | ||
| 44 | # and then chmod each directory with 0700 permissions, which isn't what | ||
| 45 | # we want (i.e, users would not be able to access /var/lib). | ||
| 46 | do_install:prepend (){ | ||
| 47 | mkdir -p ${D}/${localstatedir}/lib | ||
| 48 | } | ||
| 49 | |||
| 50 | CVE_VERSION_SUFFIX = "patch" | ||
diff --git a/meta/recipes-extended/sudo/sudo_1.9.17p2.bb b/meta/recipes-extended/sudo/sudo_1.9.17p2.bb deleted file mode 100644 index 3a5c111961..0000000000 --- a/meta/recipes-extended/sudo/sudo_1.9.17p2.bb +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | require sudo.inc | ||
| 2 | |||
| 3 | SRC_URI = "https://www.sudo.ws/dist/sudo-${PV}.tar.gz \ | ||
| 4 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ | ||
| 5 | file://0001-sudo.conf.in-fix-conflict-with-multilib.patch \ | ||
| 6 | " | ||
| 7 | |||
| 8 | PAM_SRC_URI = "file://sudo.pam" | ||
| 9 | |||
| 10 | SRC_URI[sha256sum] = "4a38a1ab3adb1199257edc2a7c4a2bd714665eb605b04368843b06dada2cfcfb" | ||
| 11 | |||
| 12 | DEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" | ||
| 13 | RDEPENDS:${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}" | ||
| 14 | |||
| 15 | CACHED_CONFIGUREVARS = " \ | ||
| 16 | ac_cv_type_rsize_t=no \ | ||
| 17 | ac_cv_path_MVPROG=${base_bindir}/mv \ | ||
| 18 | ac_cv_path_BSHELLPROG=${base_bindir}/sh \ | ||
| 19 | ac_cv_path_SENDMAILPROG=${sbindir}/sendmail \ | ||
| 20 | ac_cv_path_VIPROG=${base_bindir}/vi \ | ||
| 21 | " | ||
| 22 | |||
| 23 | EXTRA_OECONF += " \ | ||
| 24 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--with-pam', '--without-pam', d)} \ | ||
| 25 | ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--enable-tmpfiles.d=${nonarch_libdir}/tmpfiles.d', '--disable-tmpfiles.d', d)} \ | ||
| 26 | --with-rundir=/run/sudo \ | ||
| 27 | --with-vardir=/var/lib/sudo \ | ||
| 28 | --libexecdir=${libdir} \ | ||
| 29 | " | ||
| 30 | |||
| 31 | do_install:append () { | ||
| 32 | if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then | ||
| 33 | install -D -m 644 ${UNPACKDIR}/sudo.pam ${D}/${sysconfdir}/pam.d/sudo | ||
| 34 | if ${@bb.utils.contains('PACKAGECONFIG', 'pam-wheel', 'true', 'false', d)} ; then | ||
| 35 | echo 'auth required pam_wheel.so use_uid' >>${D}${sysconfdir}/pam.d/sudo | ||
| 36 | sed -i 's/# \(%wheel ALL=(ALL) ALL\)/\1/' ${D}${sysconfdir}/sudoers | ||
| 37 | fi | ||
| 38 | fi | ||
| 39 | |||
| 40 | chmod 4111 ${D}${bindir}/sudo | ||
| 41 | chmod 0440 ${D}${sysconfdir}/sudoers | ||
| 42 | |||
| 43 | # Explicitly remove the /sudo directory to avoid QA error | ||
| 44 | rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo | ||
| 45 | } | ||
| 46 | |||
| 47 | FILES:${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \ | ||
| 48 | ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la" | ||
| 49 | |||
| 50 | CONFFILES:${PN}-lib = "${sysconfdir}/sudoers" | ||
| 51 | |||
| 52 | SUDO_PACKAGES = "${PN}-sudo\ | ||
| 53 | ${PN}-lib" | ||
| 54 | |||
| 55 | PACKAGE_BEFORE_PN = "${SUDO_PACKAGES}" | ||
| 56 | |||
| 57 | RDEPENDS:${PN}-sudo = "${PN}-lib" | ||
| 58 | RDEPENDS:${PN} += "${SUDO_PACKAGES}" | ||
| 59 | |||
| 60 | FILES:${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit" | ||
| 61 | FILES:${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} ${nonarch_libdir}" | ||
diff --git a/meta/recipes-extended/sysklogd/sysklogd/sysklogd b/meta/recipes-extended/sysklogd/sysklogd/sysklogd deleted file mode 100755 index 050772b59d..0000000000 --- a/meta/recipes-extended/sysklogd/sysklogd/sysklogd +++ /dev/null | |||
| @@ -1,154 +0,0 @@ | |||
| 1 | #! /bin/sh | ||
| 2 | # /etc/init.d/sysklogd: start the system log daemon. | ||
| 3 | |||
| 4 | ### BEGIN INIT INFO | ||
| 5 | # Provides: sysklogd | ||
| 6 | # Required-Start: $remote_fs $time | ||
| 7 | # Required-Stop: $remote_fs $time | ||
| 8 | # Should-Start: $network | ||
| 9 | # Should-Stop: $network | ||
| 10 | # Default-Start: 2 3 4 5 | ||
| 11 | # Default-Stop: 0 1 6 | ||
| 12 | # Short-Description: System logger | ||
| 13 | ### END INIT INFO | ||
| 14 | |||
| 15 | # Source function library. | ||
| 16 | . /etc/init.d/functions | ||
| 17 | |||
| 18 | PATH=/bin:/usr/bin:/sbin:/usr/sbin | ||
| 19 | |||
| 20 | pidfile_syslogd=/var/run/syslogd.pid | ||
| 21 | binpath_syslogd=/usr/sbin/syslogd | ||
| 22 | |||
| 23 | test -x $binpath || exit 0 | ||
| 24 | |||
| 25 | # run secure by default | ||
| 26 | SYSLOGD="-ss" | ||
| 27 | |||
| 28 | test ! -r /etc/default/syslogd || . /etc/default/syslogd | ||
| 29 | |||
| 30 | create_xconsole() | ||
| 31 | { | ||
| 32 | # Only proceed if /dev/xconsole is used at all | ||
| 33 | if ! grep -q '^[^#].*/dev/xconsole' /etc/syslog.conf | ||
| 34 | then | ||
| 35 | return | ||
| 36 | fi | ||
| 37 | |||
| 38 | if [ ! -e /dev/xconsole ]; then | ||
| 39 | mknod -m 640 /dev/xconsole p | ||
| 40 | else | ||
| 41 | chmod 0640 /dev/xconsole | ||
| 42 | fi | ||
| 43 | chown root:adm /dev/xconsole | ||
| 44 | test ! -x /sbin/restorecon || /sbin/restorecon /dev/xconsole | ||
| 45 | } | ||
| 46 | |||
| 47 | log_begin_msg () { | ||
| 48 | echo -n $1 | ||
| 49 | } | ||
| 50 | |||
| 51 | log_end_msg () { | ||
| 52 | echo $1 | ||
| 53 | } | ||
| 54 | |||
| 55 | log_success_msg () { | ||
| 56 | echo $1 | ||
| 57 | } | ||
| 58 | |||
| 59 | running() | ||
| 60 | { | ||
| 61 | # No pidfile, probably no daemon present | ||
| 62 | # | ||
| 63 | if [ ! -f $pidfile ] | ||
| 64 | then | ||
| 65 | return 1 | ||
| 66 | fi | ||
| 67 | |||
| 68 | pid=`cat $pidfile_syslogd` | ||
| 69 | |||
| 70 | # No pid, probably no daemon present | ||
| 71 | # | ||
| 72 | if [ -z "$pid" ] | ||
| 73 | then | ||
| 74 | return 1 | ||
| 75 | fi | ||
| 76 | |||
| 77 | if [ ! -d /proc/$pid ] | ||
| 78 | then | ||
| 79 | return 1 | ||
| 80 | fi | ||
| 81 | |||
| 82 | cmd=`cat /proc/$pid/cmdline | tr "\000" "\n"|head -n 1` | ||
| 83 | |||
| 84 | # No syslogd? | ||
| 85 | # | ||
| 86 | if [ "$cmd" != "$binpath" ] | ||
| 87 | then | ||
| 88 | return 1 | ||
| 89 | fi | ||
| 90 | |||
| 91 | return 0 | ||
| 92 | } | ||
| 93 | |||
| 94 | waitpid () | ||
| 95 | { | ||
| 96 | pid=$1 | ||
| 97 | # Give pid a chance to exit before we restart with a 5s timeout in 1s intervals | ||
| 98 | if [ -z "$pid" ]; then | ||
| 99 | return | ||
| 100 | fi | ||
| 101 | timeout=5; | ||
| 102 | while [ $timeout -gt 0 ] | ||
| 103 | do | ||
| 104 | timeout=$(( $timeout-1 )) | ||
| 105 | kill -0 $pid 2> /dev/null || break | ||
| 106 | sleep 1 | ||
| 107 | done | ||
| 108 | } | ||
| 109 | |||
| 110 | case "$1" in | ||
| 111 | start) | ||
| 112 | log_begin_msg "Starting system log daemon..." | ||
| 113 | create_xconsole | ||
| 114 | start-stop-daemon --start --quiet --pidfile $pidfile_syslogd --name syslogd --startas $binpath_syslogd -- $SYSLOGD | ||
| 115 | log_end_msg $? | ||
| 116 | ;; | ||
| 117 | stop) | ||
| 118 | log_begin_msg "Stopping system log daemon..." | ||
| 119 | start-stop-daemon --stop --quiet --pidfile $pidfile_syslogd --name syslogd | ||
| 120 | log_end_msg $? | ||
| 121 | ;; | ||
| 122 | reload|force-reload) | ||
| 123 | log_begin_msg "Reloading system log daemon..." | ||
| 124 | start-stop-daemon --stop --quiet --signal 1 --pidfile $pidfile_syslogd --name syslogd | ||
| 125 | log_end_msg $? | ||
| 126 | ;; | ||
| 127 | restart) | ||
| 128 | log_begin_msg "Restarting system log daemon..." | ||
| 129 | pid=`cat $pidfile_syslogd 2> /dev/null` | ||
| 130 | start-stop-daemon --stop --retry 5 --quiet --pidfile $pidfile_syslogd --name syslogd | ||
| 131 | waitpid $pid | ||
| 132 | start-stop-daemon --start --quiet --pidfile $pidfile_syslogd --name syslogd --startas $binpath_syslogd -- $SYSLOGD | ||
| 133 | log_end_msg $? | ||
| 134 | ;; | ||
| 135 | reload-or-restart) | ||
| 136 | if running | ||
| 137 | then | ||
| 138 | $0 reload | ||
| 139 | else | ||
| 140 | $0 start | ||
| 141 | fi | ||
| 142 | ;; | ||
| 143 | status) | ||
| 144 | status syslogd | ||
| 145 | RETVAL=$? | ||
| 146 | [ $RETVAL -eq 0 ] && exit $rval | ||
| 147 | exit $RETVAL | ||
| 148 | ;; | ||
| 149 | *) | ||
| 150 | log_success_msg "Usage: /etc/init.d/sysklogd {start|stop|reload|restart|force-reload|reload-or-restart|status}" | ||
| 151 | exit 1 | ||
| 152 | esac | ||
| 153 | |||
| 154 | exit 0 | ||
diff --git a/meta/recipes-extended/sysklogd/sysklogd_2.7.2.bb b/meta/recipes-extended/sysklogd/sysklogd_2.7.2.bb deleted file mode 100644 index c436153d1b..0000000000 --- a/meta/recipes-extended/sysklogd/sysklogd_2.7.2.bb +++ /dev/null | |||
| @@ -1,54 +0,0 @@ | |||
| 1 | SUMMARY = "System Log Daemons" | ||
| 2 | DESCRIPTION = "The sysklogd package implements system log daemons: syslogd" | ||
| 3 | HOMEPAGE = "http://www.infodrom.org/projects/sysklogd/" | ||
| 4 | SECTION = "base" | ||
| 5 | |||
| 6 | LICENSE = "BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://LICENSE;md5=5b4be4b2549338526758ef479c040943 \ | ||
| 8 | file://src/syslogd.c;beginline=2;endline=15;md5=a880fecbc04503f071c494a9c0dd4f97 \ | ||
| 9 | " | ||
| 10 | |||
| 11 | inherit update-rc.d update-alternatives systemd autotools | ||
| 12 | |||
| 13 | SRC_URI = "git://github.com/troglobit/sysklogd.git;branch=master;protocol=https;tag=v${PV} \ | ||
| 14 | file://sysklogd \ | ||
| 15 | " | ||
| 16 | |||
| 17 | SRCREV = "5fb314cb9060afa3bd4eed2f0be3200f02f729e9" | ||
| 18 | |||
| 19 | EXTRA_OECONF = "--with-systemd=${systemd_system_unitdir} --without-logger" | ||
| 20 | |||
| 21 | do_install:append () { | ||
| 22 | install -d ${D}${sysconfdir} | ||
| 23 | install -m 644 ${S}/syslog.conf ${D}${sysconfdir}/syslog.conf | ||
| 24 | install -d ${D}${sysconfdir}/init.d | ||
| 25 | install -m 755 ${UNPACKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog | ||
| 26 | } | ||
| 27 | |||
| 28 | SYSTEMD_PACKAGES = "${PN}" | ||
| 29 | SYSTEMD_SERVICE:${PN} = "syslogd.service" | ||
| 30 | SYSTEMD_AUTO_ENABLE = "enable" | ||
| 31 | |||
| 32 | INITSCRIPT_NAME = "syslog" | ||
| 33 | CONFFILES:${PN} = "${sysconfdir}/syslog.conf" | ||
| 34 | RCONFLICTS:${PN} = "rsyslog busybox-syslog syslog-ng" | ||
| 35 | |||
| 36 | FILES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','${exec_prefix}/lib/tmpfiles.d/sysklogd.conf', '', d)}" | ||
| 37 | |||
| 38 | ALTERNATIVE_PRIORITY = "100" | ||
| 39 | |||
| 40 | ALTERNATIVE:${PN}-doc = "syslogd.8" | ||
| 41 | ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8" | ||
| 42 | |||
| 43 | pkg_prerm:${PN} () { | ||
| 44 | if test "x$D" = "x"; then | ||
| 45 | if test "$1" = "upgrade" -o "$1" = "remove"; then | ||
| 46 | /etc/init.d/syslog stop || : | ||
| 47 | fi | ||
| 48 | fi | ||
| 49 | } | ||
| 50 | |||
| 51 | python () { | ||
| 52 | if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): | ||
| 53 | d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") | ||
| 54 | } | ||
diff --git a/meta/recipes-extended/sysstat/sysstat/0001-configure.in-remove-check-for-chkconfig.patch b/meta/recipes-extended/sysstat/sysstat/0001-configure.in-remove-check-for-chkconfig.patch deleted file mode 100644 index 84383f955f..0000000000 --- a/meta/recipes-extended/sysstat/sysstat/0001-configure.in-remove-check-for-chkconfig.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From 1590cc614aaf0fb81cd804414d6c9d5a9227352c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Wenlin Kang <wenlin.kang@windriver.com> | ||
| 3 | Date: Tue, 5 Nov 2019 16:16:44 +0800 | ||
| 4 | Subject: [PATCH] configure.ac: remove check for chkconfig | ||
| 5 | |||
| 6 | chkconfig can't work on cross-platform, so should remove check for it. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [ embedded specific ] | ||
| 9 | |||
| 10 | Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com> | ||
| 11 | --- | ||
| 12 | configure.ac | 3 ++- | ||
| 13 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/configure.ac b/configure.ac | ||
| 16 | index 48b9a31..cedeb43 100644 | ||
| 17 | --- a/configure.ac | ||
| 18 | +++ b/configure.ac | ||
| 19 | @@ -42,7 +42,8 @@ AC_SUBST(VER_JSON) | ||
| 20 | AC_SUBST(VER_XML) | ||
| 21 | |||
| 22 | AC_PATH_PROG(PATH_CP, cp) | ||
| 23 | -AC_PATH_PROG(PATH_CHKCONFIG, chkconfig) | ||
| 24 | +#AC_PATH_PROG(PATH_CHKCONFIG, chkconfig) | ||
| 25 | +AC_SUBST(PATH_CHKCONFIG) | ||
| 26 | |||
| 27 | # Check for systemd | ||
| 28 | AC_CHECK_PROG(PKG_CONFIG, pkg-config, pkg-config) | ||
| 29 | -- | ||
| 30 | 1.9.1 | ||
| 31 | |||
diff --git a/meta/recipes-extended/sysstat/sysstat/99_sysstat b/meta/recipes-extended/sysstat/sysstat/99_sysstat deleted file mode 100644 index 0b0ec30de0..0000000000 --- a/meta/recipes-extended/sysstat/sysstat/99_sysstat +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | d root root 0755 /var/log/sa none | ||
diff --git a/meta/recipes-extended/sysstat/sysstat/sysstat.service b/meta/recipes-extended/sysstat/sysstat/sysstat.service deleted file mode 100644 index ca46befb99..0000000000 --- a/meta/recipes-extended/sysstat/sysstat/sysstat.service +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=Resets System Activity Logs | ||
| 3 | |||
| 4 | [Service] | ||
| 5 | Type=oneshot | ||
| 6 | RemainAfterExit=yes | ||
| 7 | User=root | ||
| 8 | ExecStart=@LIBEXECDIR@/sa/sa1 --boot | ||
| 9 | |||
| 10 | [Install] | ||
| 11 | WantedBy=multi-user.target | ||
| 12 | |||
diff --git a/meta/recipes-extended/sysstat/sysstat_12.7.8.bb b/meta/recipes-extended/sysstat/sysstat_12.7.8.bb deleted file mode 100644 index 2194dfc956..0000000000 --- a/meta/recipes-extended/sysstat/sysstat_12.7.8.bb +++ /dev/null | |||
| @@ -1,79 +0,0 @@ | |||
| 1 | SUMMARY = "System performance tools" | ||
| 2 | DESCRIPTION = "The sysstat utilities are a collection of performance monitoring tools for Linux." | ||
| 3 | HOMEPAGE = "https://sysstat.github.io/" | ||
| 4 | LICENSE = "GPL-2.0-or-later" | ||
| 5 | SECTION = "console/utils" | ||
| 6 | |||
| 7 | SRC_URI = "git://github.com/sysstat/sysstat.git;protocol=https;branch=master;tag=v${PV} \ | ||
| 8 | file://99_sysstat \ | ||
| 9 | file://sysstat.service \ | ||
| 10 | file://0001-configure.in-remove-check-for-chkconfig.patch \ | ||
| 11 | " | ||
| 12 | |||
| 13 | LIC_FILES_CHKSUM = "file://COPYING;md5=a23a74b3f4caf9616230789d94217acb" | ||
| 14 | |||
| 15 | SRCREV = "5841596edf7f5e53288cb56400e0c0c1da5f2415" | ||
| 16 | |||
| 17 | DEPENDS += "base-passwd" | ||
| 18 | |||
| 19 | # autotools-brokensep as this package doesn't use automake | ||
| 20 | inherit autotools-brokensep gettext systemd | ||
| 21 | |||
| 22 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" | ||
| 23 | PACKAGECONFIG[lm-sensors] = "--enable-sensors,--disable-sensors,lmsensors,lmsensors-libsensors" | ||
| 24 | PACKAGECONFIG[cron] = "--enable-install-cron --enable-copy-only,--disable-install-cron --disable-copy-only" | ||
| 25 | PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_system_unitdir}" | ||
| 26 | |||
| 27 | EXTRA_OECONF += "--disable-stripping" | ||
| 28 | |||
| 29 | SYSTEMD_PACKAGES = "${PN}" | ||
| 30 | SYSTEMD_SERVICE:${PN} = "sysstat.service" | ||
| 31 | SYSTEMD_AUTO_ENABLE = "enable" | ||
| 32 | |||
| 33 | do_configure:prepend() { | ||
| 34 | export sa_lib_dir=${libexecdir}/sa | ||
| 35 | } | ||
| 36 | |||
| 37 | do_install() { | ||
| 38 | autotools_do_install | ||
| 39 | |||
| 40 | # Don't version the documentation | ||
| 41 | mv ${D}${docdir}/${BP} ${D}${docdir}/${BPN} | ||
| 42 | |||
| 43 | # don't install /var/log/sa when populating rootfs. Do it through volatile | ||
| 44 | rm -rf ${D}/var | ||
| 45 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
| 46 | install -d ${D}/etc/default/volatiles | ||
| 47 | install -m 0644 ${UNPACKDIR}/99_sysstat ${D}/etc/default/volatiles | ||
| 48 | fi | ||
| 49 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
| 50 | install -d ${D}${nonarch_libdir}/tmpfiles.d | ||
| 51 | echo "d ${localstatedir}/log/sa - - - -" \ | ||
| 52 | > ${D}${nonarch_libdir}/tmpfiles.d/sysstat.conf | ||
| 53 | |||
| 54 | # Unless both cron and systemd are enabled, install our own | ||
| 55 | # systemd unit file. Otherwise the package will install one. | ||
| 56 | if ${@bb.utils.contains('PACKAGECONFIG', 'cron systemd', 'false', 'true', d)}; then | ||
| 57 | install -d ${D}${systemd_system_unitdir} | ||
| 58 | install -m 0644 ${UNPACKDIR}/sysstat.service ${D}${systemd_system_unitdir} | ||
| 59 | sed -i -e 's#@LIBEXECDIR@#${libexecdir}#g' ${D}${systemd_system_unitdir}/sysstat.service | ||
| 60 | fi | ||
| 61 | fi | ||
| 62 | } | ||
| 63 | |||
| 64 | pkg_postinst:${PN} () { | ||
| 65 | if [ ! -n "$D" ]; then | ||
| 66 | if [ -e /etc/init.d/populate-volatile.sh ]; then | ||
| 67 | /etc/init.d/populate-volatile.sh update | ||
| 68 | fi | ||
| 69 | fi | ||
| 70 | } | ||
| 71 | |||
| 72 | FILES:${PN} += " \ | ||
| 73 | ${systemd_system_unitdir} \ | ||
| 74 | ${nonarch_base_libdir}/systemd \ | ||
| 75 | ${nonarch_libdir}/tmpfiles.d \ | ||
| 76 | " | ||
| 77 | |||
| 78 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
| 79 | |||
diff --git a/meta/recipes-extended/tar/tar/0001-tests-fix-TESTSUITE_AT.patch b/meta/recipes-extended/tar/tar/0001-tests-fix-TESTSUITE_AT.patch deleted file mode 100644 index 27d4d9aebf..0000000000 --- a/meta/recipes-extended/tar/tar/0001-tests-fix-TESTSUITE_AT.patch +++ /dev/null | |||
| @@ -1,228 +0,0 @@ | |||
| 1 | From 39849e9d91f477d3fb839f93cd0815d0cb3273e9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Paul Eggert <eggert@cs.ucla.edu> | ||
| 3 | Date: Tue, 18 Jul 2023 09:15:03 -0700 | ||
| 4 | Subject: tests: fix TESTSUITE_AT | ||
| 5 | |||
| 6 | Problem reported by Lukas Javorsky <ljavorsk@redhat.com> in: | ||
| 7 | https://lists.gnu.org/r/bug-tar/2023-07/msg00002.html | ||
| 8 | * tests/Makefile.am (TESTSUITE_AT): Add exclude17.at, exclude18.at. | ||
| 9 | Remove compress.m4; all uses changed. Add a comment saying how | ||
| 10 | to rederive this. Sort. | ||
| 11 | |||
| 12 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/tar.git/commit/?id=39849e9d91f477d3fb839f93cd0815d0cb3273e9] | ||
| 13 | --- | ||
| 14 | tests/Makefile.am | 93 ++++++++++++++++++++++++++++--------------------------- | ||
| 15 | 1 file changed, 48 insertions(+), 45 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/tests/Makefile.am b/tests/Makefile.am | ||
| 18 | index 4a8f501..1884b72 100644 | ||
| 19 | --- a/tests/Makefile.am | ||
| 20 | +++ b/tests/Makefile.am | ||
| 21 | @@ -45,21 +45,24 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac | ||
| 22 | ## Test suite. ## | ||
| 23 | ## ------------ ## | ||
| 24 | |||
| 25 | +# You can generate the body of this macro with the following shell command: | ||
| 26 | +# LC_ALL=C ls *.at */*.at | sed -e 's/^/ /' -e '$!s/$/\\/' | ||
| 27 | TESTSUITE_AT = \ | ||
| 28 | - testsuite.at\ | ||
| 29 | - compress.m4\ | ||
| 30 | T-cd.at\ | ||
| 31 | T-dir00.at\ | ||
| 32 | T-dir01.at\ | ||
| 33 | T-empty.at\ | ||
| 34 | + T-mult.at\ | ||
| 35 | + T-nest.at\ | ||
| 36 | + T-nonl.at\ | ||
| 37 | T-null.at\ | ||
| 38 | T-null2.at\ | ||
| 39 | T-rec.at\ | ||
| 40 | T-recurse.at\ | ||
| 41 | T-zfile.at\ | ||
| 42 | - T-nonl.at\ | ||
| 43 | - T-mult.at\ | ||
| 44 | - T-nest.at\ | ||
| 45 | + acls01.at\ | ||
| 46 | + acls02.at\ | ||
| 47 | + acls03.at\ | ||
| 48 | add-file.at\ | ||
| 49 | append.at\ | ||
| 50 | append01.at\ | ||
| 51 | @@ -68,14 +71,15 @@ TESTSUITE_AT = \ | ||
| 52 | append04.at\ | ||
| 53 | append05.at\ | ||
| 54 | backup01.at\ | ||
| 55 | - chtype.at\ | ||
| 56 | - comprec.at\ | ||
| 57 | - comperr.at\ | ||
| 58 | + capabs_raw01.at\ | ||
| 59 | checkpoint/defaults.at\ | ||
| 60 | - checkpoint/interval.at\ | ||
| 61 | - checkpoint/dot.at\ | ||
| 62 | checkpoint/dot-compat.at\ | ||
| 63 | checkpoint/dot-int.at\ | ||
| 64 | + checkpoint/dot.at\ | ||
| 65 | + checkpoint/interval.at\ | ||
| 66 | + chtype.at\ | ||
| 67 | + comperr.at\ | ||
| 68 | + comprec.at\ | ||
| 69 | delete01.at\ | ||
| 70 | delete02.at\ | ||
| 71 | delete03.at\ | ||
| 72 | @@ -83,6 +87,8 @@ TESTSUITE_AT = \ | ||
| 73 | delete05.at\ | ||
| 74 | delete06.at\ | ||
| 75 | difflink.at\ | ||
| 76 | + dirrem01.at\ | ||
| 77 | + dirrem02.at\ | ||
| 78 | exclude.at\ | ||
| 79 | exclude01.at\ | ||
| 80 | exclude02.at\ | ||
| 81 | @@ -100,6 +106,8 @@ TESTSUITE_AT = \ | ||
| 82 | exclude14.at\ | ||
| 83 | exclude15.at\ | ||
| 84 | exclude16.at\ | ||
| 85 | + exclude17.at\ | ||
| 86 | + exclude18.at\ | ||
| 87 | extrac01.at\ | ||
| 88 | extrac02.at\ | ||
| 89 | extrac03.at\ | ||
| 90 | @@ -127,11 +135,9 @@ TESTSUITE_AT = \ | ||
| 91 | extrac25.at\ | ||
| 92 | filerem01.at\ | ||
| 93 | filerem02.at\ | ||
| 94 | - dirrem01.at\ | ||
| 95 | - dirrem02.at\ | ||
| 96 | - gzip.at\ | ||
| 97 | grow.at\ | ||
| 98 | - incremental.at\ | ||
| 99 | + gzip.at\ | ||
| 100 | + ignfail.at\ | ||
| 101 | incr01.at\ | ||
| 102 | incr02.at\ | ||
| 103 | incr03.at\ | ||
| 104 | @@ -143,8 +149,8 @@ TESTSUITE_AT = \ | ||
| 105 | incr09.at\ | ||
| 106 | incr10.at\ | ||
| 107 | incr11.at\ | ||
| 108 | + incremental.at\ | ||
| 109 | indexfile.at\ | ||
| 110 | - ignfail.at\ | ||
| 111 | label01.at\ | ||
| 112 | label02.at\ | ||
| 113 | label03.at\ | ||
| 114 | @@ -188,22 +194,16 @@ TESTSUITE_AT = \ | ||
| 115 | opcomp04.at\ | ||
| 116 | opcomp05.at\ | ||
| 117 | opcomp06.at\ | ||
| 118 | - positional01.at\ | ||
| 119 | - positional02.at\ | ||
| 120 | - positional03.at\ | ||
| 121 | options.at\ | ||
| 122 | options02.at\ | ||
| 123 | options03.at\ | ||
| 124 | owner.at\ | ||
| 125 | pipe.at\ | ||
| 126 | - recurse.at\ | ||
| 127 | + positional01.at\ | ||
| 128 | + positional02.at\ | ||
| 129 | + positional03.at\ | ||
| 130 | recurs02.at\ | ||
| 131 | - rename01.at\ | ||
| 132 | - rename02.at\ | ||
| 133 | - rename03.at\ | ||
| 134 | - rename04.at\ | ||
| 135 | - rename05.at\ | ||
| 136 | - rename06.at\ | ||
| 137 | + recurse.at\ | ||
| 138 | remfiles01.at\ | ||
| 139 | remfiles02.at\ | ||
| 140 | remfiles03.at\ | ||
| 141 | @@ -226,11 +226,19 @@ TESTSUITE_AT = \ | ||
| 142 | remfiles09b.at\ | ||
| 143 | remfiles09c.at\ | ||
| 144 | remfiles10.at\ | ||
| 145 | + rename01.at\ | ||
| 146 | + rename02.at\ | ||
| 147 | + rename03.at\ | ||
| 148 | + rename04.at\ | ||
| 149 | + rename05.at\ | ||
| 150 | + rename06.at\ | ||
| 151 | same-order01.at\ | ||
| 152 | same-order02.at\ | ||
| 153 | + selacl01.at\ | ||
| 154 | + selnx01.at\ | ||
| 155 | shortfile.at\ | ||
| 156 | - shortupd.at\ | ||
| 157 | shortrec.at\ | ||
| 158 | + shortupd.at\ | ||
| 159 | sigpipe.at\ | ||
| 160 | sparse01.at\ | ||
| 161 | sparse02.at\ | ||
| 162 | @@ -247,6 +255,13 @@ TESTSUITE_AT = \ | ||
| 163 | sptrcreat.at\ | ||
| 164 | sptrdiff00.at\ | ||
| 165 | sptrdiff01.at\ | ||
| 166 | + star/gtarfail.at\ | ||
| 167 | + star/gtarfail2.at\ | ||
| 168 | + star/multi-fail.at\ | ||
| 169 | + star/pax-big-10g.at\ | ||
| 170 | + star/ustar-big-2g.at\ | ||
| 171 | + star/ustar-big-8g.at\ | ||
| 172 | + testsuite.at\ | ||
| 173 | time01.at\ | ||
| 174 | time02.at\ | ||
| 175 | truncate.at\ | ||
| 176 | @@ -255,21 +270,11 @@ TESTSUITE_AT = \ | ||
| 177 | update02.at\ | ||
| 178 | update03.at\ | ||
| 179 | update04.at\ | ||
| 180 | - volsize.at\ | ||
| 181 | - volume.at\ | ||
| 182 | verbose.at\ | ||
| 183 | verify.at\ | ||
| 184 | version.at\ | ||
| 185 | - xform-h.at\ | ||
| 186 | - xform01.at\ | ||
| 187 | - xform02.at\ | ||
| 188 | - xform03.at\ | ||
| 189 | - star/gtarfail.at\ | ||
| 190 | - star/gtarfail2.at\ | ||
| 191 | - star/multi-fail.at\ | ||
| 192 | - star/ustar-big-2g.at\ | ||
| 193 | - star/ustar-big-8g.at\ | ||
| 194 | - star/pax-big-10g.at\ | ||
| 195 | + volsize.at\ | ||
| 196 | + volume.at\ | ||
| 197 | xattr01.at\ | ||
| 198 | xattr02.at\ | ||
| 199 | xattr03.at\ | ||
| 200 | @@ -278,12 +283,10 @@ TESTSUITE_AT = \ | ||
| 201 | xattr06.at\ | ||
| 202 | xattr07.at\ | ||
| 203 | xattr08.at\ | ||
| 204 | - acls01.at\ | ||
| 205 | - acls02.at\ | ||
| 206 | - acls03.at\ | ||
| 207 | - selnx01.at\ | ||
| 208 | - selacl01.at\ | ||
| 209 | - capabs_raw01.at | ||
| 210 | + xform-h.at\ | ||
| 211 | + xform01.at\ | ||
| 212 | + xform02.at\ | ||
| 213 | + xform03.at | ||
| 214 | |||
| 215 | distclean-local: | ||
| 216 | -rm -rf download | ||
| 217 | @@ -291,7 +294,7 @@ distclean-local: | ||
| 218 | TESTSUITE = $(srcdir)/testsuite | ||
| 219 | |||
| 220 | AUTOTEST = $(AUTOM4TE) --language=autotest | ||
| 221 | -$(TESTSUITE): package.m4 $(TESTSUITE_AT) | ||
| 222 | +$(TESTSUITE): compress.m4 package.m4 $(TESTSUITE_AT) | ||
| 223 | $(AUTOTEST) -I $(srcdir) testsuite.at -o $@.tmp | ||
| 224 | mv $@.tmp $@ | ||
| 225 | |||
| 226 | -- | ||
| 227 | cgit v1.1 | ||
| 228 | |||
diff --git a/meta/recipes-extended/tar/tar/0002-tests-check-for-recently-fixed-bug.patch b/meta/recipes-extended/tar/tar/0002-tests-check-for-recently-fixed-bug.patch deleted file mode 100644 index 6cd8c5510f..0000000000 --- a/meta/recipes-extended/tar/tar/0002-tests-check-for-recently-fixed-bug.patch +++ /dev/null | |||
| @@ -1,60 +0,0 @@ | |||
| 1 | From 0f0722df45ec520d0dac7c9ad7e69165e9140931 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Paul Eggert <eggert@cs.ucla.edu> | ||
| 3 | Date: Fri, 7 Oct 2022 15:22:07 -0700 | ||
| 4 | Subject: tests: check for recently-fixed bug | ||
| 5 | |||
| 6 | * tests/exclude17.at: New file. | ||
| 7 | |||
| 8 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/tar.git/commit/?id=0f0722df45ec520d0dac7c9ad7e69165e9140931] | ||
| 9 | |||
| 10 | Signed-off-by: Qiu Tingting <qiutt@fujitsu.com> | ||
| 11 | |||
| 12 | --- | ||
| 13 | tests/exclude17.at | 35 +++++++++++++++++++++++++++++++++++ | ||
| 14 | 1 files changed, 35 insertions(+) | ||
| 15 | create mode 100644 tests/exclude17.at | ||
| 16 | |||
| 17 | diff --git a/tests/exclude17.at b/tests/exclude17.at | ||
| 18 | new file mode 100644 | ||
| 19 | index 0000000..4162b2b | ||
| 20 | --- /dev/null | ||
| 21 | +++ b/tests/exclude17.at | ||
| 22 | @@ -0,0 +1,35 @@ | ||
| 23 | +# Process this file with autom4te to create testsuite. -*- Autotest -*- | ||
| 24 | +# | ||
| 25 | +# Test suite for GNU tar. | ||
| 26 | +# Copyright 2013-2022 Free Software Foundation, Inc. | ||
| 27 | + | ||
| 28 | +# This file is part of GNU tar. | ||
| 29 | + | ||
| 30 | +# GNU tar is free software; you can redistribute it and/or modify | ||
| 31 | +# it under the terms of the GNU General Public License as published by | ||
| 32 | +# the Free Software Foundation; either version 3 of the License, or | ||
| 33 | +# (at your option) any later version. | ||
| 34 | + | ||
| 35 | +# GNU tar is distributed in the hope that it will be useful, | ||
| 36 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 37 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 38 | +# GNU General Public License for more details. | ||
| 39 | + | ||
| 40 | +# You should have received a copy of the GNU General Public License | ||
| 41 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 42 | + | ||
| 43 | +AT_SETUP([--exclude-vcs-ignores memory allocation]) | ||
| 44 | +AT_KEYWORDS([exclude exclude17]) | ||
| 45 | + | ||
| 46 | +AT_TAR_CHECK([ | ||
| 47 | +mkdir dir | ||
| 48 | +cd dir | ||
| 49 | +echo '*.o' >.cvsignore | ||
| 50 | +tar -cf - --exclude-vcs-ignores . | tar -tf - | ||
| 51 | +], | ||
| 52 | +[0], | ||
| 53 | +[./ | ||
| 54 | +./.cvsignore | ||
| 55 | +]) | ||
| 56 | + | ||
| 57 | +AT_CLEANUP | ||
| 58 | -- | ||
| 59 | cgit v1.1 | ||
| 60 | |||
diff --git a/meta/recipes-extended/tar/tar/0003-Exclude-VCS-directory-with-writing-from-an-archive.patch b/meta/recipes-extended/tar/tar/0003-Exclude-VCS-directory-with-writing-from-an-archive.patch deleted file mode 100644 index 577a9ba997..0000000000 --- a/meta/recipes-extended/tar/tar/0003-Exclude-VCS-directory-with-writing-from-an-archive.patch +++ /dev/null | |||
| @@ -1,112 +0,0 @@ | |||
| 1 | From 4f814e0e4c673f86dc65a557f7e55f6b5efd1529 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Anton Makrushin <makrusan@gmail.com> | ||
| 3 | Date: Mon, 20 Mar 2023 20:05:42 +0530 | ||
| 4 | Subject: Exclude VCS directory with writing from an archive | ||
| 5 | |||
| 6 | See https://savannah.gnu.org/bugs/?62859 | ||
| 7 | |||
| 8 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/tar.git/commit/?id=4f814e0e4c673f86dc65a557f7e55f6b5efd1529] | ||
| 9 | |||
| 10 | Signed-off-by: Qiu Tingting <qiutt@fujitsu.com> | ||
| 11 | |||
| 12 | --- | ||
| 13 | tests/exclude18.at | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
| 14 | 1 files changed, 87 insertions(+) | ||
| 15 | create mode 100644 tests/exclude18.at | ||
| 16 | |||
| 17 | diff --git a/tests/exclude18.at b/tests/exclude18.at | ||
| 18 | new file mode 100644 | ||
| 19 | index 0000000..64aaa52 | ||
| 20 | --- /dev/null | ||
| 21 | +++ b/tests/exclude18.at | ||
| 22 | @@ -0,0 +1,87 @@ | ||
| 23 | +# Process this file with autom4te to create testsuite. -*- Autotest -*- | ||
| 24 | + | ||
| 25 | +# Test suite for GNU tar. | ||
| 26 | +# Copyright 2004-2023 Free Software Foundation, Inc. | ||
| 27 | + | ||
| 28 | +# This file is part of GNU tar. | ||
| 29 | + | ||
| 30 | +# GNU tar is free software; you can redistribute it and/or modify | ||
| 31 | +# it under the terms of the GNU General Public License as published by | ||
| 32 | +# the Free Software Foundation; either version 3 of the License, or | ||
| 33 | +# (at your option) any later version. | ||
| 34 | + | ||
| 35 | +# GNU tar is distributed in the hope that it will be useful, | ||
| 36 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 37 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 38 | +# GNU General Public License for more details. | ||
| 39 | + | ||
| 40 | +# You should have received a copy of the GNU General Public License | ||
| 41 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 42 | + | ||
| 43 | +# Test --exclude-vcs option with subcommands: EXTRACT, LIST, DIFF. | ||
| 44 | +# Check VCS directory with files, and empty. | ||
| 45 | +# | ||
| 46 | +# Ref: https://savannah.gnu.org/bugs/?62859 | ||
| 47 | +# Wed 03 Aug 2022 04:06:28 PM UTC, original submission: Quote | ||
| 48 | +# Mohamed Akram <mohdakram> | ||
| 49 | +# > The --exclude-vcs flag seems to exclude .gitignore but not .git when | ||
| 50 | +# extracting. | ||
| 51 | + | ||
| 52 | +AT_SETUP([--exclude-vcs extract list compare]) | ||
| 53 | +AT_KEYWORDS([exclude-vcs extract list compare exclude18]) | ||
| 54 | + | ||
| 55 | +AT_TAR_CHECK([ | ||
| 56 | +AT_SORT_PREREQ | ||
| 57 | +mkdir gitrepo | ||
| 58 | +cd gitrepo | ||
| 59 | + | ||
| 60 | +# Make an empty VCS directory: | ||
| 61 | +mkdir .svn | ||
| 62 | + | ||
| 63 | +# Make a VCS directory with a file: | ||
| 64 | +mkdir .git | ||
| 65 | +touch .git/_A | ||
| 66 | + | ||
| 67 | +# Make a VCS file: | ||
| 68 | +touch .gitignore | ||
| 69 | + | ||
| 70 | +# Make non-VCS files: | ||
| 71 | +touch .git_B | ||
| 72 | +touch _C | ||
| 73 | + | ||
| 74 | +# Create an archive, include VCS: | ||
| 75 | +cd .. | ||
| 76 | +tar -cf gitrepo.tar gitrepo | ||
| 77 | +rm -r gitrepo | ||
| 78 | + | ||
| 79 | +echo Extract: | ||
| 80 | +tar -xvf gitrepo.tar --exclude-vcs | sort | ||
| 81 | + | ||
| 82 | +echo | ||
| 83 | +echo List: | ||
| 84 | +tar -tf gitrepo.tar --exclude-vcs | sort | ||
| 85 | + | ||
| 86 | +echo | ||
| 87 | +echo Diff: | ||
| 88 | +tar -dvf gitrepo.tar --exclude-vcs gitrepo | sort | ||
| 89 | + | ||
| 90 | +], | ||
| 91 | +[0], | ||
| 92 | +[Extract: | ||
| 93 | +gitrepo/ | ||
| 94 | +gitrepo/.git_B | ||
| 95 | +gitrepo/_C | ||
| 96 | + | ||
| 97 | +List: | ||
| 98 | +gitrepo/ | ||
| 99 | +gitrepo/.git_B | ||
| 100 | +gitrepo/_C | ||
| 101 | + | ||
| 102 | +Diff: | ||
| 103 | +gitrepo/ | ||
| 104 | +gitrepo/.git_B | ||
| 105 | +gitrepo/_C | ||
| 106 | +], | ||
| 107 | +[]) | ||
| 108 | + | ||
| 109 | +AT_CLEANUP | ||
| 110 | -- | ||
| 111 | cgit v1.1 | ||
| 112 | |||
diff --git a/meta/recipes-extended/tar/tar/run-ptest b/meta/recipes-extended/tar/tar/run-ptest deleted file mode 100644 index b4ccbbcb46..0000000000 --- a/meta/recipes-extended/tar/tar/run-ptest +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | cd @PTEST_PATH@/tests/ | ||
| 4 | |||
| 5 | # Clear old data | ||
| 6 | rm -rf testsuite.dir testsuite.log | ||
| 7 | |||
| 8 | ./testsuite --am-fmt | ||
diff --git a/meta/recipes-extended/tar/tar_1.35.bb b/meta/recipes-extended/tar/tar_1.35.bb deleted file mode 100644 index d463eff97d..0000000000 --- a/meta/recipes-extended/tar/tar_1.35.bb +++ /dev/null | |||
| @@ -1,100 +0,0 @@ | |||
| 1 | SUMMARY = "GNU file archiving program" | ||
| 2 | DESCRIPTION = "GNU tar saves many files together into a single tape \ | ||
| 3 | or disk archive, and can restore individual files from the archive." | ||
| 4 | HOMEPAGE = "http://www.gnu.org/software/tar/" | ||
| 5 | SECTION = "base" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2" | ||
| 10 | |||
| 11 | SRC_URI[sha256sum] = "7edb8886a3dc69420a1446e1e2d061922b642f1cf632d2cd0f9ee7e690775985" | ||
| 12 | |||
| 13 | inherit autotools gettext texinfo | ||
| 14 | |||
| 15 | PACKAGECONFIG ??= "" | ||
| 16 | PACKAGECONFIG:append:class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}" | ||
| 17 | |||
| 18 | PACKAGECONFIG[acl] = "--with-posix-acls,--without-posix-acls,acl" | ||
| 19 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
| 20 | |||
| 21 | EXTRA_OECONF += "DEFAULT_RMT_DIR=${sbindir}" | ||
| 22 | |||
| 23 | CACHED_CONFIGUREVARS += "tar_cv_path_RSH=no" | ||
| 24 | |||
| 25 | do_install () { | ||
| 26 | autotools_do_install | ||
| 27 | ln -s tar ${D}${bindir}/gtar | ||
| 28 | } | ||
| 29 | |||
| 30 | do_install:append:class-target() { | ||
| 31 | if [ "${base_bindir}" != "${bindir}" ]; then | ||
| 32 | install -d ${D}${base_bindir} | ||
| 33 | mv ${D}${bindir}/tar ${D}${base_bindir}/tar | ||
| 34 | mv ${D}${bindir}/gtar ${D}${base_bindir}/gtar | ||
| 35 | rmdir ${D}${bindir}/ | ||
| 36 | fi | ||
| 37 | } | ||
| 38 | |||
| 39 | # add for ptest support | ||
| 40 | SRC_URI += " \ | ||
| 41 | file://run-ptest \ | ||
| 42 | file://0001-tests-fix-TESTSUITE_AT.patch \ | ||
| 43 | file://0002-tests-check-for-recently-fixed-bug.patch \ | ||
| 44 | file://0003-Exclude-VCS-directory-with-writing-from-an-archive.patch \ | ||
| 45 | " | ||
| 46 | |||
| 47 | inherit ptest | ||
| 48 | |||
| 49 | do_compile_ptest() { | ||
| 50 | oe_runmake -C ${B}/gnu/ check | ||
| 51 | oe_runmake -C ${B}/lib/ check | ||
| 52 | oe_runmake -C ${B}/rmt/ check | ||
| 53 | oe_runmake -C ${B}/src/ check | ||
| 54 | rm -rf ${S}/tests/testsuite | ||
| 55 | oe_runmake -C ${B}/tests/ testsuite | ||
| 56 | oe_runmake -C ${B}/tests/ genfile checkseekhole ckmtime | ||
| 57 | } | ||
| 58 | |||
| 59 | do_install_ptest() { | ||
| 60 | install -d ${D}${PTEST_PATH}/tests/ | ||
| 61 | install --mode=755 ${B}/tests/atconfig ${D}${PTEST_PATH}/tests/ | ||
| 62 | sed -i "/abs_/d" ${D}${PTEST_PATH}/tests/atconfig | ||
| 63 | echo "abs_builddir=${PTEST_PATH}/tests/" >> ${D}${PTEST_PATH}/tests/atconfig | ||
| 64 | install --mode=755 ${B}/tests/atlocal ${D}${PTEST_PATH}/tests/ | ||
| 65 | sed -i "/PATH=/d" ${D}${PTEST_PATH}/tests/atlocal | ||
| 66 | install --mode=755 ${B}/tests/genfile ${D}${PTEST_PATH}/tests/ | ||
| 67 | install --mode=755 ${B}/tests/checkseekhole ${D}${PTEST_PATH}/tests/ | ||
| 68 | install --mode=755 ${B}/tests/ckmtime ${D}${PTEST_PATH}/tests/ | ||
| 69 | install --mode=755 ${S}/tests/testsuite ${D}${PTEST_PATH}/tests/ | ||
| 70 | sed -i "s#@PTEST_PATH@#${PTEST_PATH}#g" ${D}${PTEST_PATH}/run-ptest | ||
| 71 | } | ||
| 72 | |||
| 73 | PACKAGES =+ "${PN}-rmt" | ||
| 74 | |||
| 75 | FILES:${PN}-rmt = "${sbindir}/rmt*" | ||
| 76 | |||
| 77 | inherit update-alternatives | ||
| 78 | |||
| 79 | ALTERNATIVE_PRIORITY = "100" | ||
| 80 | |||
| 81 | ALTERNATIVE:${PN} = "tar" | ||
| 82 | ALTERNATIVE:${PN}-rmt = "rmt" | ||
| 83 | ALTERNATIVE:${PN}:class-nativesdk = "" | ||
| 84 | ALTERNATIVE:${PN}-rmt:class-nativesdk = "" | ||
| 85 | |||
| 86 | ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar" | ||
| 87 | ALTERNATIVE_LINK_NAME[rmt] = "${sbindir}/rmt" | ||
| 88 | |||
| 89 | PROVIDES:append:class-native = " tar-replacement-native" | ||
| 90 | NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}" | ||
| 91 | |||
| 92 | BBCLASSEXTEND = "native nativesdk" | ||
| 93 | |||
| 94 | # Avoid false positives from CVEs in node-tar package | ||
| 95 | # For example CVE-2021-{32803,32804,37701,37712,37713} | ||
| 96 | CVE_PRODUCT = "gnu:tar" | ||
| 97 | |||
| 98 | # A test uses cmp to compare two 8GB files. Busybox's cmp does the job usually, but it is much slower than | ||
| 99 | # diffutils' cmp, and the test times out when there is a high load on the host machine. | ||
| 100 | RDEPENDS:${PN}-ptest += "diffutils" | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-build-with-clang.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-build-with-clang.patch deleted file mode 100644 index 9ca227d68d..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-build-with-clang.patch +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | From 7f8878ac1aaf4a19992d39379797c151301bedb1 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Oleksiy Obitotskyy <oobitots@cisco.com> | ||
| 3 | Date: Mon, 5 Feb 2018 08:29:10 -0800 | ||
| 4 | Subject: [PATCH] Fix build with clang | ||
| 5 | |||
| 6 | Fix "error: non-void function 'fix_options' should return a value". | ||
| 7 | Add function prototype to tcpd.c and miscd.c. | ||
| 8 | |||
| 9 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 10 | |||
| 11 | Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com> | ||
| 12 | --- | ||
| 13 | v2 - add function prototypes | ||
| 14 | |||
| 15 | fix_options.c | 2 +- | ||
| 16 | miscd.c | 4 ++++ | ||
| 17 | tcpd.c | 4 ++++ | ||
| 18 | 3 files changed, 9 insertions(+), 1 deletion(-) | ||
| 19 | |||
| 20 | diff --git a/fix_options.c b/fix_options.c | ||
| 21 | index b5e81b8..9958ff4 100644 | ||
| 22 | --- a/fix_options.c | ||
| 23 | +++ b/fix_options.c | ||
| 24 | @@ -29,7 +29,7 @@ static char sccsid[] = "@(#) fix_options.c 1.6 97/04/08 02:29:19"; | ||
| 25 | |||
| 26 | /* fix_options - get rid of IP-level socket options */ | ||
| 27 | |||
| 28 | -fix_options(request) | ||
| 29 | +void fix_options(request) | ||
| 30 | struct request_info *request; | ||
| 31 | { | ||
| 32 | #ifdef IP_OPTIONS | ||
| 33 | diff --git a/miscd.c b/miscd.c | ||
| 34 | index 1ab835c..723b83a 100644 | ||
| 35 | --- a/miscd.c | ||
| 36 | +++ b/miscd.c | ||
| 37 | @@ -40,6 +40,10 @@ static char sccsid[] = "@(#) miscd.c 1.10 96/02/11 17:01:30"; | ||
| 38 | #include "patchlevel.h" | ||
| 39 | #include "tcpd.h" | ||
| 40 | |||
| 41 | +#ifdef KILL_IP_OPTIONS | ||
| 42 | +void fix_options(struct request_info *); | ||
| 43 | +#endif | ||
| 44 | + | ||
| 45 | int allow_severity = SEVERITY; /* run-time adjustable */ | ||
| 46 | int deny_severity = LOG_WARNING; /* ditto */ | ||
| 47 | |||
| 48 | diff --git a/tcpd.c b/tcpd.c | ||
| 49 | index d865b9c..a179891 100644 | ||
| 50 | --- a/tcpd.c | ||
| 51 | +++ b/tcpd.c | ||
| 52 | @@ -38,6 +38,10 @@ static char sccsid[] = "@(#) tcpd.c 1.10 96/02/11 17:01:32"; | ||
| 53 | #include "patchlevel.h" | ||
| 54 | #include "tcpd.h" | ||
| 55 | |||
| 56 | +#ifdef KILL_IP_OPTIONS | ||
| 57 | +void fix_options(struct request_info *); | ||
| 58 | +#endif | ||
| 59 | + | ||
| 60 | int allow_severity = SEVERITY; /* run-time adjustable */ | ||
| 61 | int deny_severity = LOG_WARNING; /* ditto */ | ||
| 62 | |||
| 63 | -- | ||
| 64 | 2.10.3.dirty | ||
| 65 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-implicit-function-declaration-warnings.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-implicit-function-declaration-warnings.patch deleted file mode 100644 index 8503177926..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Fix-implicit-function-declaration-warnings.patch +++ /dev/null | |||
| @@ -1,114 +0,0 @@ | |||
| 1 | From 9c97b5db237a793e0d1b6b0241570bdc6e35ee24 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sun, 7 Aug 2022 17:42:24 -0700 | ||
| 4 | Subject: [PATCH] Fix implicit-function-declaration warnings | ||
| 5 | |||
| 6 | These are seen with clang-15+ | ||
| 7 | |||
| 8 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 10 | --- | ||
| 11 | hosts_access.c | 3 +++ | ||
| 12 | safe_finger.c | 1 + | ||
| 13 | shell_cmd.c | 3 +++ | ||
| 14 | tcpd.c | 2 +- | ||
| 15 | tcpdchk.c | 1 + | ||
| 16 | workarounds.c | 1 + | ||
| 17 | 6 files changed, 10 insertions(+), 1 deletion(-) | ||
| 18 | |||
| 19 | diff --git a/hosts_access.c b/hosts_access.c | ||
| 20 | index 0133e5e..58697ea 100644 | ||
| 21 | --- a/hosts_access.c | ||
| 22 | +++ b/hosts_access.c | ||
| 23 | @@ -33,6 +33,12 @@ static char sccsid[] = "@(#) hosts_access.c 1.21 97/02/12 02:13:22"; | ||
| 24 | #endif | ||
| 25 | #include <netinet/in.h> | ||
| 26 | #include <arpa/inet.h> | ||
| 27 | +#ifdef USE_GETDOMAIN | ||
| 28 | +/* defined in workarounds.c */ | ||
| 29 | +extern int yp_get_default_domain(char **ptr); | ||
| 30 | +#else | ||
| 31 | +# include <rpcsvc/ypclnt.h> | ||
| 32 | +#endif /* USE_GETDOMAIN */ | ||
| 33 | #include <stdio.h> | ||
| 34 | #include <stdlib.h> | ||
| 35 | #include <syslog.h> | ||
| 36 | @@ -45,6 +46,8 @@ static char sccsid[] = "@(#) hosts_access.c 1.21 97/02/12 02:13:22"; | ||
| 37 | #endif | ||
| 38 | |||
| 39 | extern int errno; | ||
| 40 | +extern int match_pattern_ylo(const char *s, const char *pattern); | ||
| 41 | +extern unsigned long cidr_mask_addr(char* str); | ||
| 42 | |||
| 43 | #ifndef INADDR_NONE | ||
| 44 | #define INADDR_NONE (-1) /* XXX should be 0xffffffff */ | ||
| 45 | diff --git a/safe_finger.c b/safe_finger.c | ||
| 46 | index 23afab1..a6458fb 100644 | ||
| 47 | --- a/safe_finger.c | ||
| 48 | +++ b/safe_finger.c | ||
| 49 | @@ -34,6 +34,7 @@ static char sccsid[] = "@(#) safe_finger.c 1.4 94/12/28 17:42:41"; | ||
| 50 | #include <syslog.h> | ||
| 51 | |||
| 52 | extern void exit(); | ||
| 53 | +extern int pipe_stdin(char **argv); | ||
| 54 | |||
| 55 | /* Local stuff */ | ||
| 56 | |||
| 57 | diff --git a/shell_cmd.c b/shell_cmd.c | ||
| 58 | index 62d31bc..a566092 100644 | ||
| 59 | --- a/shell_cmd.c | ||
| 60 | +++ b/shell_cmd.c | ||
| 61 | @@ -16,10 +16,13 @@ static char sccsid[] = "@(#) shell_cmd.c 1.5 94/12/28 17:42:44"; | ||
| 62 | |||
| 63 | #include <sys/types.h> | ||
| 64 | #include <sys/param.h> | ||
| 65 | +#include <sys/wait.h> | ||
| 66 | +#include <fcntl.h> | ||
| 67 | #include <signal.h> | ||
| 68 | #include <stdio.h> | ||
| 69 | #include <syslog.h> | ||
| 70 | #include <string.h> | ||
| 71 | +#include <unistd.h> | ||
| 72 | |||
| 73 | extern void exit(); | ||
| 74 | |||
| 75 | diff --git a/tcpd.c b/tcpd.c | ||
| 76 | index dc9ff17..4353caa 100644 | ||
| 77 | --- a/tcpd.c | ||
| 78 | +++ b/tcpd.c | ||
| 79 | @@ -46,7 +46,7 @@ void fix_options(struct request_info *); | ||
| 80 | int allow_severity = SEVERITY; /* run-time adjustable */ | ||
| 81 | int deny_severity = LOG_WARNING; /* ditto */ | ||
| 82 | |||
| 83 | -main(argc, argv) | ||
| 84 | +void main(argc, argv) | ||
| 85 | int argc; | ||
| 86 | char **argv; | ||
| 87 | { | ||
| 88 | diff --git a/tcpdchk.c b/tcpdchk.c | ||
| 89 | index 5dca8bd..67c12ce 100644 | ||
| 90 | --- a/tcpdchk.c | ||
| 91 | +++ b/tcpdchk.c | ||
| 92 | @@ -38,6 +38,7 @@ static char sccsid[] = "@(#) tcpdchk.c 1.8 97/02/12 02:13:25"; | ||
| 93 | |||
| 94 | extern int errno; | ||
| 95 | extern void exit(); | ||
| 96 | +extern unsigned long cidr_mask_addr(char* str); | ||
| 97 | extern int optind; | ||
| 98 | extern char *optarg; | ||
| 99 | |||
| 100 | diff --git a/workarounds.c b/workarounds.c | ||
| 101 | index b22b378..6335049 100644 | ||
| 102 | --- a/workarounds.c | ||
| 103 | +++ b/workarounds.c | ||
| 104 | @@ -21,6 +21,7 @@ char sccsid[] = "@(#) workarounds.c 1.6 96/03/19 16:22:25"; | ||
| 105 | #include <stdio.h> | ||
| 106 | #include <syslog.h> | ||
| 107 | #include <string.h> | ||
| 108 | +#include <unistd.h> | ||
| 109 | |||
| 110 | extern int errno; | ||
| 111 | |||
| 112 | -- | ||
| 113 | 2.37.1 | ||
| 114 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Remove-fgets-extern-declaration.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Remove-fgets-extern-declaration.patch deleted file mode 100644 index f485fe3fb6..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/0001-Remove-fgets-extern-declaration.patch +++ /dev/null | |||
| @@ -1,43 +0,0 @@ | |||
| 1 | From 24d10919b4bc5e37a2d80b274d2cd2ee77b03549 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 13 Jan 2020 14:25:47 -0800 | ||
| 4 | Subject: [PATCH] Remove fgets() extern declaration | ||
| 5 | |||
| 6 | These sources already include <stdio.h> which should bring the correct | ||
| 7 | declaration | ||
| 8 | |||
| 9 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | hosts_access.c | 1 - | ||
| 13 | misc.c | 2 -- | ||
| 14 | 2 files changed, 3 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/hosts_access.c b/hosts_access.c | ||
| 17 | index 329b35e..0133e5e 100644 | ||
| 18 | --- a/hosts_access.c | ||
| 19 | +++ b/hosts_access.c | ||
| 20 | @@ -44,7 +44,6 @@ static char sccsid[] = "@(#) hosts_access.c 1.21 97/02/12 02:13:22"; | ||
| 21 | #include <netdb.h> | ||
| 22 | #endif | ||
| 23 | |||
| 24 | -extern char *fgets(); | ||
| 25 | extern int errno; | ||
| 26 | |||
| 27 | #ifndef INADDR_NONE | ||
| 28 | diff --git a/misc.c b/misc.c | ||
| 29 | index 74ca319..9a5e73a 100644 | ||
| 30 | --- a/misc.c | ||
| 31 | +++ b/misc.c | ||
| 32 | @@ -18,8 +18,6 @@ static char sccsic[] = "@(#) misc.c 1.2 96/02/11 17:01:29"; | ||
| 33 | |||
| 34 | #include "tcpd.h" | ||
| 35 | |||
| 36 | -extern char *fgets(); | ||
| 37 | - | ||
| 38 | #ifndef INADDR_NONE | ||
| 39 | #define INADDR_NONE (-1) /* XXX should be 0xffffffff */ | ||
| 40 | #endif | ||
| 41 | -- | ||
| 42 | 2.24.1 | ||
| 43 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff deleted file mode 100644 index c5ba3af306..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff +++ /dev/null | |||
| @@ -1,77 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 4 | --- tcp_wrappers_7.6.orig/hosts_access.5 1995-01-30 19:51:47.000000000 +0100 | ||
| 5 | +++ tcp_wrappers_7.6/hosts_access.5 2004-04-09 16:59:45.000000000 +0200 | ||
| 6 | @@ -173,7 +173,7 @@ | ||
| 7 | Patterns like these can be used when the machine has different internet | ||
| 8 | addresses with different internet hostnames. Service providers can use | ||
| 9 | this facility to offer FTP, GOPHER or WWW archives with internet names | ||
| 10 | -that may even belong to different organizations. See also the `twist' | ||
| 11 | +that may even belong to different organizations. See also the `twist\' | ||
| 12 | option in the hosts_options(5) document. Some systems (Solaris, | ||
| 13 | FreeBSD) can have more than one internet address on one physical | ||
| 14 | interface; with other systems you may have to resort to SLIP or PPP | ||
| 15 | @@ -236,10 +236,10 @@ | ||
| 16 | Before accepting a client request, the wrappers can use the IDENT | ||
| 17 | service to find out that the client did not send the request at all. | ||
| 18 | When the client host provides IDENT service, a negative IDENT lookup | ||
| 19 | -result (the client matches `UNKNOWN@host') is strong evidence of a host | ||
| 20 | +result (the client matches `UNKNOWN@host\') is strong evidence of a host | ||
| 21 | spoofing attack. | ||
| 22 | .PP | ||
| 23 | -A positive IDENT lookup result (the client matches `KNOWN@host') is | ||
| 24 | +A positive IDENT lookup result (the client matches `KNOWN@host\') is | ||
| 25 | less trustworthy. It is possible for an intruder to spoof both the | ||
| 26 | client connection and the IDENT lookup, although doing so is much | ||
| 27 | harder than spoofing just a client connection. It may also be that | ||
| 28 | diff -ruN tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 | ||
| 29 | --- tcp_wrappers_7.6.orig/hosts_options.5 1994-12-28 17:42:29.000000000 +0100 | ||
| 30 | +++ tcp_wrappers_7.6/hosts_options.5 2004-04-09 16:59:49.000000000 +0200 | ||
| 31 | @@ -124,7 +124,7 @@ | ||
| 32 | value is taken. | ||
| 33 | .SH MISCELLANEOUS | ||
| 34 | .IP "banners /some/directory" | ||
| 35 | -Look for a file in `/some/directory' with the same name as the daemon | ||
| 36 | +Look for a file in `/some/directory\' with the same name as the daemon | ||
| 37 | process (for example in.telnetd for the telnet service), and copy its | ||
| 38 | contents to the client. Newline characters are replaced by | ||
| 39 | carriage-return newline, and %<letter> sequences are expanded (see | ||
| 40 | diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 | ||
| 41 | --- tcp_wrappers_7.6.orig/tcpdmatch.8 1996-02-11 17:01:36.000000000 +0100 | ||
| 42 | +++ tcp_wrappers_7.6/tcpdmatch.8 2004-04-09 17:00:49.000000000 +0200 | ||
| 43 | @@ -26,7 +26,7 @@ | ||
| 44 | A daemon process name. Typically, the last component of a daemon | ||
| 45 | executable pathname. | ||
| 46 | .IP client | ||
| 47 | -A host name or network address, or one of the `unknown' or `paranoid' | ||
| 48 | +A host name or network address, or one of the `unknown\' or `paranoid\' | ||
| 49 | wildcard patterns. | ||
| 50 | .sp | ||
| 51 | When a client host name is specified, \fItcpdmatch\fR gives a | ||
| 52 | @@ -37,13 +37,13 @@ | ||
| 53 | .PP | ||
| 54 | Optional information specified with the \fIdaemon@server\fR form: | ||
| 55 | .IP server | ||
| 56 | -A host name or network address, or one of the `unknown' or `paranoid' | ||
| 57 | -wildcard patterns. The default server name is `unknown'. | ||
| 58 | +A host name or network address, or one of the `unknown\' or `paranoid\' | ||
| 59 | +wildcard patterns. The default server name is `unknown\'. | ||
| 60 | .PP | ||
| 61 | Optional information specified with the \fIuser@client\fR form: | ||
| 62 | .IP user | ||
| 63 | A client user identifier. Typically, a login name or a numeric userid. | ||
| 64 | -The default user name is `unknown'. | ||
| 65 | +The default user name is `unknown\'. | ||
| 66 | .SH OPTIONS | ||
| 67 | .IP -d | ||
| 68 | Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current | ||
| 69 | @@ -70,7 +70,7 @@ | ||
| 70 | .ti +5 | ||
| 71 | tcpdmatch in.telnetd paranoid | ||
| 72 | .PP | ||
| 73 | -On some systems, daemon names have no `in.' prefix, or \fItcpdmatch\fR | ||
| 74 | +On some systems, daemon names have no `in.\' prefix, or \fItcpdmatch\fR | ||
| 75 | may need some help to locate the inetd configuration file. | ||
| 76 | .SH FILES | ||
| 77 | .PP | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch deleted file mode 100644 index fea8ab9d7a..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch +++ /dev/null | |||
| @@ -1,250 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruNp tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 | ||
| 4 | --- tcp_wrappers_7.6.orig/hosts_access.3 2005-03-09 18:30:25.000000000 +0100 | ||
| 5 | +++ tcp_wrappers_7.6/hosts_access.3 2005-03-09 18:27:03.000000000 +0100 | ||
| 6 | @@ -3,7 +3,7 @@ | ||
| 7 | hosts_access, hosts_ctl, request_init, request_set \- access control library | ||
| 8 | .SH SYNOPSIS | ||
| 9 | .nf | ||
| 10 | -#include "tcpd.h" | ||
| 11 | +#include <tcpd.h> | ||
| 12 | |||
| 13 | extern int allow_severity; | ||
| 14 | extern int deny_severity; | ||
| 15 | diff -ruNp tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 16 | --- tcp_wrappers_7.6.orig/hosts_access.5 2005-03-09 18:30:25.000000000 +0100 | ||
| 17 | +++ tcp_wrappers_7.6/hosts_access.5 2005-03-09 18:30:18.000000000 +0100 | ||
| 18 | @@ -8,9 +8,9 @@ name, host name/address) patterns. Exam | ||
| 19 | impatient reader is encouraged to skip to the EXAMPLES section for a | ||
| 20 | quick introduction. | ||
| 21 | .PP | ||
| 22 | -An extended version of the access control language is described in the | ||
| 23 | -\fIhosts_options\fR(5) document. The extensions are turned on at | ||
| 24 | -program build time by building with -DPROCESS_OPTIONS. | ||
| 25 | +The extended version of the access control language is described in the | ||
| 26 | +\fIhosts_options\fR(5) document. \fBNote that this language supersedes | ||
| 27 | +the meaning of \fIshell_command\fB as documented below.\fR | ||
| 28 | .PP | ||
| 29 | In the following text, \fIdaemon\fR is the the process name of a | ||
| 30 | network daemon process, and \fIclient\fR is the name and/or address of | ||
| 31 | @@ -346,8 +346,8 @@ in.tftpd: LOCAL, .my.domain | ||
| 32 | /etc/hosts.deny: | ||
| 33 | .in +3 | ||
| 34 | .nf | ||
| 35 | -in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\ | ||
| 36 | - /usr/ucb/mail -s %d-%h root) & | ||
| 37 | +in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \\ | ||
| 38 | + /usr/bin/mail -s %d-%h root) & | ||
| 39 | .fi | ||
| 40 | .PP | ||
| 41 | The safe_finger command comes with the tcpd wrapper and should be | ||
| 42 | @@ -383,6 +383,7 @@ that shouldn\'t. All problems are repor | ||
| 43 | .fi | ||
| 44 | .SH SEE ALSO | ||
| 45 | .nf | ||
| 46 | +hosts_options(5) extended syntax. | ||
| 47 | tcpd(8) tcp/ip daemon wrapper program. | ||
| 48 | tcpdchk(8), tcpdmatch(8), test programs. | ||
| 49 | .SH BUGS | ||
| 50 | diff -ruNp tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 | ||
| 51 | --- tcp_wrappers_7.6.orig/hosts_options.5 2005-03-09 18:30:24.000000000 +0100 | ||
| 52 | +++ tcp_wrappers_7.6/hosts_options.5 2005-03-09 18:27:03.000000000 +0100 | ||
| 53 | @@ -2,10 +2,8 @@ | ||
| 54 | .SH NAME | ||
| 55 | hosts_options \- host access control language extensions | ||
| 56 | .SH DESCRIPTION | ||
| 57 | -This document describes optional extensions to the language described | ||
| 58 | -in the hosts_access(5) document. The extensions are enabled at program | ||
| 59 | -build time. For example, by editing the Makefile and turning on the | ||
| 60 | -PROCESS_OPTIONS compile-time option. | ||
| 61 | +This document describes extensions to the language described | ||
| 62 | +in the hosts_access(5) document. | ||
| 63 | .PP | ||
| 64 | The extensible language uses the following format: | ||
| 65 | .sp | ||
| 66 | @@ -58,12 +56,12 @@ Notice the leading dot on the domain nam | ||
| 67 | Execute, in a child process, the specified shell command, after | ||
| 68 | performing the %<letter> expansions described in the hosts_access(5) | ||
| 69 | manual page. The command is executed with stdin, stdout and stderr | ||
| 70 | -connected to the null device, so that it won\'t mess up the | ||
| 71 | +connected to the null device, so that it won't mess up the | ||
| 72 | conversation with the client host. Example: | ||
| 73 | .sp | ||
| 74 | .nf | ||
| 75 | .ti +3 | ||
| 76 | -spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) & | ||
| 77 | +spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) & | ||
| 78 | .fi | ||
| 79 | .sp | ||
| 80 | executes, in a background child process, the shell command "safe_finger | ||
| 81 | diff -ruNp tcp_wrappers_7.6.orig/inetcf.c tcp_wrappers_7.6/inetcf.c | ||
| 82 | --- tcp_wrappers_7.6.orig/inetcf.c 1997-02-12 02:13:24.000000000 +0100 | ||
| 83 | +++ tcp_wrappers_7.6/inetcf.c 2005-03-09 18:27:03.000000000 +0100 | ||
| 84 | @@ -26,13 +26,17 @@ extern void exit(); | ||
| 85 | * guesses. Shorter names follow longer ones. | ||
| 86 | */ | ||
| 87 | char *inet_files[] = { | ||
| 88 | +#if 0 | ||
| 89 | "/private/etc/inetd.conf", /* NEXT */ | ||
| 90 | "/etc/inet/inetd.conf", /* SYSV4 */ | ||
| 91 | "/usr/etc/inetd.conf", /* IRIX?? */ | ||
| 92 | +#endif | ||
| 93 | "/etc/inetd.conf", /* BSD */ | ||
| 94 | +#if 0 | ||
| 95 | "/etc/net/tlid.conf", /* SYSV4?? */ | ||
| 96 | "/etc/saf/tlid.conf", /* SYSV4?? */ | ||
| 97 | "/etc/tlid.conf", /* SYSV4?? */ | ||
| 98 | +#endif | ||
| 99 | 0, | ||
| 100 | }; | ||
| 101 | |||
| 102 | diff -ruNp tcp_wrappers_7.6.orig/tcpd.8 tcp_wrappers_7.6/tcpd.8 | ||
| 103 | --- tcp_wrappers_7.6.orig/tcpd.8 1996-02-21 16:39:16.000000000 +0100 | ||
| 104 | +++ tcp_wrappers_7.6/tcpd.8 2005-03-09 18:27:03.000000000 +0100 | ||
| 105 | @@ -12,7 +12,11 @@ The program supports both 4.3BSD-style s | ||
| 106 | TLI. Functionality may be limited when the protocol underneath TLI is | ||
| 107 | not an internet protocol. | ||
| 108 | .PP | ||
| 109 | -Operation is as follows: whenever a request for service arrives, the | ||
| 110 | +There are two possible modes of operation: execution of \fItcpd\fP | ||
| 111 | +before a service started by \fIinetd\fP, or linking a daemon with | ||
| 112 | +the \fIlibwrap\fP shared library as documented in the \fIhosts_access\fR(3) | ||
| 113 | +manual page. Operation when started by \fIinetd\fP | ||
| 114 | +is as follows: whenever a request for service arrives, the | ||
| 115 | \fIinetd\fP daemon is tricked into running the \fItcpd\fP program | ||
| 116 | instead of the desired server. \fItcpd\fP logs the request and does | ||
| 117 | some additional checks. When all is well, \fItcpd\fP runs the | ||
| 118 | @@ -88,11 +92,11 @@ configuration files. | ||
| 119 | .sp | ||
| 120 | .in +5 | ||
| 121 | # mkdir /other/place | ||
| 122 | -# mv /usr/etc/in.fingerd /other/place | ||
| 123 | -# cp tcpd /usr/etc/in.fingerd | ||
| 124 | +# mv /usr/sbin/in.fingerd /other/place | ||
| 125 | +# cp tcpd /usr/sbin/in.fingerd | ||
| 126 | .fi | ||
| 127 | .PP | ||
| 128 | -The example assumes that the network daemons live in /usr/etc. On some | ||
| 129 | +The example assumes that the network daemons live in /usr/sbin. On some | ||
| 130 | systems, network daemons live in /usr/sbin or in /usr/libexec, or have | ||
| 131 | no `in.\' prefix to their name. | ||
| 132 | .SH EXAMPLE 2 | ||
| 133 | @@ -101,35 +105,34 @@ are left in their original place. | ||
| 134 | .PP | ||
| 135 | In order to monitor access to the \fIfinger\fR service, perform the | ||
| 136 | following edits on the \fIinetd\fR configuration file (usually | ||
| 137 | -\fI/etc/inetd.conf\fR or \fI/etc/inet/inetd.conf\fR): | ||
| 138 | +\fI/etc/inetd.conf\fR): | ||
| 139 | .nf | ||
| 140 | .sp | ||
| 141 | .ti +5 | ||
| 142 | -finger stream tcp nowait nobody /usr/etc/in.fingerd in.fingerd | ||
| 143 | +finger stream tcp nowait nobody /usr/sbin/in.fingerd in.fingerd | ||
| 144 | .sp | ||
| 145 | becomes: | ||
| 146 | .sp | ||
| 147 | .ti +5 | ||
| 148 | -finger stream tcp nowait nobody /some/where/tcpd in.fingerd | ||
| 149 | +finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd | ||
| 150 | .sp | ||
| 151 | .fi | ||
| 152 | .PP | ||
| 153 | -The example assumes that the network daemons live in /usr/etc. On some | ||
| 154 | +The example assumes that the network daemons live in /usr/sbin. On some | ||
| 155 | systems, network daemons live in /usr/sbin or in /usr/libexec, the | ||
| 156 | daemons have no `in.\' prefix to their name, or there is no userid | ||
| 157 | field in the inetd configuration file. | ||
| 158 | .PP | ||
| 159 | Similar changes will be needed for the other services that are to be | ||
| 160 | covered by \fItcpd\fR. Send a `kill -HUP\' to the \fIinetd\fR(8) | ||
| 161 | -process to make the changes effective. AIX users may also have to | ||
| 162 | -execute the `inetimp\' command. | ||
| 163 | +process to make the changes effective. | ||
| 164 | .SH EXAMPLE 3 | ||
| 165 | In the case of daemons that do not live in a common directory ("secret" | ||
| 166 | or otherwise), edit the \fIinetd\fR configuration file so that it | ||
| 167 | specifies an absolute path name for the process name field. For example: | ||
| 168 | .nf | ||
| 169 | .sp | ||
| 170 | - ntalk dgram udp wait root /some/where/tcpd /usr/local/lib/ntalkd | ||
| 171 | + ntalk dgram udp wait root /usr/sbin/tcpd /usr/local/lib/ntalkd | ||
| 172 | .sp | ||
| 173 | .fi | ||
| 174 | .PP | ||
| 175 | @@ -164,6 +167,7 @@ The default locations of the host access | ||
| 176 | .SH SEE ALSO | ||
| 177 | .na | ||
| 178 | .nf | ||
| 179 | +hosts_access(3), functions provided by the libwrap library. | ||
| 180 | hosts_access(5), format of the tcpd access control tables. | ||
| 181 | syslog.conf(5), format of the syslogd control file. | ||
| 182 | inetd.conf(5), format of the inetd control file. | ||
| 183 | diff -ruNp tcp_wrappers_7.6.orig/tcpdchk.8 tcp_wrappers_7.6/tcpdchk.8 | ||
| 184 | --- tcp_wrappers_7.6.orig/tcpdchk.8 1995-01-08 17:00:31.000000000 +0100 | ||
| 185 | +++ tcp_wrappers_7.6/tcpdchk.8 2005-03-09 18:27:03.000000000 +0100 | ||
| 186 | @@ -9,8 +9,8 @@ tcpdchk [-a] [-d] [-i inet_conf] [-v] | ||
| 187 | potential and real problems it can find. The program examines the | ||
| 188 | \fItcpd\fR access control files (by default, these are | ||
| 189 | \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR), and compares the | ||
| 190 | -entries in these files against entries in the \fIinetd\fR or \fItlid\fR | ||
| 191 | -network configuration files. | ||
| 192 | +entries in these files against entries in the \fIinetd\fR | ||
| 193 | +network configuration file. | ||
| 194 | .PP | ||
| 195 | \fItcpdchk\fR reports problems such as non-existent pathnames; services | ||
| 196 | that appear in \fItcpd\fR access control rules, but are not controlled | ||
| 197 | @@ -26,14 +26,13 @@ problem. | ||
| 198 | .SH OPTIONS | ||
| 199 | .IP -a | ||
| 200 | Report access control rules that permit access without an explicit | ||
| 201 | -ALLOW keyword. This applies only when the extended access control | ||
| 202 | -language is enabled (build with -DPROCESS_OPTIONS). | ||
| 203 | +ALLOW keyword. | ||
| 204 | .IP -d | ||
| 205 | Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current | ||
| 206 | directory instead of the default ones. | ||
| 207 | .IP "-i inet_conf" | ||
| 208 | Specify this option when \fItcpdchk\fR is unable to find your | ||
| 209 | -\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when | ||
| 210 | +\fIinetd.conf\fR network configuration file, or when | ||
| 211 | you suspect that the program uses the wrong one. | ||
| 212 | .IP -v | ||
| 213 | Display the contents of each access control rule. Daemon lists, client | ||
| 214 | @@ -54,7 +53,6 @@ tcpdmatch(8), explain what tcpd would do | ||
| 215 | hosts_access(5), format of the tcpd access control tables. | ||
| 216 | hosts_options(5), format of the language extensions. | ||
| 217 | inetd.conf(5), format of the inetd control file. | ||
| 218 | -tlid.conf(5), format of the tlid control file. | ||
| 219 | .SH AUTHORS | ||
| 220 | .na | ||
| 221 | .nf | ||
| 222 | diff -ruNp tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 | ||
| 223 | --- tcp_wrappers_7.6.orig/tcpdmatch.8 2005-03-09 18:30:24.000000000 +0100 | ||
| 224 | +++ tcp_wrappers_7.6/tcpdmatch.8 2005-03-09 18:27:03.000000000 +0100 | ||
| 225 | @@ -13,7 +13,7 @@ request for service. Examples are given | ||
| 226 | The program examines the \fItcpd\fR access control tables (default | ||
| 227 | \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR) and prints its | ||
| 228 | conclusion. For maximal accuracy, it extracts additional information | ||
| 229 | -from your \fIinetd\fR or \fItlid\fR network configuration file. | ||
| 230 | +from your \fIinetd\fR network configuration file. | ||
| 231 | .PP | ||
| 232 | When \fItcpdmatch\fR finds a match in the access control tables, it | ||
| 233 | identifies the matched rule. In addition, it displays the optional | ||
| 234 | @@ -50,7 +50,7 @@ Examine \fIhosts.allow\fR and \fIhosts.d | ||
| 235 | directory instead of the default ones. | ||
| 236 | .IP "-i inet_conf" | ||
| 237 | Specify this option when \fItcpdmatch\fR is unable to find your | ||
| 238 | -\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when | ||
| 239 | +\fIinetd.conf\fR network configuration file, or when | ||
| 240 | you suspect that the program uses the wrong one. | ||
| 241 | .SH EXAMPLES | ||
| 242 | To predict how \fItcpd\fR would handle a telnet request from the local | ||
| 243 | @@ -86,7 +86,6 @@ tcpdchk(8), tcpd configuration checker | ||
| 244 | hosts_access(5), format of the tcpd access control tables. | ||
| 245 | hosts_options(5), format of the language extensions. | ||
| 246 | inetd.conf(5), format of the inetd control file. | ||
| 247 | -tlid.conf(5), format of the tlid control file. | ||
| 248 | .SH AUTHORS | ||
| 249 | .na | ||
| 250 | .nf | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch deleted file mode 100644 index 525cd3531b..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch +++ /dev/null | |||
| @@ -1,105 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=17847 | ||
| 4 | |||
| 5 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 6 | --- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 18:54:33.000000000 +0200 | ||
| 7 | +++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 18:54:27.000000000 +0200 | ||
| 8 | @@ -89,6 +89,10 @@ | ||
| 9 | bitwise AND of the address and the `mask\'. For example, the net/mask | ||
| 10 | pattern `131.155.72.0/255.255.254.0\' matches every address in the | ||
| 11 | range `131.155.72.0\' through `131.155.73.255\'. | ||
| 12 | +.IP \(bu | ||
| 13 | +Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This | ||
| 14 | +method of matching cannot be used in conjunction with `net/mask\' matching, | ||
| 15 | +hostname matching beginning with `.\' or IP address matching ending with `.\'. | ||
| 16 | .SH WILDCARDS | ||
| 17 | The access control language supports explicit wildcards: | ||
| 18 | .IP ALL | ||
| 19 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c | ||
| 20 | --- tcp_wrappers_7.6.orig/hosts_access.c 1997-02-12 02:13:23.000000000 +0100 | ||
| 21 | +++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 18:52:21.000000000 +0200 | ||
| 22 | @@ -289,6 +289,11 @@ | ||
| 23 | { | ||
| 24 | int n; | ||
| 25 | |||
| 26 | +#ifndef DISABLE_WILDCARD_MATCHING | ||
| 27 | + if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ | ||
| 28 | + return (match_pattern_ylo(string,tok)); | ||
| 29 | + } else | ||
| 30 | +#endif | ||
| 31 | if (tok[0] == '.') { /* suffix */ | ||
| 32 | n = strlen(string) - strlen(tok); | ||
| 33 | return (n > 0 && STR_EQ(tok, string + n)); | ||
| 34 | @@ -329,3 +334,71 @@ | ||
| 35 | } | ||
| 36 | return ((addr & mask) == net); | ||
| 37 | } | ||
| 38 | + | ||
| 39 | +#ifndef DISABLE_WILDCARD_MATCHING | ||
| 40 | +/* Note: this feature has been adapted in a pretty straightforward way | ||
| 41 | + from Tatu Ylonen's last SSH version under free license by | ||
| 42 | + Pekka Savola <pekkas@netcore.fi>. | ||
| 43 | + | ||
| 44 | + Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | ||
| 45 | +*/ | ||
| 46 | + | ||
| 47 | +/* Returns true if the given string matches the pattern (which may contain | ||
| 48 | + ? and * as wildcards), and zero if it does not match. */ | ||
| 49 | + | ||
| 50 | +int match_pattern_ylo(const char *s, const char *pattern) | ||
| 51 | +{ | ||
| 52 | + while (1) | ||
| 53 | + { | ||
| 54 | + /* If at end of pattern, accept if also at end of string. */ | ||
| 55 | + if (!*pattern) | ||
| 56 | + return !*s; | ||
| 57 | + | ||
| 58 | + /* Process '*'. */ | ||
| 59 | + if (*pattern == '*') | ||
| 60 | + { | ||
| 61 | + /* Skip the asterisk. */ | ||
| 62 | + pattern++; | ||
| 63 | + | ||
| 64 | + /* If at end of pattern, accept immediately. */ | ||
| 65 | + if (!*pattern) | ||
| 66 | + return 1; | ||
| 67 | + | ||
| 68 | + /* If next character in pattern is known, optimize. */ | ||
| 69 | + if (*pattern != '?' && *pattern != '*') | ||
| 70 | + { | ||
| 71 | + /* Look instances of the next character in pattern, and try | ||
| 72 | + to match starting from those. */ | ||
| 73 | + for (; *s; s++) | ||
| 74 | + if (*s == *pattern && | ||
| 75 | + match_pattern_ylo(s + 1, pattern + 1)) | ||
| 76 | + return 1; | ||
| 77 | + /* Failed. */ | ||
| 78 | + return 0; | ||
| 79 | + } | ||
| 80 | + | ||
| 81 | + /* Move ahead one character at a time and try to match at each | ||
| 82 | + position. */ | ||
| 83 | + for (; *s; s++) | ||
| 84 | + if (match_pattern_ylo(s, pattern)) | ||
| 85 | + return 1; | ||
| 86 | + /* Failed. */ | ||
| 87 | + return 0; | ||
| 88 | + } | ||
| 89 | + | ||
| 90 | + /* There must be at least one more character in the string. If we are | ||
| 91 | + at the end, fail. */ | ||
| 92 | + if (!*s) | ||
| 93 | + return 0; | ||
| 94 | + | ||
| 95 | + /* Check if the next character of the string is acceptable. */ | ||
| 96 | + if (*pattern != '?' && *pattern != *s) | ||
| 97 | + return 0; | ||
| 98 | + | ||
| 99 | + /* Move to the next character, both in string and in pattern. */ | ||
| 100 | + s++; | ||
| 101 | + pattern++; | ||
| 102 | + } | ||
| 103 | + /*NOTREACHED*/ | ||
| 104 | +} | ||
| 105 | +#endif /* DISABLE_WILDCARD_MATCHING */ | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch deleted file mode 100644 index 1f3f9e24ac..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | * Mon Feb 5 2001 Preston Brown <pbrown@redhat.com> | ||
| 4 | - fix gethostbyname to work better with dot "." notation (#16949) | ||
| 5 | |||
| 6 | --- tcp_wrappers_7.6/socket.c.fixgethostbyname Fri Mar 21 13:27:25 1997 | ||
| 7 | +++ tcp_wrappers_7.6/socket.c Mon Feb 5 14:09:40 2001 | ||
| 8 | @@ -52,7 +52,8 @@ | ||
| 9 | char *name; | ||
| 10 | { | ||
| 11 | char dot_name[MAXHOSTNAMELEN + 1]; | ||
| 12 | - | ||
| 13 | + struct hostent *hp; | ||
| 14 | + | ||
| 15 | /* | ||
| 16 | * Don't append dots to unqualified names. Such names are likely to come | ||
| 17 | * from local hosts files or from NIS. | ||
| 18 | @@ -61,8 +62,12 @@ | ||
| 19 | if (strchr(name, '.') == 0 || strlen(name) >= MAXHOSTNAMELEN - 1) { | ||
| 20 | return (gethostbyname(name)); | ||
| 21 | } else { | ||
| 22 | - sprintf(dot_name, "%s.", name); | ||
| 23 | - return (gethostbyname(dot_name)); | ||
| 24 | + sprintf(dot_name, "%s.", name); | ||
| 25 | + hp = gethostbyname(dot_name); | ||
| 26 | + if (hp) | ||
| 27 | + return hp; | ||
| 28 | + else | ||
| 29 | + return (gethostbyname(name)); | ||
| 30 | } | ||
| 31 | } | ||
| 32 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch deleted file mode 100644 index ea45777734..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch +++ /dev/null | |||
| @@ -1,1255 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/fix_options.c tcp_wrappers_7.6/fix_options.c | ||
| 4 | --- tcp_wrappers_7.6.orig/fix_options.c 1997-04-08 02:29:19.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/fix_options.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 6 | @@ -11,6 +11,9 @@ | ||
| 7 | |||
| 8 | #include <sys/types.h> | ||
| 9 | #include <sys/param.h> | ||
| 10 | +#ifdef INET6 | ||
| 11 | +#include <sys/socket.h> | ||
| 12 | +#endif | ||
| 13 | #include <netinet/in.h> | ||
| 14 | #include <netinet/in_systm.h> | ||
| 15 | #include <netinet/ip.h> | ||
| 16 | @@ -41,6 +44,22 @@ | ||
| 17 | unsigned int opt; | ||
| 18 | int optlen; | ||
| 19 | struct in_addr dummy; | ||
| 20 | +#ifdef INET6 | ||
| 21 | + struct sockaddr_storage ss; | ||
| 22 | + int sslen; | ||
| 23 | + | ||
| 24 | + /* | ||
| 25 | + * check if this is AF_INET socket | ||
| 26 | + * XXX IPv6 support? | ||
| 27 | + */ | ||
| 28 | + sslen = sizeof(ss); | ||
| 29 | + if (getsockname(fd, (struct sockaddr *)&ss, &sslen) < 0) { | ||
| 30 | + syslog(LOG_ERR, "getpeername: %m"); | ||
| 31 | + clean_exit(request); | ||
| 32 | + } | ||
| 33 | + if (ss.ss_family != AF_INET) | ||
| 34 | + return; | ||
| 35 | +#endif | ||
| 36 | |||
| 37 | if ((ip = getprotobyname("ip")) != 0) | ||
| 38 | ipproto = ip->p_proto; | ||
| 39 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 40 | --- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:22:58.000000000 +0200 | ||
| 41 | +++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:07:43.000000000 +0200 | ||
| 42 | @@ -85,11 +85,18 @@ | ||
| 43 | for daemon process names or for client user names. | ||
| 44 | .IP \(bu | ||
| 45 | An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a | ||
| 46 | -`net/mask\' pair. A host address is matched if `net\' is equal to the | ||
| 47 | +`net/mask\' pair. An IPv4 host address is matched if `net\' is equal to the | ||
| 48 | bitwise AND of the address and the `mask\'. For example, the net/mask | ||
| 49 | pattern `131.155.72.0/255.255.254.0\' matches every address in the | ||
| 50 | range `131.155.72.0\' through `131.155.73.255\'. | ||
| 51 | .IP \(bu | ||
| 52 | +An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a | ||
| 53 | +`[net]/prefixlen\' pair. An IPv6 host address is matched if | ||
| 54 | +`prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the | ||
| 55 | +address. For example, the [net]/prefixlen pattern | ||
| 56 | +`[3ffe:505:2:1::]/64\' matches every address in the range | ||
| 57 | +`3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. | ||
| 58 | +.IP \(bu | ||
| 59 | Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This | ||
| 60 | method of matching cannot be used in conjunction with `net/mask\' matching, | ||
| 61 | hostname matching beginning with `.\' or IP address matching ending with `.\'. | ||
| 62 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c | ||
| 63 | --- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:22:58.000000000 +0200 | ||
| 64 | +++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 65 | @@ -24,7 +24,13 @@ | ||
| 66 | /* System libraries. */ | ||
| 67 | |||
| 68 | #include <sys/types.h> | ||
| 69 | +#ifdef INT32_T | ||
| 70 | + typedef uint32_t u_int32_t; | ||
| 71 | +#endif | ||
| 72 | #include <sys/param.h> | ||
| 73 | +#ifdef INET6 | ||
| 74 | +#include <sys/socket.h> | ||
| 75 | +#endif | ||
| 76 | #include <netinet/in.h> | ||
| 77 | #include <arpa/inet.h> | ||
| 78 | #include <stdio.h> | ||
| 79 | @@ -33,6 +39,9 @@ | ||
| 80 | #include <errno.h> | ||
| 81 | #include <setjmp.h> | ||
| 82 | #include <string.h> | ||
| 83 | +#ifdef INET6 | ||
| 84 | +#include <netdb.h> | ||
| 85 | +#endif | ||
| 86 | |||
| 87 | extern char *fgets(); | ||
| 88 | extern int errno; | ||
| 89 | @@ -82,6 +91,10 @@ | ||
| 90 | static int host_match(); | ||
| 91 | static int string_match(); | ||
| 92 | static int masked_match(); | ||
| 93 | +#ifdef INET6 | ||
| 94 | +static int masked_match4(); | ||
| 95 | +static int masked_match6(); | ||
| 96 | +#endif | ||
| 97 | |||
| 98 | /* Size of logical line buffer. */ | ||
| 99 | |||
| 100 | @@ -289,6 +302,13 @@ | ||
| 101 | { | ||
| 102 | int n; | ||
| 103 | |||
| 104 | +#ifdef INET6 | ||
| 105 | + /* convert IPv4 mapped IPv6 address to IPv4 address */ | ||
| 106 | + if (STRN_EQ(string, "::ffff:", 7) | ||
| 107 | + && dot_quad_addr(string + 7) != INADDR_NONE) { | ||
| 108 | + string += 7; | ||
| 109 | + } | ||
| 110 | +#endif | ||
| 111 | #ifndef DISABLE_WILDCARD_MATCHING | ||
| 112 | if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ | ||
| 113 | return (match_pattern_ylo(string,tok)); | ||
| 114 | @@ -304,20 +324,72 @@ | ||
| 115 | } else if (tok[(n = strlen(tok)) - 1] == '.') { /* prefix */ | ||
| 116 | return (STRN_EQ(tok, string, n)); | ||
| 117 | } else { /* exact match */ | ||
| 118 | +#ifdef INET6 | ||
| 119 | + struct addrinfo hints, *res; | ||
| 120 | + struct sockaddr_in6 pat, addr; | ||
| 121 | + int len, ret; | ||
| 122 | + char ch; | ||
| 123 | + | ||
| 124 | + len = strlen(tok); | ||
| 125 | + if (*tok == '[' && tok[len - 1] == ']') { | ||
| 126 | + ch = tok[len - 1]; | ||
| 127 | + tok[len - 1] = '\0'; | ||
| 128 | + memset(&hints, 0, sizeof(hints)); | ||
| 129 | + hints.ai_family = AF_INET6; | ||
| 130 | + hints.ai_socktype = SOCK_STREAM; | ||
| 131 | + hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; | ||
| 132 | + if ((ret = getaddrinfo(tok + 1, NULL, &hints, &res)) == 0) { | ||
| 133 | + memcpy(&pat, res->ai_addr, sizeof(pat)); | ||
| 134 | + freeaddrinfo(res); | ||
| 135 | + } | ||
| 136 | + tok[len - 1] = ch; | ||
| 137 | + if (ret != 0 || getaddrinfo(string, NULL, &hints, &res) != 0) | ||
| 138 | + return NO; | ||
| 139 | + memcpy(&addr, res->ai_addr, sizeof(addr)); | ||
| 140 | + freeaddrinfo(res); | ||
| 141 | +#ifdef NI_WITHSCOPEID | ||
| 142 | + if (pat.sin6_scope_id != 0 && | ||
| 143 | + addr.sin6_scope_id != pat.sin6_scope_id) | ||
| 144 | + return NO; | ||
| 145 | +#endif | ||
| 146 | + return (!memcmp(&pat.sin6_addr, &addr.sin6_addr, | ||
| 147 | + sizeof(struct in6_addr))); | ||
| 148 | + return (ret); | ||
| 149 | + } | ||
| 150 | +#endif | ||
| 151 | return (STR_EQ(tok, string)); | ||
| 152 | } | ||
| 153 | } | ||
| 154 | |||
| 155 | /* masked_match - match address against netnumber/netmask */ | ||
| 156 | |||
| 157 | +#ifdef INET6 | ||
| 158 | static int masked_match(net_tok, mask_tok, string) | ||
| 159 | char *net_tok; | ||
| 160 | char *mask_tok; | ||
| 161 | char *string; | ||
| 162 | { | ||
| 163 | + return (masked_match4(net_tok, mask_tok, string) || | ||
| 164 | + masked_match6(net_tok, mask_tok, string)); | ||
| 165 | +} | ||
| 166 | + | ||
| 167 | +static int masked_match4(net_tok, mask_tok, string) | ||
| 168 | +#else | ||
| 169 | +static int masked_match(net_tok, mask_tok, string) | ||
| 170 | +#endif | ||
| 171 | +char *net_tok; | ||
| 172 | +char *mask_tok; | ||
| 173 | +char *string; | ||
| 174 | +{ | ||
| 175 | +#ifdef INET6 | ||
| 176 | + u_int32_t net; | ||
| 177 | + u_int32_t mask; | ||
| 178 | + u_int32_t addr; | ||
| 179 | +#else | ||
| 180 | unsigned long net; | ||
| 181 | unsigned long mask; | ||
| 182 | unsigned long addr; | ||
| 183 | +#endif | ||
| 184 | |||
| 185 | /* | ||
| 186 | * Disallow forms other than dotted quad: the treatment that inet_addr() | ||
| 187 | @@ -329,12 +401,78 @@ | ||
| 188 | return (NO); | ||
| 189 | if ((net = dot_quad_addr(net_tok)) == INADDR_NONE | ||
| 190 | || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { | ||
| 191 | +#ifndef INET6 | ||
| 192 | tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); | ||
| 193 | +#endif | ||
| 194 | return (NO); /* not tcpd_jump() */ | ||
| 195 | } | ||
| 196 | return ((addr & mask) == net); | ||
| 197 | } | ||
| 198 | |||
| 199 | +#ifdef INET6 | ||
| 200 | +static int masked_match6(net_tok, mask_tok, string) | ||
| 201 | +char *net_tok; | ||
| 202 | +char *mask_tok; | ||
| 203 | +char *string; | ||
| 204 | +{ | ||
| 205 | + struct addrinfo hints, *res; | ||
| 206 | + struct sockaddr_in6 net, addr; | ||
| 207 | + u_int32_t mask; | ||
| 208 | + int len, mask_len, i = 0; | ||
| 209 | + char ch; | ||
| 210 | + | ||
| 211 | + memset(&hints, 0, sizeof(hints)); | ||
| 212 | + hints.ai_family = AF_INET6; | ||
| 213 | + hints.ai_socktype = SOCK_STREAM; | ||
| 214 | + hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; | ||
| 215 | + if (getaddrinfo(string, NULL, &hints, &res) != 0) | ||
| 216 | + return NO; | ||
| 217 | + memcpy(&addr, res->ai_addr, sizeof(addr)); | ||
| 218 | + freeaddrinfo(res); | ||
| 219 | + | ||
| 220 | + if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { | ||
| 221 | + if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE | ||
| 222 | + || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) | ||
| 223 | + return (NO); | ||
| 224 | + return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); | ||
| 225 | + } | ||
| 226 | + | ||
| 227 | + /* match IPv6 address against netnumber/prefixlen */ | ||
| 228 | + len = strlen(net_tok); | ||
| 229 | + if (*net_tok != '[' || net_tok[len - 1] != ']') | ||
| 230 | + return NO; | ||
| 231 | + ch = net_tok[len - 1]; | ||
| 232 | + net_tok[len - 1] = '\0'; | ||
| 233 | + if (getaddrinfo(net_tok + 1, NULL, &hints, &res) != 0) { | ||
| 234 | + net_tok[len - 1] = ch; | ||
| 235 | + return NO; | ||
| 236 | + } | ||
| 237 | + memcpy(&net, res->ai_addr, sizeof(net)); | ||
| 238 | + freeaddrinfo(res); | ||
| 239 | + net_tok[len - 1] = ch; | ||
| 240 | + if ((mask_len = atoi(mask_tok)) < 0 || mask_len > 128) | ||
| 241 | + return NO; | ||
| 242 | + | ||
| 243 | +#ifdef NI_WITHSCOPEID | ||
| 244 | + if (net.sin6_scope_id != 0 && addr.sin6_scope_id != net.sin6_scope_id) | ||
| 245 | + return NO; | ||
| 246 | +#endif | ||
| 247 | + while (mask_len > 0) { | ||
| 248 | + if (mask_len < 32) { | ||
| 249 | + mask = htonl(~(0xffffffff >> mask_len)); | ||
| 250 | + if ((*(u_int32_t *)&addr.sin6_addr.s6_addr[i] & mask) != (*(u_int32_t *)&net.sin6_addr.s6_addr[i] & mask)) | ||
| 251 | + return NO; | ||
| 252 | + break; | ||
| 253 | + } | ||
| 254 | + if (*(u_int32_t *)&addr.sin6_addr.s6_addr[i] != *(u_int32_t *)&net.sin6_addr.s6_addr[i]) | ||
| 255 | + return NO; | ||
| 256 | + i += 4; | ||
| 257 | + mask_len -= 32; | ||
| 258 | + } | ||
| 259 | + return YES; | ||
| 260 | +} | ||
| 261 | +#endif /* INET6 */ | ||
| 262 | + | ||
| 263 | #ifndef DISABLE_WILDCARD_MATCHING | ||
| 264 | /* Note: this feature has been adapted in a pretty straightforward way | ||
| 265 | from Tatu Ylonen's last SSH version under free license by | ||
| 266 | diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile | ||
| 267 | --- tcp_wrappers_7.6.orig/Makefile 1997-03-21 19:27:21.000000000 +0100 | ||
| 268 | +++ tcp_wrappers_7.6/Makefile 2004-04-10 19:22:44.000000000 +0200 | ||
| 269 | @@ -21,7 +21,7 @@ | ||
| 270 | @echo " dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix" | ||
| 271 | @echo " linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211" | ||
| 272 | @echo " ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4" | ||
| 273 | - @echo " sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" | ||
| 274 | + @echo " sunos40 sunos5 solaris8 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" | ||
| 275 | @echo " uts215 uxp" | ||
| 276 | @echo | ||
| 277 | @echo "If none of these match your environment, edit the system" | ||
| 278 | @@ -131,20 +131,34 @@ | ||
| 279 | NETGROUP=-DNETGROUP TLI= SYSTYPE="-systype bsd43" all | ||
| 280 | |||
| 281 | # Freebsd and linux by default have no NIS. | ||
| 282 | -386bsd netbsd bsdos: | ||
| 283 | +386bsd bsdos: | ||
| 284 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 285 | LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ | ||
| 286 | EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all | ||
| 287 | |||
| 288 | freebsd: | ||
| 289 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 290 | + LIBS="-L/usr/local/v6/lib -linet6" \ | ||
| 291 | LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ | ||
| 292 | - EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all | ||
| 293 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" \ | ||
| 294 | + VSYSLOG= all | ||
| 295 | + | ||
| 296 | +netbsd: | ||
| 297 | + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 298 | + LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ | ||
| 299 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" VSYSLOG= all | ||
| 300 | |||
| 301 | linux: | ||
| 302 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 303 | - LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \ | ||
| 304 | - NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all | ||
| 305 | + LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ | ||
| 306 | + NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ | ||
| 307 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all | ||
| 308 | + | ||
| 309 | +gnu: | ||
| 310 | + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 311 | + LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ | ||
| 312 | + NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ | ||
| 313 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all | ||
| 314 | |||
| 315 | # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. | ||
| 316 | hpux hpux8 hpux9 hpux10: | ||
| 317 | @@ -196,6 +210,13 @@ | ||
| 318 | NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ | ||
| 319 | BUGS="$(BUGS) -DSOLARIS_24_GETHOSTBYNAME_BUG" all | ||
| 320 | |||
| 321 | +# SunOS 5.8 is another SYSV4 variant, but has IPv6 support | ||
| 322 | +solaris8: | ||
| 323 | + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 324 | + LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv VSYSLOG= \ | ||
| 325 | + NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ | ||
| 326 | + EXTRA_CFLAGS="-DINET6 -DNO_CLONE_DEVICE -DINT32_T" all | ||
| 327 | + | ||
| 328 | # Generic SYSV40 | ||
| 329 | esix sysv4: | ||
| 330 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 331 | diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c | ||
| 332 | --- tcp_wrappers_7.6.orig/misc.c 1996-02-11 17:01:30.000000000 +0100 | ||
| 333 | +++ tcp_wrappers_7.6/misc.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 334 | @@ -58,9 +58,31 @@ | ||
| 335 | { | ||
| 336 | char *cp; | ||
| 337 | |||
| 338 | +#ifdef INET6 | ||
| 339 | + int bracket = 0; | ||
| 340 | + | ||
| 341 | + for (cp = string; cp && *cp; cp++) { | ||
| 342 | + switch (*cp) { | ||
| 343 | + case '[': | ||
| 344 | + bracket++; | ||
| 345 | + break; | ||
| 346 | + case ']': | ||
| 347 | + bracket--; | ||
| 348 | + break; | ||
| 349 | + default: | ||
| 350 | + if (bracket == 0 && *cp == delimiter) { | ||
| 351 | + *cp++ = 0; | ||
| 352 | + return cp; | ||
| 353 | + } | ||
| 354 | + break; | ||
| 355 | + } | ||
| 356 | + } | ||
| 357 | + return (NULL); | ||
| 358 | +#else | ||
| 359 | if ((cp = strchr(string, delimiter)) != 0) | ||
| 360 | *cp++ = 0; | ||
| 361 | return (cp); | ||
| 362 | +#endif | ||
| 363 | } | ||
| 364 | |||
| 365 | /* dot_quad_addr - convert dotted quad to internal form */ | ||
| 366 | diff -ruN tcp_wrappers_7.6.orig/refuse.c tcp_wrappers_7.6/refuse.c | ||
| 367 | --- tcp_wrappers_7.6.orig/refuse.c 1994-12-28 17:42:40.000000000 +0100 | ||
| 368 | +++ tcp_wrappers_7.6/refuse.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 369 | @@ -25,7 +25,12 @@ | ||
| 370 | void refuse(request) | ||
| 371 | struct request_info *request; | ||
| 372 | { | ||
| 373 | +#ifdef INET6 | ||
| 374 | + syslog(deny_severity, "refused connect from %s (%s)", | ||
| 375 | + eval_client(request), eval_hostaddr(request->client)); | ||
| 376 | +#else | ||
| 377 | syslog(deny_severity, "refused connect from %s", eval_client(request)); | ||
| 378 | +#endif | ||
| 379 | clean_exit(request); | ||
| 380 | /* NOTREACHED */ | ||
| 381 | } | ||
| 382 | diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c | ||
| 383 | --- tcp_wrappers_7.6.orig/rfc931.c 1995-01-02 16:11:34.000000000 +0100 | ||
| 384 | +++ tcp_wrappers_7.6/rfc931.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 385 | @@ -68,20 +68,50 @@ | ||
| 386 | /* rfc931 - return remote user name, given socket structures */ | ||
| 387 | |||
| 388 | void rfc931(rmt_sin, our_sin, dest) | ||
| 389 | +#ifdef INET6 | ||
| 390 | +struct sockaddr *rmt_sin; | ||
| 391 | +struct sockaddr *our_sin; | ||
| 392 | +#else | ||
| 393 | struct sockaddr_in *rmt_sin; | ||
| 394 | struct sockaddr_in *our_sin; | ||
| 395 | +#endif | ||
| 396 | char *dest; | ||
| 397 | { | ||
| 398 | unsigned rmt_port; | ||
| 399 | unsigned our_port; | ||
| 400 | +#ifdef INET6 | ||
| 401 | + struct sockaddr_storage rmt_query_sin; | ||
| 402 | + struct sockaddr_storage our_query_sin; | ||
| 403 | + int alen; | ||
| 404 | +#else | ||
| 405 | struct sockaddr_in rmt_query_sin; | ||
| 406 | struct sockaddr_in our_query_sin; | ||
| 407 | +#endif | ||
| 408 | char user[256]; /* XXX */ | ||
| 409 | char buffer[512]; /* XXX */ | ||
| 410 | char *cp; | ||
| 411 | char *result = unknown; | ||
| 412 | FILE *fp; | ||
| 413 | |||
| 414 | +#ifdef INET6 | ||
| 415 | + /* address family must be the same */ | ||
| 416 | + if (rmt_sin->sa_family != our_sin->sa_family) { | ||
| 417 | + STRN_CPY(dest, result, STRING_LENGTH); | ||
| 418 | + return; | ||
| 419 | + } | ||
| 420 | + switch (our_sin->sa_family) { | ||
| 421 | + case AF_INET: | ||
| 422 | + alen = sizeof(struct sockaddr_in); | ||
| 423 | + break; | ||
| 424 | + case AF_INET6: | ||
| 425 | + alen = sizeof(struct sockaddr_in6); | ||
| 426 | + break; | ||
| 427 | + default: | ||
| 428 | + STRN_CPY(dest, result, STRING_LENGTH); | ||
| 429 | + return; | ||
| 430 | + } | ||
| 431 | +#endif | ||
| 432 | + | ||
| 433 | /* | ||
| 434 | * Use one unbuffered stdio stream for writing to and for reading from | ||
| 435 | * the RFC931 etc. server. This is done because of a bug in the SunOS | ||
| 436 | @@ -92,7 +122,11 @@ | ||
| 437 | * sockets. | ||
| 438 | */ | ||
| 439 | |||
| 440 | +#ifdef INET6 | ||
| 441 | + if ((fp = fsocket(our_sin->sa_family, SOCK_STREAM, 0)) != 0) { | ||
| 442 | +#else | ||
| 443 | if ((fp = fsocket(AF_INET, SOCK_STREAM, 0)) != 0) { | ||
| 444 | +#endif | ||
| 445 | setbuf(fp, (char *) 0); | ||
| 446 | |||
| 447 | /* | ||
| 448 | @@ -112,6 +146,25 @@ | ||
| 449 | * addresses from the query socket. | ||
| 450 | */ | ||
| 451 | |||
| 452 | +#ifdef INET6 | ||
| 453 | + memcpy(&our_query_sin, our_sin, alen); | ||
| 454 | + memcpy(&rmt_query_sin, rmt_sin, alen); | ||
| 455 | + switch (our_sin->sa_family) { | ||
| 456 | + case AF_INET: | ||
| 457 | + ((struct sockaddr_in *)&our_query_sin)->sin_port = htons(ANY_PORT); | ||
| 458 | + ((struct sockaddr_in *)&rmt_query_sin)->sin_port = htons(RFC931_PORT); | ||
| 459 | + break; | ||
| 460 | + case AF_INET6: | ||
| 461 | + ((struct sockaddr_in6 *)&our_query_sin)->sin6_port = htons(ANY_PORT); | ||
| 462 | + ((struct sockaddr_in6 *)&rmt_query_sin)->sin6_port = htons(RFC931_PORT); | ||
| 463 | + break; | ||
| 464 | + } | ||
| 465 | + | ||
| 466 | + if (bind(fileno(fp), (struct sockaddr *) & our_query_sin, | ||
| 467 | + alen) >= 0 && | ||
| 468 | + connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, | ||
| 469 | + alen) >= 0) { | ||
| 470 | +#else | ||
| 471 | our_query_sin = *our_sin; | ||
| 472 | our_query_sin.sin_port = htons(ANY_PORT); | ||
| 473 | rmt_query_sin = *rmt_sin; | ||
| 474 | @@ -121,6 +174,7 @@ | ||
| 475 | sizeof(our_query_sin)) >= 0 && | ||
| 476 | connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, | ||
| 477 | sizeof(rmt_query_sin)) >= 0) { | ||
| 478 | +#endif | ||
| 479 | |||
| 480 | /* | ||
| 481 | * Send query to server. Neglect the risk that a 13-byte | ||
| 482 | @@ -129,8 +183,13 @@ | ||
| 483 | */ | ||
| 484 | |||
| 485 | fprintf(fp, "%u,%u\r\n", | ||
| 486 | +#ifdef INET6 | ||
| 487 | + ntohs(((struct sockaddr_in *)rmt_sin)->sin_port), | ||
| 488 | + ntohs(((struct sockaddr_in *)our_sin)->sin_port)); | ||
| 489 | +#else | ||
| 490 | ntohs(rmt_sin->sin_port), | ||
| 491 | ntohs(our_sin->sin_port)); | ||
| 492 | +#endif | ||
| 493 | fflush(fp); | ||
| 494 | |||
| 495 | /* | ||
| 496 | @@ -144,8 +203,13 @@ | ||
| 497 | && ferror(fp) == 0 && feof(fp) == 0 | ||
| 498 | && sscanf(buffer, "%u , %u : USERID :%*[^:]:%255s", | ||
| 499 | &rmt_port, &our_port, user) == 3 | ||
| 500 | +#ifdef INET6 | ||
| 501 | + && ntohs(((struct sockaddr_in *)rmt_sin)->sin_port) == rmt_port | ||
| 502 | + && ntohs(((struct sockaddr_in *)our_sin)->sin_port) == our_port) { | ||
| 503 | +#else | ||
| 504 | && ntohs(rmt_sin->sin_port) == rmt_port | ||
| 505 | && ntohs(our_sin->sin_port) == our_port) { | ||
| 506 | +#endif | ||
| 507 | |||
| 508 | /* | ||
| 509 | * Strip trailing carriage return. It is part of the | ||
| 510 | diff -ruN tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c | ||
| 511 | --- tcp_wrappers_7.6.orig/scaffold.c 1997-03-21 19:27:24.000000000 +0100 | ||
| 512 | +++ tcp_wrappers_7.6/scaffold.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 513 | @@ -25,7 +25,9 @@ | ||
| 514 | #define INADDR_NONE (-1) /* XXX should be 0xffffffff */ | ||
| 515 | #endif | ||
| 516 | |||
| 517 | +#ifndef INET6 | ||
| 518 | extern char *malloc(); | ||
| 519 | +#endif | ||
| 520 | |||
| 521 | /* Application-specific. */ | ||
| 522 | |||
| 523 | @@ -39,6 +41,7 @@ | ||
| 524 | int deny_severity = LOG_WARNING; | ||
| 525 | int rfc931_timeout = RFC931_TIMEOUT; | ||
| 526 | |||
| 527 | +#ifndef INET6 | ||
| 528 | /* dup_hostent - create hostent in one memory block */ | ||
| 529 | |||
| 530 | static struct hostent *dup_hostent(hp) | ||
| 531 | @@ -73,9 +76,46 @@ | ||
| 532 | } | ||
| 533 | return (&hb->host); | ||
| 534 | } | ||
| 535 | +#endif | ||
| 536 | |||
| 537 | /* find_inet_addr - find all addresses for this host, result to free() */ | ||
| 538 | |||
| 539 | +#ifdef INET6 | ||
| 540 | +struct addrinfo *find_inet_addr(host) | ||
| 541 | +char *host; | ||
| 542 | +{ | ||
| 543 | + struct addrinfo hints, *res; | ||
| 544 | + | ||
| 545 | + memset(&hints, 0, sizeof(hints)); | ||
| 546 | + hints.ai_family = PF_UNSPEC; | ||
| 547 | + hints.ai_socktype = SOCK_STREAM; | ||
| 548 | + hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; | ||
| 549 | + if (getaddrinfo(host, NULL, &hints, &res) == 0) | ||
| 550 | + return (res); | ||
| 551 | + | ||
| 552 | + memset(&hints, 0, sizeof(hints)); | ||
| 553 | + hints.ai_family = PF_UNSPEC; | ||
| 554 | + hints.ai_socktype = SOCK_STREAM; | ||
| 555 | + hints.ai_flags = AI_PASSIVE | AI_CANONNAME; | ||
| 556 | + if (getaddrinfo(host, NULL, &hints, &res) != 0) { | ||
| 557 | + tcpd_warn("%s: host not found", host); | ||
| 558 | + return (0); | ||
| 559 | + } | ||
| 560 | + if (res->ai_family != AF_INET6 && res->ai_family != AF_INET) { | ||
| 561 | + tcpd_warn("%d: not an internet host", res->ai_family); | ||
| 562 | + freeaddrinfo(res); | ||
| 563 | + return (0); | ||
| 564 | + } | ||
| 565 | + if (!res->ai_canonname) { | ||
| 566 | + tcpd_warn("%s: hostname alias", host); | ||
| 567 | + tcpd_warn("(cannot obtain official name)", res->ai_canonname); | ||
| 568 | + } else if (STR_NE(host, res->ai_canonname)) { | ||
| 569 | + tcpd_warn("%s: hostname alias", host); | ||
| 570 | + tcpd_warn("(official name: %.*s)", STRING_LENGTH, res->ai_canonname); | ||
| 571 | + } | ||
| 572 | + return (res); | ||
| 573 | +} | ||
| 574 | +#else | ||
| 575 | struct hostent *find_inet_addr(host) | ||
| 576 | char *host; | ||
| 577 | { | ||
| 578 | @@ -118,6 +158,7 @@ | ||
| 579 | } | ||
| 580 | return (dup_hostent(hp)); | ||
| 581 | } | ||
| 582 | +#endif | ||
| 583 | |||
| 584 | /* check_dns - give each address thorough workout, return address count */ | ||
| 585 | |||
| 586 | @@ -125,8 +166,13 @@ | ||
| 587 | char *host; | ||
| 588 | { | ||
| 589 | struct request_info request; | ||
| 590 | +#ifdef INET6 | ||
| 591 | + struct sockaddr_storage sin; | ||
| 592 | + struct addrinfo *hp, *res; | ||
| 593 | +#else | ||
| 594 | struct sockaddr_in sin; | ||
| 595 | struct hostent *hp; | ||
| 596 | +#endif | ||
| 597 | int count; | ||
| 598 | char *addr; | ||
| 599 | |||
| 600 | @@ -134,11 +180,18 @@ | ||
| 601 | return (0); | ||
| 602 | request_init(&request, RQ_CLIENT_SIN, &sin, 0); | ||
| 603 | sock_methods(&request); | ||
| 604 | +#ifndef INET6 | ||
| 605 | memset((char *) &sin, 0, sizeof(sin)); | ||
| 606 | sin.sin_family = AF_INET; | ||
| 607 | +#endif | ||
| 608 | |||
| 609 | +#ifdef INET6 | ||
| 610 | + for (res = hp, count = 0; res; res = res->ai_next, count++) { | ||
| 611 | + memcpy(&sin, res->ai_addr, res->ai_addrlen); | ||
| 612 | +#else | ||
| 613 | for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { | ||
| 614 | memcpy((char *) &sin.sin_addr, addr, sizeof(sin.sin_addr)); | ||
| 615 | +#endif | ||
| 616 | |||
| 617 | /* | ||
| 618 | * Force host name and address conversions. Use the request structure | ||
| 619 | @@ -151,7 +204,11 @@ | ||
| 620 | tcpd_warn("host address %s->name lookup failed", | ||
| 621 | eval_hostaddr(request.client)); | ||
| 622 | } | ||
| 623 | +#ifdef INET6 | ||
| 624 | + freeaddrinfo(hp); | ||
| 625 | +#else | ||
| 626 | free((char *) hp); | ||
| 627 | +#endif | ||
| 628 | return (count); | ||
| 629 | } | ||
| 630 | |||
| 631 | diff -ruN tcp_wrappers_7.6.orig/scaffold.h tcp_wrappers_7.6/scaffold.h | ||
| 632 | --- tcp_wrappers_7.6.orig/scaffold.h 1994-12-31 18:19:20.000000000 +0100 | ||
| 633 | +++ tcp_wrappers_7.6/scaffold.h 2004-04-10 19:07:43.000000000 +0200 | ||
| 634 | @@ -4,6 +4,10 @@ | ||
| 635 | * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. | ||
| 636 | */ | ||
| 637 | |||
| 638 | +#ifdef INET6 | ||
| 639 | +extern struct addrinfo *find_inet_addr(); | ||
| 640 | +#else | ||
| 641 | extern struct hostent *find_inet_addr(); | ||
| 642 | +#endif | ||
| 643 | extern int check_dns(); | ||
| 644 | extern int check_path(); | ||
| 645 | diff -ruN tcp_wrappers_7.6.orig/socket.c tcp_wrappers_7.6/socket.c | ||
| 646 | --- tcp_wrappers_7.6.orig/socket.c 2004-04-10 19:22:58.000000000 +0200 | ||
| 647 | +++ tcp_wrappers_7.6/socket.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 648 | @@ -24,13 +24,22 @@ | ||
| 649 | #include <sys/types.h> | ||
| 650 | #include <sys/param.h> | ||
| 651 | #include <sys/socket.h> | ||
| 652 | +#ifdef INT32_T | ||
| 653 | +typedef uint32_t u_int32_t; | ||
| 654 | +#endif | ||
| 655 | #include <netinet/in.h> | ||
| 656 | #include <netdb.h> | ||
| 657 | #include <stdio.h> | ||
| 658 | #include <syslog.h> | ||
| 659 | #include <string.h> | ||
| 660 | |||
| 661 | +#ifdef INET6 | ||
| 662 | +#ifndef NI_WITHSCOPEID | ||
| 663 | +#define NI_WITHSCOPEID 0 | ||
| 664 | +#endif | ||
| 665 | +#else | ||
| 666 | extern char *inet_ntoa(); | ||
| 667 | +#endif | ||
| 668 | |||
| 669 | /* Local stuff. */ | ||
| 670 | |||
| 671 | @@ -79,8 +88,13 @@ | ||
| 672 | void sock_host(request) | ||
| 673 | struct request_info *request; | ||
| 674 | { | ||
| 675 | +#ifdef INET6 | ||
| 676 | + static struct sockaddr_storage client; | ||
| 677 | + static struct sockaddr_storage server; | ||
| 678 | +#else | ||
| 679 | static struct sockaddr_in client; | ||
| 680 | static struct sockaddr_in server; | ||
| 681 | +#endif | ||
| 682 | int len; | ||
| 683 | char buf[BUFSIZ]; | ||
| 684 | int fd = request->fd; | ||
| 685 | @@ -109,7 +123,11 @@ | ||
| 686 | memset(buf, 0 sizeof(buf)); | ||
| 687 | #endif | ||
| 688 | } | ||
| 689 | +#ifdef INET6 | ||
| 690 | + request->client->sin = (struct sockaddr *)&client; | ||
| 691 | +#else | ||
| 692 | request->client->sin = &client; | ||
| 693 | +#endif | ||
| 694 | |||
| 695 | /* | ||
| 696 | * Determine the server binding. This is used for client username | ||
| 697 | @@ -122,7 +140,11 @@ | ||
| 698 | tcpd_warn("getsockname: %m"); | ||
| 699 | return; | ||
| 700 | } | ||
| 701 | +#ifdef INET6 | ||
| 702 | + request->server->sin = (struct sockaddr *)&server; | ||
| 703 | +#else | ||
| 704 | request->server->sin = &server; | ||
| 705 | +#endif | ||
| 706 | } | ||
| 707 | |||
| 708 | /* sock_hostaddr - map endpoint address to printable form */ | ||
| 709 | @@ -130,10 +152,26 @@ | ||
| 710 | void sock_hostaddr(host) | ||
| 711 | struct host_info *host; | ||
| 712 | { | ||
| 713 | +#ifdef INET6 | ||
| 714 | + struct sockaddr *sin = host->sin; | ||
| 715 | + int salen; | ||
| 716 | + | ||
| 717 | + if (!sin) | ||
| 718 | + return; | ||
| 719 | +#ifdef SIN6_LEN | ||
| 720 | + salen = sin->sa_len; | ||
| 721 | +#else | ||
| 722 | + salen = (sin->sa_family == AF_INET) ? sizeof(struct sockaddr_in) | ||
| 723 | + : sizeof(struct sockaddr_in6); | ||
| 724 | +#endif | ||
| 725 | + getnameinfo(sin, salen, host->addr, sizeof(host->addr), | ||
| 726 | + NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); | ||
| 727 | +#else | ||
| 728 | struct sockaddr_in *sin = host->sin; | ||
| 729 | |||
| 730 | if (sin != 0) | ||
| 731 | STRN_CPY(host->addr, inet_ntoa(sin->sin_addr), sizeof(host->addr)); | ||
| 732 | +#endif | ||
| 733 | } | ||
| 734 | |||
| 735 | /* sock_hostname - map endpoint address to host name */ | ||
| 736 | @@ -141,6 +179,160 @@ | ||
| 737 | void sock_hostname(host) | ||
| 738 | struct host_info *host; | ||
| 739 | { | ||
| 740 | +#ifdef INET6 | ||
| 741 | + struct sockaddr *sin = host->sin; | ||
| 742 | + struct sockaddr_in sin4; | ||
| 743 | + struct addrinfo hints, *res, *res0 = NULL; | ||
| 744 | + int salen, alen, err = 1; | ||
| 745 | + char *ap = NULL, *rap, hname[NI_MAXHOST]; | ||
| 746 | + | ||
| 747 | + if (sin != NULL) { | ||
| 748 | + if (sin->sa_family == AF_INET6) { | ||
| 749 | + struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)sin; | ||
| 750 | + | ||
| 751 | + if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) { | ||
| 752 | + memset(&sin4, 0, sizeof(sin4)); | ||
| 753 | +#ifdef SIN6_LEN | ||
| 754 | + sin4.sin_len = sizeof(sin4); | ||
| 755 | +#endif | ||
| 756 | + sin4.sin_family = AF_INET; | ||
| 757 | + sin4.sin_port = sin6->sin6_port; | ||
| 758 | + sin4.sin_addr.s_addr = *(u_int32_t *)&sin6->sin6_addr.s6_addr[12]; | ||
| 759 | + sin = (struct sockaddr *)&sin4; | ||
| 760 | + } | ||
| 761 | + } | ||
| 762 | + switch (sin->sa_family) { | ||
| 763 | + case AF_INET: | ||
| 764 | + ap = (char *)&((struct sockaddr_in *)sin)->sin_addr; | ||
| 765 | + alen = sizeof(struct in_addr); | ||
| 766 | + salen = sizeof(struct sockaddr_in); | ||
| 767 | + break; | ||
| 768 | + case AF_INET6: | ||
| 769 | + ap = (char *)&((struct sockaddr_in6 *)sin)->sin6_addr; | ||
| 770 | + alen = sizeof(struct in6_addr); | ||
| 771 | + salen = sizeof(struct sockaddr_in6); | ||
| 772 | + break; | ||
| 773 | + default: | ||
| 774 | + break; | ||
| 775 | + } | ||
| 776 | + if (ap) | ||
| 777 | + err = getnameinfo(sin, salen, hname, sizeof(hname), | ||
| 778 | + NULL, 0, NI_WITHSCOPEID | NI_NAMEREQD); | ||
| 779 | + } | ||
| 780 | + if (!err) { | ||
| 781 | + | ||
| 782 | + STRN_CPY(host->name, hname, sizeof(host->name)); | ||
| 783 | + | ||
| 784 | + /* reject numeric addresses */ | ||
| 785 | + memset(&hints, 0, sizeof(hints)); | ||
| 786 | + hints.ai_family = sin->sa_family; | ||
| 787 | + hints.ai_socktype = SOCK_STREAM; | ||
| 788 | + hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; | ||
| 789 | + if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { | ||
| 790 | + freeaddrinfo(res0); | ||
| 791 | + res0 = NULL; | ||
| 792 | + tcpd_warn("host name/name mismatch: " | ||
| 793 | + "reverse lookup results in non-FQDN %s", | ||
| 794 | + host->name); | ||
| 795 | + strcpy(host->name, paranoid); /* name is bad, clobber it */ | ||
| 796 | + } | ||
| 797 | + err = !err; | ||
| 798 | + } | ||
| 799 | + if (!err) { | ||
| 800 | + /* we are now sure that this is non-numeric */ | ||
| 801 | + | ||
| 802 | + /* | ||
| 803 | + * Verify that the address is a member of the address list returned | ||
| 804 | + * by gethostbyname(hostname). | ||
| 805 | + * | ||
| 806 | + * Verify also that gethostbyaddr() and gethostbyname() return the same | ||
| 807 | + * hostname, or rshd and rlogind may still end up being spoofed. | ||
| 808 | + * | ||
| 809 | + * On some sites, gethostbyname("localhost") returns "localhost.domain". | ||
| 810 | + * This is a DNS artefact. We treat it as a special case. When we | ||
| 811 | + * can't believe the address list from gethostbyname("localhost") | ||
| 812 | + * we're in big trouble anyway. | ||
| 813 | + */ | ||
| 814 | + | ||
| 815 | + memset(&hints, 0, sizeof(hints)); | ||
| 816 | + hints.ai_family = sin->sa_family; | ||
| 817 | + hints.ai_socktype = SOCK_STREAM; | ||
| 818 | + hints.ai_flags = AI_PASSIVE | AI_CANONNAME; | ||
| 819 | + if (getaddrinfo(host->name, NULL, &hints, &res0) != 0) { | ||
| 820 | + | ||
| 821 | + /* | ||
| 822 | + * Unable to verify that the host name matches the address. This | ||
| 823 | + * may be a transient problem or a botched name server setup. | ||
| 824 | + */ | ||
| 825 | + | ||
| 826 | + tcpd_warn("can't verify hostname: getaddrinfo(%s, %s) failed", | ||
| 827 | + host->name, | ||
| 828 | + (sin->sa_family == AF_INET) ? "AF_INET" : "AF_INET6"); | ||
| 829 | + | ||
| 830 | + } else if ((res0->ai_canonname == NULL | ||
| 831 | + || STR_NE(host->name, res0->ai_canonname)) | ||
| 832 | + && STR_NE(host->name, "localhost")) { | ||
| 833 | + | ||
| 834 | + /* | ||
| 835 | + * The gethostbyaddr() and gethostbyname() calls did not return | ||
| 836 | + * the same hostname. This could be a nameserver configuration | ||
| 837 | + * problem. It could also be that someone is trying to spoof us. | ||
| 838 | + */ | ||
| 839 | + | ||
| 840 | + tcpd_warn("host name/name mismatch: %s != %.*s", | ||
| 841 | + host->name, STRING_LENGTH, | ||
| 842 | + (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); | ||
| 843 | + | ||
| 844 | + } else { | ||
| 845 | + | ||
| 846 | + /* | ||
| 847 | + * The address should be a member of the address list returned by | ||
| 848 | + * gethostbyname(). We should first verify that the h_addrtype | ||
| 849 | + * field is AF_INET, but this program has already caused too much | ||
| 850 | + * grief on systems with broken library code. | ||
| 851 | + */ | ||
| 852 | + | ||
| 853 | + for (res = res0; res; res = res->ai_next) { | ||
| 854 | + if (res->ai_family != sin->sa_family) | ||
| 855 | + continue; | ||
| 856 | + switch (res->ai_family) { | ||
| 857 | + case AF_INET: | ||
| 858 | + rap = (char *)&((struct sockaddr_in *)res->ai_addr)->sin_addr; | ||
| 859 | + break; | ||
| 860 | + case AF_INET6: | ||
| 861 | + /* need to check scope_id */ | ||
| 862 | + if (((struct sockaddr_in6 *)sin)->sin6_scope_id != | ||
| 863 | + ((struct sockaddr_in6 *)res->ai_addr)->sin6_scope_id) { | ||
| 864 | + continue; | ||
| 865 | + } | ||
| 866 | + rap = (char *)&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr; | ||
| 867 | + break; | ||
| 868 | + default: | ||
| 869 | + continue; | ||
| 870 | + } | ||
| 871 | + if (memcmp(rap, ap, alen) == 0) { | ||
| 872 | + freeaddrinfo(res0); | ||
| 873 | + return; /* name is good, keep it */ | ||
| 874 | + } | ||
| 875 | + } | ||
| 876 | + | ||
| 877 | + /* | ||
| 878 | + * The host name does not map to the initial address. Perhaps | ||
| 879 | + * someone has messed up. Perhaps someone compromised a name | ||
| 880 | + * server. | ||
| 881 | + */ | ||
| 882 | + | ||
| 883 | + getnameinfo(sin, salen, hname, sizeof(hname), | ||
| 884 | + NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); | ||
| 885 | + tcpd_warn("host name/address mismatch: %s != %.*s", | ||
| 886 | + hname, STRING_LENGTH, | ||
| 887 | + (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); | ||
| 888 | + } | ||
| 889 | + strcpy(host->name, paranoid); /* name is bad, clobber it */ | ||
| 890 | + if (res0) | ||
| 891 | + freeaddrinfo(res0); | ||
| 892 | + } | ||
| 893 | +#else /* INET6 */ | ||
| 894 | struct sockaddr_in *sin = host->sin; | ||
| 895 | struct hostent *hp; | ||
| 896 | int i; | ||
| 897 | @@ -220,6 +412,7 @@ | ||
| 898 | } | ||
| 899 | strcpy(host->name, paranoid); /* name is bad, clobber it */ | ||
| 900 | } | ||
| 901 | +#endif /* INET6 */ | ||
| 902 | } | ||
| 903 | |||
| 904 | /* sock_sink - absorb unreceived IP datagram */ | ||
| 905 | @@ -228,7 +421,11 @@ | ||
| 906 | int fd; | ||
| 907 | { | ||
| 908 | char buf[BUFSIZ]; | ||
| 909 | +#ifdef INET6 | ||
| 910 | + struct sockaddr_storage sin; | ||
| 911 | +#else | ||
| 912 | struct sockaddr_in sin; | ||
| 913 | +#endif | ||
| 914 | int size = sizeof(sin); | ||
| 915 | |||
| 916 | /* | ||
| 917 | diff -ruN tcp_wrappers_7.6.orig/tcpd.c tcp_wrappers_7.6/tcpd.c | ||
| 918 | --- tcp_wrappers_7.6.orig/tcpd.c 1996-02-11 17:01:33.000000000 +0100 | ||
| 919 | +++ tcp_wrappers_7.6/tcpd.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 920 | @@ -120,7 +120,12 @@ | ||
| 921 | |||
| 922 | /* Report request and invoke the real daemon program. */ | ||
| 923 | |||
| 924 | +#ifdef INET6 | ||
| 925 | + syslog(allow_severity, "connect from %s (%s)", | ||
| 926 | + eval_client(&request), eval_hostaddr(request.client)); | ||
| 927 | +#else | ||
| 928 | syslog(allow_severity, "connect from %s", eval_client(&request)); | ||
| 929 | +#endif | ||
| 930 | closelog(); | ||
| 931 | (void) execv(path, argv); | ||
| 932 | syslog(LOG_ERR, "error: cannot execute %s: %m", path); | ||
| 933 | diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c | ||
| 934 | --- tcp_wrappers_7.6.orig/tcpdchk.c 1997-02-12 02:13:25.000000000 +0100 | ||
| 935 | +++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 936 | @@ -22,6 +22,9 @@ | ||
| 937 | |||
| 938 | #include <sys/types.h> | ||
| 939 | #include <sys/stat.h> | ||
| 940 | +#ifdef INET6 | ||
| 941 | +#include <sys/socket.h> | ||
| 942 | +#endif | ||
| 943 | #include <netinet/in.h> | ||
| 944 | #include <arpa/inet.h> | ||
| 945 | #include <stdio.h> | ||
| 946 | @@ -397,6 +400,31 @@ | ||
| 947 | } | ||
| 948 | } | ||
| 949 | |||
| 950 | +#ifdef INET6 | ||
| 951 | +static int is_inet6_addr(pat) | ||
| 952 | + char *pat; | ||
| 953 | +{ | ||
| 954 | + struct addrinfo hints, *res; | ||
| 955 | + int len, ret; | ||
| 956 | + char ch; | ||
| 957 | + | ||
| 958 | + if (*pat != '[') | ||
| 959 | + return (0); | ||
| 960 | + len = strlen(pat); | ||
| 961 | + if ((ch = pat[len - 1]) != ']') | ||
| 962 | + return (0); | ||
| 963 | + pat[len - 1] = '\0'; | ||
| 964 | + memset(&hints, 0, sizeof(hints)); | ||
| 965 | + hints.ai_family = AF_INET6; | ||
| 966 | + hints.ai_socktype = SOCK_STREAM; | ||
| 967 | + hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; | ||
| 968 | + if ((ret = getaddrinfo(pat + 1, NULL, &hints, &res)) == 0) | ||
| 969 | + freeaddrinfo(res); | ||
| 970 | + pat[len - 1] = ch; | ||
| 971 | + return (ret == 0); | ||
| 972 | +} | ||
| 973 | +#endif | ||
| 974 | + | ||
| 975 | /* check_host - criticize host pattern */ | ||
| 976 | |||
| 977 | static int check_host(pat) | ||
| 978 | @@ -423,14 +451,27 @@ | ||
| 979 | #endif | ||
| 980 | #endif | ||
| 981 | } else if (mask = split_at(pat, '/')) { /* network/netmask */ | ||
| 982 | +#ifdef INET6 | ||
| 983 | + int mask_len; | ||
| 984 | + | ||
| 985 | + if ((dot_quad_addr(pat) == INADDR_NONE | ||
| 986 | + || dot_quad_addr(mask) == INADDR_NONE) | ||
| 987 | + && (!is_inet6_addr(pat) | ||
| 988 | + || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) | ||
| 989 | +#else | ||
| 990 | if (dot_quad_addr(pat) == INADDR_NONE | ||
| 991 | || dot_quad_addr(mask) == INADDR_NONE) | ||
| 992 | +#endif | ||
| 993 | tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); | ||
| 994 | } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ | ||
| 995 | tcpd_warn("FAIL is no longer recognized"); | ||
| 996 | tcpd_warn("(use EXCEPT or DENY instead)"); | ||
| 997 | } else if (reserved_name(pat)) { /* other reserved */ | ||
| 998 | /* void */ ; | ||
| 999 | +#ifdef INET6 | ||
| 1000 | + } else if (is_inet6_addr(pat)) { /* IPv6 address */ | ||
| 1001 | + addr_count = 1; | ||
| 1002 | +#endif | ||
| 1003 | } else if (NOT_INADDR(pat)) { /* internet name */ | ||
| 1004 | if (pat[strlen(pat) - 1] == '.') { | ||
| 1005 | tcpd_warn("%s: domain or host name ends in dot", pat); | ||
| 1006 | diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h | ||
| 1007 | --- tcp_wrappers_7.6.orig/tcpd.h 1996-03-19 16:22:25.000000000 +0100 | ||
| 1008 | +++ tcp_wrappers_7.6/tcpd.h 2004-04-10 19:07:43.000000000 +0200 | ||
| 1009 | @@ -11,7 +11,11 @@ | ||
| 1010 | struct host_info { | ||
| 1011 | char name[STRING_LENGTH]; /* access via eval_hostname(host) */ | ||
| 1012 | char addr[STRING_LENGTH]; /* access via eval_hostaddr(host) */ | ||
| 1013 | +#ifdef INET6 | ||
| 1014 | + struct sockaddr *sin; /* socket address or 0 */ | ||
| 1015 | +#else | ||
| 1016 | struct sockaddr_in *sin; /* socket address or 0 */ | ||
| 1017 | +#endif | ||
| 1018 | struct t_unitdata *unit; /* TLI transport address or 0 */ | ||
| 1019 | struct request_info *request; /* for shared information */ | ||
| 1020 | }; | ||
| 1021 | diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.c tcp_wrappers_7.6/tcpdmatch.c | ||
| 1022 | --- tcp_wrappers_7.6.orig/tcpdmatch.c 1996-02-11 17:01:36.000000000 +0100 | ||
| 1023 | +++ tcp_wrappers_7.6/tcpdmatch.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 1024 | @@ -57,7 +57,11 @@ | ||
| 1025 | int argc; | ||
| 1026 | char **argv; | ||
| 1027 | { | ||
| 1028 | +#ifdef INET6 | ||
| 1029 | + struct addrinfo hints, *hp, *res; | ||
| 1030 | +#else | ||
| 1031 | struct hostent *hp; | ||
| 1032 | +#endif | ||
| 1033 | char *myname = argv[0]; | ||
| 1034 | char *client; | ||
| 1035 | char *server; | ||
| 1036 | @@ -68,8 +72,13 @@ | ||
| 1037 | int ch; | ||
| 1038 | char *inetcf = 0; | ||
| 1039 | int count; | ||
| 1040 | +#ifdef INET6 | ||
| 1041 | + struct sockaddr_storage server_sin; | ||
| 1042 | + struct sockaddr_storage client_sin; | ||
| 1043 | +#else | ||
| 1044 | struct sockaddr_in server_sin; | ||
| 1045 | struct sockaddr_in client_sin; | ||
| 1046 | +#endif | ||
| 1047 | struct stat st; | ||
| 1048 | |||
| 1049 | /* | ||
| 1050 | @@ -172,13 +181,20 @@ | ||
| 1051 | if (NOT_INADDR(server) == 0 || HOSTNAME_KNOWN(server)) { | ||
| 1052 | if ((hp = find_inet_addr(server)) == 0) | ||
| 1053 | exit(1); | ||
| 1054 | +#ifndef INET6 | ||
| 1055 | memset((char *) &server_sin, 0, sizeof(server_sin)); | ||
| 1056 | server_sin.sin_family = AF_INET; | ||
| 1057 | +#endif | ||
| 1058 | request_set(&request, RQ_SERVER_SIN, &server_sin, 0); | ||
| 1059 | |||
| 1060 | +#ifdef INET6 | ||
| 1061 | + for (res = hp, count = 0; res; res = res->ai_next, count++) { | ||
| 1062 | + memcpy(&server_sin, res->ai_addr, res->ai_addrlen); | ||
| 1063 | +#else | ||
| 1064 | for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { | ||
| 1065 | memcpy((char *) &server_sin.sin_addr, addr, | ||
| 1066 | sizeof(server_sin.sin_addr)); | ||
| 1067 | +#endif | ||
| 1068 | |||
| 1069 | /* | ||
| 1070 | * Force evaluation of server host name and address. Host name | ||
| 1071 | @@ -194,7 +210,11 @@ | ||
| 1072 | fprintf(stderr, "Please specify an address instead\n"); | ||
| 1073 | exit(1); | ||
| 1074 | } | ||
| 1075 | +#ifdef INET6 | ||
| 1076 | + freeaddrinfo(hp); | ||
| 1077 | +#else | ||
| 1078 | free((char *) hp); | ||
| 1079 | +#endif | ||
| 1080 | } else { | ||
| 1081 | request_set(&request, RQ_SERVER_NAME, server, 0); | ||
| 1082 | } | ||
| 1083 | @@ -208,6 +228,18 @@ | ||
| 1084 | tcpdmatch(&request); | ||
| 1085 | exit(0); | ||
| 1086 | } | ||
| 1087 | +#ifdef INET6 | ||
| 1088 | + memset(&hints, 0, sizeof(hints)); | ||
| 1089 | + hints.ai_family = AF_INET6; | ||
| 1090 | + hints.ai_socktype = SOCK_STREAM; | ||
| 1091 | + hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; | ||
| 1092 | + if (getaddrinfo(client, NULL, &hints, &res) == 0) { | ||
| 1093 | + freeaddrinfo(res); | ||
| 1094 | + request_set(&request, RQ_CLIENT_ADDR, client, 0); | ||
| 1095 | + tcpdmatch(&request); | ||
| 1096 | + exit(0); | ||
| 1097 | + } | ||
| 1098 | +#endif | ||
| 1099 | |||
| 1100 | /* | ||
| 1101 | * Perhaps they are testing special client hostname patterns that aren't | ||
| 1102 | @@ -229,6 +261,34 @@ | ||
| 1103 | */ | ||
| 1104 | if ((hp = find_inet_addr(client)) == 0) | ||
| 1105 | exit(1); | ||
| 1106 | +#ifdef INET6 | ||
| 1107 | + request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); | ||
| 1108 | + | ||
| 1109 | + for (res = hp, count = 0; res; res = res->ai_next, count++) { | ||
| 1110 | + memcpy(&client_sin, res->ai_addr, res->ai_addrlen); | ||
| 1111 | + | ||
| 1112 | + /* | ||
| 1113 | + * getnameinfo() doesn't do reverse lookup against link-local | ||
| 1114 | + * address. So, we pass through host name evaluation against | ||
| 1115 | + * such addresses. | ||
| 1116 | + */ | ||
| 1117 | + if (res->ai_family != AF_INET6 || | ||
| 1118 | + !IN6_IS_ADDR_LINKLOCAL(&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr)) { | ||
| 1119 | + /* | ||
| 1120 | + * Force evaluation of client host name and address. Host name | ||
| 1121 | + * conflicts will be reported while eval_hostname() does its job. | ||
| 1122 | + */ | ||
| 1123 | + request_set(&request, RQ_CLIENT_NAME, "", RQ_CLIENT_ADDR, "", 0); | ||
| 1124 | + if (STR_EQ(eval_hostname(request.client), unknown)) | ||
| 1125 | + tcpd_warn("host address %s->name lookup failed", | ||
| 1126 | + eval_hostaddr(request.client)); | ||
| 1127 | + } | ||
| 1128 | + tcpdmatch(&request); | ||
| 1129 | + if (res->ai_next) | ||
| 1130 | + printf("\n"); | ||
| 1131 | + } | ||
| 1132 | + freeaddrinfo(hp); | ||
| 1133 | +#else | ||
| 1134 | memset((char *) &client_sin, 0, sizeof(client_sin)); | ||
| 1135 | client_sin.sin_family = AF_INET; | ||
| 1136 | request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); | ||
| 1137 | @@ -250,6 +310,7 @@ | ||
| 1138 | printf("\n"); | ||
| 1139 | } | ||
| 1140 | free((char *) hp); | ||
| 1141 | +#endif | ||
| 1142 | exit(0); | ||
| 1143 | } | ||
| 1144 | |||
| 1145 | diff -ruN tcp_wrappers_7.6.orig/tli.c tcp_wrappers_7.6/tli.c | ||
| 1146 | --- tcp_wrappers_7.6.orig/tli.c 1997-03-21 19:27:26.000000000 +0100 | ||
| 1147 | +++ tcp_wrappers_7.6/tli.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 1148 | @@ -65,8 +65,13 @@ | ||
| 1149 | void tli_host(request) | ||
| 1150 | struct request_info *request; | ||
| 1151 | { | ||
| 1152 | +#ifdef INET6 | ||
| 1153 | + static struct sockaddr_storage client; | ||
| 1154 | + static struct sockaddr_storage server; | ||
| 1155 | +#else | ||
| 1156 | static struct sockaddr_in client; | ||
| 1157 | static struct sockaddr_in server; | ||
| 1158 | +#endif | ||
| 1159 | |||
| 1160 | /* | ||
| 1161 | * If we discover that we are using an IP transport, pretend we never | ||
| 1162 | @@ -76,14 +81,29 @@ | ||
| 1163 | |||
| 1164 | tli_endpoints(request); | ||
| 1165 | if ((request->config = tli_transport(request->fd)) != 0 | ||
| 1166 | +#ifdef INET6 | ||
| 1167 | + && (STR_EQ(request->config->nc_protofmly, "inet") || | ||
| 1168 | + STR_EQ(request->config->nc_protofmly, "inet6"))) { | ||
| 1169 | +#else | ||
| 1170 | && STR_EQ(request->config->nc_protofmly, "inet")) { | ||
| 1171 | +#endif | ||
| 1172 | if (request->client->unit != 0) { | ||
| 1173 | +#ifdef INET6 | ||
| 1174 | + client = *(struct sockaddr_storage *) request->client->unit->addr.buf; | ||
| 1175 | + request->client->sin = (struct sockaddr *) &client; | ||
| 1176 | +#else | ||
| 1177 | client = *(struct sockaddr_in *) request->client->unit->addr.buf; | ||
| 1178 | request->client->sin = &client; | ||
| 1179 | +#endif | ||
| 1180 | } | ||
| 1181 | if (request->server->unit != 0) { | ||
| 1182 | +#ifdef INET6 | ||
| 1183 | + server = *(struct sockaddr_storage *) request->server->unit->addr.buf; | ||
| 1184 | + request->server->sin = (struct sockaddr *) &server; | ||
| 1185 | +#else | ||
| 1186 | server = *(struct sockaddr_in *) request->server->unit->addr.buf; | ||
| 1187 | request->server->sin = &server; | ||
| 1188 | +#endif | ||
| 1189 | } | ||
| 1190 | tli_cleanup(request); | ||
| 1191 | sock_methods(request); | ||
| 1192 | @@ -187,7 +207,15 @@ | ||
| 1193 | } | ||
| 1194 | while (config = getnetconfig(handlep)) { | ||
| 1195 | if (stat(config->nc_device, &from_config) == 0) { | ||
| 1196 | +#ifdef NO_CLONE_DEVICE | ||
| 1197 | + /* | ||
| 1198 | + * If the network devices are not cloned (as is the case for | ||
| 1199 | + * Solaris 8 Beta), we must compare the major device numbers. | ||
| 1200 | + */ | ||
| 1201 | + if (major(from_config.st_rdev) == major(from_client.st_rdev)) | ||
| 1202 | +#else | ||
| 1203 | if (minor(from_config.st_rdev) == major(from_client.st_rdev)) | ||
| 1204 | +#endif | ||
| 1205 | break; | ||
| 1206 | } | ||
| 1207 | } | ||
| 1208 | diff -ruN tcp_wrappers_7.6.orig/update.c tcp_wrappers_7.6/update.c | ||
| 1209 | --- tcp_wrappers_7.6.orig/update.c 1994-12-28 17:42:56.000000000 +0100 | ||
| 1210 | +++ tcp_wrappers_7.6/update.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 1211 | @@ -46,10 +46,18 @@ | ||
| 1212 | request->fd = va_arg(ap, int); | ||
| 1213 | continue; | ||
| 1214 | case RQ_CLIENT_SIN: | ||
| 1215 | +#ifdef INET6 | ||
| 1216 | + request->client->sin = va_arg(ap, struct sockaddr *); | ||
| 1217 | +#else | ||
| 1218 | request->client->sin = va_arg(ap, struct sockaddr_in *); | ||
| 1219 | +#endif | ||
| 1220 | continue; | ||
| 1221 | case RQ_SERVER_SIN: | ||
| 1222 | +#ifdef INET6 | ||
| 1223 | + request->server->sin = va_arg(ap, struct sockaddr *); | ||
| 1224 | +#else | ||
| 1225 | request->server->sin = va_arg(ap, struct sockaddr_in *); | ||
| 1226 | +#endif | ||
| 1227 | continue; | ||
| 1228 | |||
| 1229 | /* | ||
| 1230 | diff -ruN tcp_wrappers_7.6.orig/workarounds.c tcp_wrappers_7.6/workarounds.c | ||
| 1231 | --- tcp_wrappers_7.6.orig/workarounds.c 1996-03-19 16:22:26.000000000 +0100 | ||
| 1232 | +++ tcp_wrappers_7.6/workarounds.c 2004-04-10 19:07:43.000000000 +0200 | ||
| 1233 | @@ -166,11 +166,22 @@ | ||
| 1234 | int *len; | ||
| 1235 | { | ||
| 1236 | int ret; | ||
| 1237 | +#ifdef INET6 | ||
| 1238 | + struct sockaddr *sin = sa; | ||
| 1239 | +#else | ||
| 1240 | struct sockaddr_in *sin = (struct sockaddr_in *) sa; | ||
| 1241 | +#endif | ||
| 1242 | |||
| 1243 | if ((ret = getpeername(sock, sa, len)) >= 0 | ||
| 1244 | +#ifdef INET6 | ||
| 1245 | + && ((sin->su_si.si_family == AF_INET6 | ||
| 1246 | + && IN6_IS_ADDR_UNSPECIFIED(&sin->su_sin6.sin6_addr)) | ||
| 1247 | + || (sin->su_si.si_family == AF_INET | ||
| 1248 | + && sin->su_sin.sin_addr.s_addr == 0))) { | ||
| 1249 | +#else | ||
| 1250 | && sa->sa_family == AF_INET | ||
| 1251 | && sin->sin_addr.s_addr == 0) { | ||
| 1252 | +#endif | ||
| 1253 | errno = ENOTCONN; | ||
| 1254 | return (-1); | ||
| 1255 | } else { | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch deleted file mode 100644 index 77d5b42342..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch +++ /dev/null | |||
| @@ -1,153 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | Path: news.porcupine.org!news.porcupine.org!not-for-mail | ||
| 4 | From: Wietse Venema <wietse@((no)(spam)(please))wzv.win.tue.nl> | ||
| 5 | Newsgroups: comp.mail.sendmail,comp.security.unix | ||
| 6 | Subject: TCP Wrapper Blacklist Extension | ||
| 7 | Followup-To: poster | ||
| 8 | Date: 8 Sep 1997 18:53:13 -0400 | ||
| 9 | Organization: Wietse's hangout while on sabattical in the USA | ||
| 10 | Lines: 147 | ||
| 11 | Sender: wietse@spike.porcupine.org | ||
| 12 | Message-ID: <5v1vkp$h4f$1@spike.porcupine.org> | ||
| 13 | NNTP-Posting-Host: spike.porcupine.org | ||
| 14 | Xref: news.porcupine.org comp.mail.sendmail:3541 comp.security.unix:7158 | ||
| 15 | |||
| 16 | The patch below adds a new host pattern to the TCP Wrapper access | ||
| 17 | control language. Instead of a host name or address pattern, you | ||
| 18 | can specify an external /file/name with host name or address | ||
| 19 | patterns. The feature can be used recursively. | ||
| 20 | |||
| 21 | The /file/name extension makes it easy to blacklist bad sites, for | ||
| 22 | example, to block unwanted electronic mail when libwrap is linked | ||
| 23 | into sendmail. Adding hosts to a simple text file is much easier | ||
| 24 | than having to edit a more complex hosts.allow/deny file. | ||
| 25 | |||
| 26 | I developed this a year or so ago as a substitute for NIS netgroups. | ||
| 27 | At that time, I did not consider it of sufficient interest for | ||
| 28 | inclusion in the TCP Wrapper distribution. How times have changed. | ||
| 29 | |||
| 30 | The patch is relative to TCP Wrappers version 7.6. The main archive | ||
| 31 | site is ftp://ftp.win.tue.nl/pub/security/tcp_wrappers_7.6.tar.gz | ||
| 32 | |||
| 33 | Thanks to the Debian LINUX folks for expressing their interest in | ||
| 34 | this patch. | ||
| 35 | |||
| 36 | Wietse | ||
| 37 | |||
| 38 | |||
| 39 | [diff updated by Md] | ||
| 40 | |||
| 41 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 42 | --- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:28:09.000000000 +0200 | ||
| 43 | +++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:28:01.000000000 +0200 | ||
| 44 | @@ -97,6 +97,13 @@ | ||
| 45 | `[3ffe:505:2:1::]/64\' matches every address in the range | ||
| 46 | `3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. | ||
| 47 | .IP \(bu | ||
| 48 | +A string that begins with a `/\' character is treated as a file | ||
| 49 | +name. A host name or address is matched if it matches any host name | ||
| 50 | +or address pattern listed in the named file. The file format is | ||
| 51 | +zero or more lines with zero or more host name or address patterns | ||
| 52 | +separated by whitespace. A file name pattern can be used anywhere | ||
| 53 | +a host name or address pattern can be used. | ||
| 54 | +.IP \(bu | ||
| 55 | Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This | ||
| 56 | method of matching cannot be used in conjunction with `net/mask\' matching, | ||
| 57 | hostname matching beginning with `.\' or IP address matching ending with `.\'. | ||
| 58 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c | ||
| 59 | --- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:28:09.000000000 +0200 | ||
| 60 | +++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:27:05.000000000 +0200 | ||
| 61 | @@ -253,6 +253,26 @@ | ||
| 62 | } | ||
| 63 | } | ||
| 64 | |||
| 65 | +/* hostfile_match - look up host patterns from file */ | ||
| 66 | + | ||
| 67 | +static int hostfile_match(path, host) | ||
| 68 | +char *path; | ||
| 69 | +struct hosts_info *host; | ||
| 70 | +{ | ||
| 71 | + char tok[BUFSIZ]; | ||
| 72 | + int match = NO; | ||
| 73 | + FILE *fp; | ||
| 74 | + | ||
| 75 | + if ((fp = fopen(path, "r")) != 0) { | ||
| 76 | + while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host))) | ||
| 77 | + /* void */ ; | ||
| 78 | + fclose(fp); | ||
| 79 | + } else if (errno != ENOENT) { | ||
| 80 | + tcpd_warn("open %s: %m", path); | ||
| 81 | + } | ||
| 82 | + return (match); | ||
| 83 | +} | ||
| 84 | + | ||
| 85 | /* host_match - match host name and/or address against pattern */ | ||
| 86 | |||
| 87 | static int host_match(tok, host) | ||
| 88 | @@ -280,6 +300,8 @@ | ||
| 89 | tcpd_warn("netgroup support is disabled"); /* not tcpd_jump() */ | ||
| 90 | return (NO); | ||
| 91 | #endif | ||
| 92 | + } else if (tok[0] == '/') { /* /file hack */ | ||
| 93 | + return (hostfile_match(tok, host)); | ||
| 94 | } else if (STR_EQ(tok, "KNOWN")) { /* check address and name */ | ||
| 95 | char *name = eval_hostname(host); | ||
| 96 | return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name)); | ||
| 97 | diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c | ||
| 98 | --- tcp_wrappers_7.6.orig/tcpdchk.c 2004-04-10 19:28:09.000000000 +0200 | ||
| 99 | +++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:27:05.000000000 +0200 | ||
| 100 | @@ -353,6 +353,8 @@ | ||
| 101 | { | ||
| 102 | if (pat[0] == '@') { | ||
| 103 | tcpd_warn("%s: daemon name begins with \"@\"", pat); | ||
| 104 | + } else if (pat[0] == '/') { | ||
| 105 | + tcpd_warn("%s: daemon name begins with \"/\"", pat); | ||
| 106 | } else if (pat[0] == '.') { | ||
| 107 | tcpd_warn("%s: daemon name begins with dot", pat); | ||
| 108 | } else if (pat[strlen(pat) - 1] == '.') { | ||
| 109 | @@ -385,6 +387,8 @@ | ||
| 110 | { | ||
| 111 | if (pat[0] == '@') { /* @netgroup */ | ||
| 112 | tcpd_warn("%s: user name begins with \"@\"", pat); | ||
| 113 | + } else if (pat[0] == '/') { | ||
| 114 | + tcpd_warn("%s: user name begins with \"/\"", pat); | ||
| 115 | } else if (pat[0] == '.') { | ||
| 116 | tcpd_warn("%s: user name begins with dot", pat); | ||
| 117 | } else if (pat[strlen(pat) - 1] == '.') { | ||
| 118 | @@ -430,8 +434,13 @@ | ||
| 119 | static int check_host(pat) | ||
| 120 | char *pat; | ||
| 121 | { | ||
| 122 | + char buf[BUFSIZ]; | ||
| 123 | char *mask; | ||
| 124 | int addr_count = 1; | ||
| 125 | + FILE *fp; | ||
| 126 | + struct tcpd_context saved_context; | ||
| 127 | + char *cp; | ||
| 128 | + char *wsp = " \t\r\n"; | ||
| 129 | |||
| 130 | if (pat[0] == '@') { /* @netgroup */ | ||
| 131 | #ifdef NO_NETGRENT | ||
| 132 | @@ -450,6 +459,21 @@ | ||
| 133 | tcpd_warn("netgroup support disabled"); | ||
| 134 | #endif | ||
| 135 | #endif | ||
| 136 | + } else if (pat[0] == '/') { /* /path/name */ | ||
| 137 | + if ((fp = fopen(pat, "r")) != 0) { | ||
| 138 | + saved_context = tcpd_context; | ||
| 139 | + tcpd_context.file = pat; | ||
| 140 | + tcpd_context.line = 0; | ||
| 141 | + while (fgets(buf, sizeof(buf), fp)) { | ||
| 142 | + tcpd_context.line++; | ||
| 143 | + for (cp = strtok(buf, wsp); cp; cp = strtok((char *) 0, wsp)) | ||
| 144 | + check_host(cp); | ||
| 145 | + } | ||
| 146 | + tcpd_context = saved_context; | ||
| 147 | + fclose(fp); | ||
| 148 | + } else if (errno != ENOENT) { | ||
| 149 | + tcpd_warn("open %s: %m", pat); | ||
| 150 | + } | ||
| 151 | } else if (mask = split_at(pat, '/')) { /* network/netmask */ | ||
| 152 | #ifdef INET6 | ||
| 153 | int mask_len; | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch deleted file mode 100644 index 09a1e0527e..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -uN tcp_wrappers_7.6/hosts_access.c tcp_wrappers_7.6.new/hosts_access.c | ||
| 4 | --- tcp_wrappers_7.6/hosts_access.c Mon May 20 14:00:56 2002 | ||
| 5 | +++ tcp_wrappers_7.6.new/hosts_access.c Mon May 20 14:25:05 2002 | ||
| 6 | @@ -448,6 +448,15 @@ | ||
| 7 | int len, mask_len, i = 0; | ||
| 8 | char ch; | ||
| 9 | |||
| 10 | + /* | ||
| 11 | + * Behavior of getaddrinfo() against IPv4-mapped IPv6 address is | ||
| 12 | + * different between KAME and Solaris8. While KAME returns | ||
| 13 | + * AF_INET6, Solaris8 returns AF_INET. So, we avoid this here. | ||
| 14 | + */ | ||
| 15 | + if (STRN_EQ(string, "::ffff:", 7) | ||
| 16 | + && dot_quad_addr(string + 7) != INADDR_NONE) | ||
| 17 | + return (masked_match4(net_tok, mask_tok, string + 7)); | ||
| 18 | + | ||
| 19 | memset(&hints, 0, sizeof(hints)); | ||
| 20 | hints.ai_family = AF_INET6; | ||
| 21 | hints.ai_socktype = SOCK_STREAM; | ||
| 22 | @@ -457,13 +466,6 @@ | ||
| 23 | memcpy(&addr, res->ai_addr, sizeof(addr)); | ||
| 24 | freeaddrinfo(res); | ||
| 25 | |||
| 26 | - if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { | ||
| 27 | - if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE | ||
| 28 | - || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) | ||
| 29 | - return (NO); | ||
| 30 | - return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); | ||
| 31 | - } | ||
| 32 | - | ||
| 33 | /* match IPv6 address against netnumber/prefixlen */ | ||
| 34 | len = strlen(net_tok); | ||
| 35 | if (*net_tok != '[' || net_tok[len - 1] != ']') | ||
| 36 | diff -uN tcp_wrappers_7.6/socket.c tcp_wrappers_7.6.new/socket.c | ||
| 37 | --- tcp_wrappers_7.6/socket.c Mon May 20 13:48:35 2002 | ||
| 38 | +++ tcp_wrappers_7.6.new/socket.c Mon May 20 14:22:27 2002 | ||
| 39 | @@ -228,7 +228,7 @@ | ||
| 40 | hints.ai_family = sin->sa_family; | ||
| 41 | hints.ai_socktype = SOCK_STREAM; | ||
| 42 | hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; | ||
| 43 | - if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { | ||
| 44 | + if ((err = getaddrinfo(host->name, NULL, &hints, &res0)) == 0) { | ||
| 45 | freeaddrinfo(res0); | ||
| 46 | res0 = NULL; | ||
| 47 | tcpd_warn("host name/name mismatch: " | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch deleted file mode 100644 index 895a72e6b4..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch +++ /dev/null | |||
| @@ -1,85 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | Index: tcp_wrappers_7.6/Makefile | ||
| 4 | =================================================================== | ||
| 5 | --- tcp_wrappers_7.6.orig/Makefile | ||
| 6 | +++ tcp_wrappers_7.6/Makefile | ||
| 7 | @@ -45,7 +45,7 @@ what: | ||
| 8 | # | ||
| 9 | # SysV.4 Solaris 2.x OSF AIX | ||
| 10 | #REAL_DAEMON_DIR=/usr/sbin | ||
| 11 | -# | ||
| 12 | +REAL_DAEMON_DIR=/usr/sbin | ||
| 13 | # BSD 4.4 | ||
| 14 | #REAL_DAEMON_DIR=/usr/libexec | ||
| 15 | # | ||
| 16 | @@ -513,6 +513,7 @@ VSYSLOG = -Dvsyslog=myvsyslog | ||
| 17 | # (examples: allow, deny, banners, twist and spawn). | ||
| 18 | # | ||
| 19 | #STYLE = -DPROCESS_OPTIONS # Enable language extensions. | ||
| 20 | +STYLE = -DPROCESS_OPTIONS | ||
| 21 | |||
| 22 | ################################################################ | ||
| 23 | # Optional: Changing the default disposition of logfile records | ||
| 24 | @@ -536,6 +537,7 @@ VSYSLOG = -Dvsyslog=myvsyslog | ||
| 25 | # The LOG_XXX names below are taken from the /usr/include/syslog.h file. | ||
| 26 | |||
| 27 | FACILITY= LOG_MAIL # LOG_MAIL is what most sendmail daemons use | ||
| 28 | +FACILITY= LOG_DAEMON | ||
| 29 | |||
| 30 | # The syslog priority at which successful connections are logged. | ||
| 31 | |||
| 32 | @@ -632,6 +634,7 @@ TABLES = -DHOSTS_DENY=\"/etc/hosts.deny\ | ||
| 33 | # lookups altogether, see the next section. | ||
| 34 | |||
| 35 | PARANOID= -DPARANOID | ||
| 36 | +PARANOID= | ||
| 37 | |||
| 38 | ######################################## | ||
| 39 | # Optional: turning off hostname lookups | ||
| 40 | @@ -645,6 +648,7 @@ PARANOID= -DPARANOID | ||
| 41 | # mode (see previous section) and comment out the following definition. | ||
| 42 | |||
| 43 | HOSTNAME= -DALWAYS_HOSTNAME | ||
| 44 | +HOSTNAME= | ||
| 45 | |||
| 46 | ############################################# | ||
| 47 | # Optional: Turning on host ADDRESS checking | ||
| 48 | @@ -671,6 +675,7 @@ HOSTNAME= -DALWAYS_HOSTNAME | ||
| 49 | # Solaris 2.x, and Linux. See your system documentation for details. | ||
| 50 | # | ||
| 51 | # KILL_OPT= -DKILL_IP_OPTIONS | ||
| 52 | +KILL_OPT= -DKILL_IP_OPTIONS | ||
| 53 | |||
| 54 | ## End configuration options | ||
| 55 | ############################ | ||
| 56 | @@ -678,9 +683,10 @@ HOSTNAME= -DALWAYS_HOSTNAME | ||
| 57 | # Protection against weird shells or weird make programs. | ||
| 58 | |||
| 59 | SHELL = /bin/sh | ||
| 60 | -.c.o:; $(CC) $(CFLAGS) -c $*.c | ||
| 61 | +.c.o:; $(CC) $(CFLAGS) -o $*.o -c $*.c | ||
| 62 | |||
| 63 | -CFLAGS = -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ | ||
| 64 | +COPTS = -O2 -g | ||
| 65 | +CFLAGS = $(COPTS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ | ||
| 66 | $(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \ | ||
| 67 | -DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \ | ||
| 68 | -DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \ | ||
| 69 | @@ -713,11 +719,12 @@ all other: config-check tcpd tcpdmatch t | ||
| 70 | |||
| 71 | config-check: | ||
| 72 | @set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; } | ||
| 73 | - @set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \ | ||
| 74 | - if cmp cflags /tmp/cflags.$$$$ ; \ | ||
| 75 | - then rm /tmp/cflags.$$$$ ; \ | ||
| 76 | - else mv /tmp/cflags.$$$$ cflags ; \ | ||
| 77 | + @set +e; echo $(CFLAGS) >cflags.new ; \ | ||
| 78 | + if cmp cflags cflags.new ; \ | ||
| 79 | + then rm cflags.new ; \ | ||
| 80 | + else mv cflags.new cflags ; \ | ||
| 81 | fi >/dev/null 2>/dev/null | ||
| 82 | + @if [ ! -d shared ]; then mkdir shared; fi | ||
| 83 | |||
| 84 | $(LIB): $(LIB_OBJ) | ||
| 85 | rm -f $(LIB) | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch deleted file mode 100644 index 9503fb3c88..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch +++ /dev/null | |||
| @@ -1,255 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile | ||
| 4 | --- tcp_wrappers_7.6.orig/Makefile 2004-05-02 15:37:59.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/Makefile 2004-05-02 15:31:09.000000000 +0200 | ||
| 6 | @@ -150,15 +150,15 @@ | ||
| 7 | |||
| 8 | linux: | ||
| 9 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 10 | - LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ | ||
| 11 | + LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ | ||
| 12 | NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ | ||
| 13 | - EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all | ||
| 14 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all | ||
| 15 | |||
| 16 | gnu: | ||
| 17 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 18 | - LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ | ||
| 19 | + LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ | ||
| 20 | NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ | ||
| 21 | - EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all | ||
| 22 | + EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT" all | ||
| 23 | |||
| 24 | # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. | ||
| 25 | hpux hpux8 hpux9 hpux10: | ||
| 26 | @@ -713,7 +713,22 @@ | ||
| 27 | |||
| 28 | LIB = libwrap.a | ||
| 29 | |||
| 30 | -all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk | ||
| 31 | +shared/%.o: %.c | ||
| 32 | + $(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@ | ||
| 33 | + | ||
| 34 | +SOMAJOR = 0 | ||
| 35 | +SOMINOR = 7.6 | ||
| 36 | + | ||
| 37 | +SHLIB = shared/libwrap.so.$(SOMAJOR).$(SOMINOR) | ||
| 38 | +SHLIBSOMAJ = shared/libwrap.so.$(SOMAJOR) | ||
| 39 | +SHLIBSO = shared/libwrap.so | ||
| 40 | +SHLIBFLAGS = -Lshared -lwrap | ||
| 41 | + | ||
| 42 | +SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS) | ||
| 43 | +SHCFLAGS = -fPIC -shared -D_REENTRANT | ||
| 44 | +SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ)); | ||
| 45 | + | ||
| 46 | +all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB) | ||
| 47 | |||
| 48 | # Invalidate all object files when the compiler options (CFLAGS) have changed. | ||
| 49 | |||
| 50 | @@ -731,27 +746,33 @@ | ||
| 51 | $(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ) | ||
| 52 | -$(RANLIB) $(LIB) | ||
| 53 | |||
| 54 | -tcpd: tcpd.o $(LIB) | ||
| 55 | - $(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS) | ||
| 56 | +$(SHLIB): $(SHLIB_OBJ) | ||
| 57 | + rm -f $(SHLIB) | ||
| 58 | + $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) | ||
| 59 | + ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) | ||
| 60 | + ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) | ||
| 61 | + | ||
| 62 | +tcpd: tcpd.o $(SHLIB) | ||
| 63 | + $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) | ||
| 64 | |||
| 65 | miscd: miscd.o $(LIB) | ||
| 66 | $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) | ||
| 67 | |||
| 68 | -safe_finger: safe_finger.o $(LIB) | ||
| 69 | - $(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS) | ||
| 70 | +safe_finger: safe_finger.o $(SHLIB) | ||
| 71 | + $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) | ||
| 72 | |||
| 73 | TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o | ||
| 74 | |||
| 75 | -tcpdmatch: $(TCPDMATCH_OBJ) $(LIB) | ||
| 76 | - $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS) | ||
| 77 | +tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) | ||
| 78 | + $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) | ||
| 79 | |||
| 80 | -try-from: try-from.o fakelog.o $(LIB) | ||
| 81 | - $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS) | ||
| 82 | +try-from: try-from.o fakelog.o $(SHLIB) | ||
| 83 | + $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) | ||
| 84 | |||
| 85 | TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o | ||
| 86 | |||
| 87 | -tcpdchk: $(TCPDCHK_OBJ) $(LIB) | ||
| 88 | - $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS) | ||
| 89 | +tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) | ||
| 90 | + $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) | ||
| 91 | |||
| 92 | shar: $(KIT) | ||
| 93 | @shar $(KIT) | ||
| 94 | @@ -767,7 +788,9 @@ | ||
| 95 | |||
| 96 | clean: | ||
| 97 | rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \ | ||
| 98 | + libwrap*.so* \ | ||
| 99 | cflags | ||
| 100 | + rm -rf shared/ | ||
| 101 | |||
| 102 | tidy: clean | ||
| 103 | chmod -R a+r . | ||
| 104 | @@ -913,5 +936,6 @@ | ||
| 105 | update.o: mystdarg.h | ||
| 106 | update.o: tcpd.h | ||
| 107 | vfprintf.o: cflags | ||
| 108 | +weak_symbols.o: tcpd.h | ||
| 109 | workarounds.o: cflags | ||
| 110 | workarounds.o: tcpd.h | ||
| 111 | diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h | ||
| 112 | --- tcp_wrappers_7.6.orig/tcpd.h 2004-05-02 15:37:59.000000000 +0200 | ||
| 113 | +++ tcp_wrappers_7.6/tcpd.h 2004-05-02 15:37:49.000000000 +0200 | ||
| 114 | @@ -4,6 +4,15 @@ | ||
| 115 | * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. | ||
| 116 | */ | ||
| 117 | |||
| 118 | +#ifndef _TCPWRAPPERS_TCPD_H | ||
| 119 | +#define _TCPWRAPPERS_TCPD_H | ||
| 120 | + | ||
| 121 | +/* Need definitions of struct sockaddr_in and FILE. */ | ||
| 122 | +#include <netinet/in.h> | ||
| 123 | +#include <stdio.h> | ||
| 124 | + | ||
| 125 | +__BEGIN_DECLS | ||
| 126 | + | ||
| 127 | /* Structure to describe one communications endpoint. */ | ||
| 128 | |||
| 129 | #define STRING_LENGTH 128 /* hosts, users, processes */ | ||
| 130 | @@ -29,10 +38,10 @@ | ||
| 131 | char pid[10]; /* access via eval_pid(request) */ | ||
| 132 | struct host_info client[1]; /* client endpoint info */ | ||
| 133 | struct host_info server[1]; /* server endpoint info */ | ||
| 134 | - void (*sink) (); /* datagram sink function or 0 */ | ||
| 135 | - void (*hostname) (); /* address to printable hostname */ | ||
| 136 | - void (*hostaddr) (); /* address to printable address */ | ||
| 137 | - void (*cleanup) (); /* cleanup function or 0 */ | ||
| 138 | + void (*sink) (int); /* datagram sink function or 0 */ | ||
| 139 | + void (*hostname) (struct host_info *); /* address to printable hostname */ | ||
| 140 | + void (*hostaddr) (struct host_info *); /* address to printable address */ | ||
| 141 | + void (*cleanup) (struct request_info *); /* cleanup function or 0 */ | ||
| 142 | struct netconfig *config; /* netdir handle */ | ||
| 143 | }; | ||
| 144 | |||
| 145 | @@ -70,20 +79,27 @@ | ||
| 146 | #define fromhost sock_host /* no TLI support needed */ | ||
| 147 | #endif | ||
| 148 | |||
| 149 | -extern int hosts_access(); /* access control */ | ||
| 150 | -extern void shell_cmd(); /* execute shell command */ | ||
| 151 | -extern char *percent_x(); /* do %<char> expansion */ | ||
| 152 | -extern void rfc931(); /* client name from RFC 931 daemon */ | ||
| 153 | -extern void clean_exit(); /* clean up and exit */ | ||
| 154 | -extern void refuse(); /* clean up and exit */ | ||
| 155 | -extern char *xgets(); /* fgets() on steroids */ | ||
| 156 | -extern char *split_at(); /* strchr() and split */ | ||
| 157 | -extern unsigned long dot_quad_addr(); /* restricted inet_addr() */ | ||
| 158 | +extern int hosts_access(struct request_info *request); /* access control */ | ||
| 159 | +extern void shell_cmd(char *); /* execute shell command */ | ||
| 160 | +extern char *percent_x(char *, int, char *, struct request_info *); | ||
| 161 | + /* do %<char> expansion */ | ||
| 162 | +extern void rfc931(struct sockaddr *, struct sockaddr *, char *); | ||
| 163 | + /* client name from RFC 931 daemon */ | ||
| 164 | +extern void clean_exit(struct request_info *); /* clean up and exit */ | ||
| 165 | +extern void refuse(struct request_info *); /* clean up and exit */ | ||
| 166 | +extern char *xgets(char *, int, FILE *); /* fgets() on steroids */ | ||
| 167 | +extern char *split_at(char *, int); /* strchr() and split */ | ||
| 168 | +extern unsigned long dot_quad_addr(char *); /* restricted inet_addr() */ | ||
| 169 | |||
| 170 | /* Global variables. */ | ||
| 171 | |||
| 172 | +#ifdef HAVE_WEAKSYMS | ||
| 173 | +extern int allow_severity __attribute__ ((weak)); /* for connection logging */ | ||
| 174 | +extern int deny_severity __attribute__ ((weak)); /* for connection logging */ | ||
| 175 | +#else | ||
| 176 | extern int allow_severity; /* for connection logging */ | ||
| 177 | extern int deny_severity; /* for connection logging */ | ||
| 178 | +#endif | ||
| 179 | extern char *hosts_allow_table; /* for verification mode redirection */ | ||
| 180 | extern char *hosts_deny_table; /* for verification mode redirection */ | ||
| 181 | extern int hosts_access_verbose; /* for verbose matching mode */ | ||
| 182 | @@ -98,6 +114,8 @@ | ||
| 183 | #ifdef __STDC__ | ||
| 184 | extern struct request_info *request_init(struct request_info *,...); | ||
| 185 | extern struct request_info *request_set(struct request_info *,...); | ||
| 186 | +extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, | ||
| 187 | + char *client_user); | ||
| 188 | #else | ||
| 189 | extern struct request_info *request_init(); /* initialize request */ | ||
| 190 | extern struct request_info *request_set(); /* update request structure */ | ||
| 191 | @@ -121,20 +139,23 @@ | ||
| 192 | * host_info structures serve as caches for the lookup results. | ||
| 193 | */ | ||
| 194 | |||
| 195 | -extern char *eval_user(); /* client user */ | ||
| 196 | -extern char *eval_hostname(); /* printable hostname */ | ||
| 197 | -extern char *eval_hostaddr(); /* printable host address */ | ||
| 198 | -extern char *eval_hostinfo(); /* host name or address */ | ||
| 199 | -extern char *eval_client(); /* whatever is available */ | ||
| 200 | -extern char *eval_server(); /* whatever is available */ | ||
| 201 | +extern char *eval_user(struct request_info *); /* client user */ | ||
| 202 | +extern char *eval_hostname(struct host_info *); /* printable hostname */ | ||
| 203 | +extern char *eval_hostaddr(struct host_info *); /* printable host address */ | ||
| 204 | +extern char *eval_hostinfo(struct host_info *); /* host name or address */ | ||
| 205 | +extern char *eval_client(struct request_info *);/* whatever is available */ | ||
| 206 | +extern char *eval_server(struct request_info *);/* whatever is available */ | ||
| 207 | #define eval_daemon(r) ((r)->daemon) /* daemon process name */ | ||
| 208 | #define eval_pid(r) ((r)->pid) /* process id */ | ||
| 209 | |||
| 210 | /* Socket-specific methods, including DNS hostname lookups. */ | ||
| 211 | |||
| 212 | -extern void sock_host(); /* look up endpoint addresses */ | ||
| 213 | -extern void sock_hostname(); /* translate address to hostname */ | ||
| 214 | -extern void sock_hostaddr(); /* address to printable address */ | ||
| 215 | +/* look up endpoint addresses */ | ||
| 216 | +extern void sock_host(struct request_info *); | ||
| 217 | +/* translate address to hostname */ | ||
| 218 | +extern void sock_hostname(struct host_info *); | ||
| 219 | +/* address to printable address */ | ||
| 220 | +extern void sock_hostaddr(struct host_info *); | ||
| 221 | #define sock_methods(r) \ | ||
| 222 | { (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; } | ||
| 223 | |||
| 224 | @@ -182,7 +203,7 @@ | ||
| 225 | * behavior. | ||
| 226 | */ | ||
| 227 | |||
| 228 | -extern void process_options(); /* execute options */ | ||
| 229 | +extern void process_options(char *, struct request_info *);/* execute options */ | ||
| 230 | extern int dry_run; /* verification flag */ | ||
| 231 | |||
| 232 | /* Bug workarounds. */ | ||
| 233 | @@ -221,3 +242,7 @@ | ||
| 234 | #define strtok my_strtok | ||
| 235 | extern char *my_strtok(); | ||
| 236 | #endif | ||
| 237 | + | ||
| 238 | +__END_DECLS | ||
| 239 | + | ||
| 240 | +#endif | ||
| 241 | diff -ruN tcp_wrappers_7.6.orig/weak_symbols.c tcp_wrappers_7.6/weak_symbols.c | ||
| 242 | --- tcp_wrappers_7.6.orig/weak_symbols.c 1970-01-01 01:00:00.000000000 +0100 | ||
| 243 | +++ tcp_wrappers_7.6/weak_symbols.c 2004-05-02 15:31:09.000000000 +0200 | ||
| 244 | @@ -0,0 +1,11 @@ | ||
| 245 | + /* | ||
| 246 | + * @(#) weak_symbols.h 1.5 99/12/29 23:50 | ||
| 247 | + * | ||
| 248 | + * Author: Anthony Towns <ajt@debian.org> | ||
| 249 | + */ | ||
| 250 | + | ||
| 251 | +#ifdef HAVE_WEAKSYMS | ||
| 252 | +#include <syslog.h> | ||
| 253 | +int deny_severity = LOG_WARNING; | ||
| 254 | +int allow_severity = SEVERITY; | ||
| 255 | +#endif | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch deleted file mode 100644 index b6681df8ce..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 4 | --- tcp_wrappers_7.6.orig/hosts_access.5 2003-08-21 03:15:36.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/hosts_access.5 2003-08-21 03:15:31.000000000 +0200 | ||
| 6 | @@ -90,6 +90,10 @@ | ||
| 7 | pattern `131.155.72.0/255.255.254.0\' matches every address in the | ||
| 8 | range `131.155.72.0\' through `131.155.73.255\'. | ||
| 9 | .IP \(bu | ||
| 10 | +An expression of the form `n.n.n.n/mm' is interpreted as a | ||
| 11 | +`net/masklength' pair, where `mm' is the number of consecutive `1' | ||
| 12 | +bits in the netmask applied to the `n.n.n.n' address. | ||
| 13 | +.IP \(bu | ||
| 14 | An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a | ||
| 15 | `[net]/prefixlen\' pair. An IPv6 host address is matched if | ||
| 16 | `prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the | ||
| 17 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c | ||
| 18 | --- tcp_wrappers_7.6.orig/hosts_access.c 2003-08-21 03:15:36.000000000 +0200 | ||
| 19 | +++ tcp_wrappers_7.6/hosts_access.c 2003-08-21 03:09:30.000000000 +0200 | ||
| 20 | @@ -417,7 +417,8 @@ | ||
| 21 | if ((addr = dot_quad_addr(string)) == INADDR_NONE) | ||
| 22 | return (NO); | ||
| 23 | if ((net = dot_quad_addr(net_tok)) == INADDR_NONE | ||
| 24 | - || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { | ||
| 25 | + || ((mask = dot_quad_addr(mask_tok)) == INADDR_NONE | ||
| 26 | + && (mask = cidr_mask_addr(mask_tok)) == 0)) { | ||
| 27 | #ifndef INET6 | ||
| 28 | tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); | ||
| 29 | #endif | ||
| 30 | diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c | ||
| 31 | --- tcp_wrappers_7.6.orig/misc.c 2003-08-21 03:15:36.000000000 +0200 | ||
| 32 | +++ tcp_wrappers_7.6/misc.c 2003-08-21 03:09:30.000000000 +0200 | ||
| 33 | @@ -107,3 +107,17 @@ | ||
| 34 | } | ||
| 35 | return (runs == 4 ? inet_addr(str) : INADDR_NONE); | ||
| 36 | } | ||
| 37 | + | ||
| 38 | +/* cidr_mask_addr - convert cidr netmask length to internal form */ | ||
| 39 | + | ||
| 40 | +unsigned long cidr_mask_addr(str) | ||
| 41 | +char *str; | ||
| 42 | +{ | ||
| 43 | + int maskbits; | ||
| 44 | + | ||
| 45 | + maskbits = atoi(str); | ||
| 46 | + if (maskbits < 1 || maskbits > 32) | ||
| 47 | + return (0); | ||
| 48 | + return htonl(0xFFFFFFFF << (32 - maskbits)); | ||
| 49 | +} | ||
| 50 | + | ||
| 51 | diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c | ||
| 52 | --- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 03:15:36.000000000 +0200 | ||
| 53 | +++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 03:09:30.000000000 +0200 | ||
| 54 | @@ -497,12 +497,12 @@ | ||
| 55 | int mask_len; | ||
| 56 | |||
| 57 | if ((dot_quad_addr(pat) == INADDR_NONE | ||
| 58 | - || dot_quad_addr(mask) == INADDR_NONE) | ||
| 59 | + || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) | ||
| 60 | && (!is_inet6_addr(pat) | ||
| 61 | || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) | ||
| 62 | #else | ||
| 63 | if (dot_quad_addr(pat) == INADDR_NONE | ||
| 64 | - || dot_quad_addr(mask) == INADDR_NONE) | ||
| 65 | + || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) | ||
| 66 | #endif | ||
| 67 | tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); | ||
| 68 | } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch deleted file mode 100644 index 0c8594cac3..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 4 | --- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-25 12:17:59.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/hosts_access.5 2004-04-25 12:17:53.000000000 +0200 | ||
| 6 | @@ -89,6 +89,8 @@ | ||
| 7 | bitwise AND of the address and the `mask\'. For example, the net/mask | ||
| 8 | pattern `131.155.72.0/255.255.254.0\' matches every address in the | ||
| 9 | range `131.155.72.0\' through `131.155.73.255\'. | ||
| 10 | +`255.255.255.255\' is not a valid mask value, so a single host can be | ||
| 11 | +matched just by its IP. | ||
| 12 | .IP \(bu | ||
| 13 | An expression of the form `n.n.n.n/mm' is interpreted as a | ||
| 14 | `net/masklength' pair, where `mm' is the number of consecutive `1' | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch deleted file mode 100644 index 0c54ba6d35..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch +++ /dev/null | |||
| @@ -1,73 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/eval.c tcp_wrappers_7.6/eval.c | ||
| 4 | --- tcp_wrappers_7.6.orig/eval.c 1995-01-30 19:51:46.000000000 +0100 | ||
| 5 | +++ tcp_wrappers_7.6/eval.c 2004-11-04 13:59:01.000000000 +0100 | ||
| 6 | @@ -98,6 +98,28 @@ | ||
| 7 | } | ||
| 8 | } | ||
| 9 | |||
| 10 | +/* eval_port - return string with the port */ | ||
| 11 | +char *eval_port(saddr) | ||
| 12 | +#ifdef INET6 | ||
| 13 | +struct sockaddr *saddr; | ||
| 14 | +#else | ||
| 15 | +struct sockaddr_in *saddr; | ||
| 16 | +#endif | ||
| 17 | +{ | ||
| 18 | + static char port[16]; | ||
| 19 | + if (saddr != 0) { | ||
| 20 | + sprintf(port, "%u", | ||
| 21 | +#ifdef INET6 | ||
| 22 | + ntohs(((struct sockaddr_in *)saddr)->sin_port)); | ||
| 23 | +#else | ||
| 24 | + ntohs(saddr->sin_port)); | ||
| 25 | +#endif | ||
| 26 | + } else { | ||
| 27 | + strcpy(port, "0"); | ||
| 28 | + } | ||
| 29 | + return (port); | ||
| 30 | +} | ||
| 31 | + | ||
| 32 | /* eval_client - return string with as much about the client as we know */ | ||
| 33 | |||
| 34 | char *eval_client(request) | ||
| 35 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 | ||
| 36 | --- tcp_wrappers_7.6.orig/hosts_access.5 2004-11-04 13:17:45.000000000 +0100 | ||
| 37 | +++ tcp_wrappers_7.6/hosts_access.5 2004-11-04 13:55:32.000000000 +0100 | ||
| 38 | @@ -175,6 +175,8 @@ | ||
| 39 | unavailable. | ||
| 40 | .IP "%n (%N)" | ||
| 41 | The client (server) host name (or "unknown" or "paranoid"). | ||
| 42 | +.IP "%r (%R)" | ||
| 43 | +The clients (servers) port number (or "0"). | ||
| 44 | .IP %p | ||
| 45 | The daemon process id. | ||
| 46 | .IP %s | ||
| 47 | diff -ruN tcp_wrappers_7.6.orig/percent_x.c tcp_wrappers_7.6/percent_x.c | ||
| 48 | --- tcp_wrappers_7.6.orig/percent_x.c 1994-12-28 17:42:38.000000000 +0100 | ||
| 49 | +++ tcp_wrappers_7.6/percent_x.c 2004-11-04 13:19:29.000000000 +0100 | ||
| 50 | @@ -63,6 +63,8 @@ | ||
| 51 | ch == 'n' ? eval_hostname(request->client) : | ||
| 52 | ch == 'N' ? eval_hostname(request->server) : | ||
| 53 | ch == 'p' ? eval_pid(request) : | ||
| 54 | + ch == 'r' ? eval_port(request->client->sin) : | ||
| 55 | + ch == 'R' ? eval_port(request->server->sin) : | ||
| 56 | ch == 's' ? eval_server(request) : | ||
| 57 | ch == 'u' ? eval_user(request) : | ||
| 58 | ch == '%' ? "%" : (tcpd_warn("unrecognized %%%c", ch), ""); | ||
| 59 | diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h | ||
| 60 | --- tcp_wrappers_7.6.orig/tcpd.h 2004-11-04 13:17:45.000000000 +0100 | ||
| 61 | +++ tcp_wrappers_7.6/tcpd.h 2004-11-04 13:19:13.000000000 +0100 | ||
| 62 | @@ -145,6 +145,11 @@ | ||
| 63 | extern char *eval_hostinfo(struct host_info *); /* host name or address */ | ||
| 64 | extern char *eval_client(struct request_info *);/* whatever is available */ | ||
| 65 | extern char *eval_server(struct request_info *);/* whatever is available */ | ||
| 66 | +#ifdef INET6 | ||
| 67 | +extern char *eval_port(struct sockaddr *); | ||
| 68 | +#else | ||
| 69 | +extern char *eval_port(struct sockaddr_in *); | ||
| 70 | +#endif | ||
| 71 | #define eval_daemon(r) ((r)->daemon) /* daemon process name */ | ||
| 72 | #define eval_pid(r) ((r)->pid) /* process id */ | ||
| 73 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings.patch deleted file mode 100644 index 0fd2ca7b2b..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings.patch +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | Compile warning fixes from Debian | ||
| 2 | |||
| 3 | Signed-off-by: Adrian Bunk <bunk@stusta.de> | ||
| 4 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 5 | |||
| 6 | --- a/options.c | ||
| 7 | +++ b/options.c | ||
| 8 | @@ -41,6 +41,7 @@ static char sccsid[] = "@(#) options.c 1 | ||
| 9 | #include <netinet/in.h> | ||
| 10 | #include <netdb.h> | ||
| 11 | #include <stdio.h> | ||
| 12 | +#include <unistd.h> | ||
| 13 | #include <syslog.h> | ||
| 14 | #include <pwd.h> | ||
| 15 | #include <grp.h> | ||
| 16 | --- a/scaffold.c | ||
| 17 | +++ b/scaffold.c | ||
| 18 | @@ -17,6 +17,7 @@ static char sccs_id[] = "@(#) scaffold.c | ||
| 19 | #include <arpa/inet.h> | ||
| 20 | #include <netdb.h> | ||
| 21 | #include <stdio.h> | ||
| 22 | +#include <stdlib.h> | ||
| 23 | #include <syslog.h> | ||
| 24 | #include <setjmp.h> | ||
| 25 | #include <string.h> | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings2.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings2.patch deleted file mode 100644 index d9a6909db7..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/fix_warnings2.patch +++ /dev/null | |||
| @@ -1,200 +0,0 @@ | |||
| 1 | Compile warning fixes from Debian | ||
| 2 | |||
| 3 | Signed-off-by: Adrian Bunk <bunk@stusta.de> | ||
| 4 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 5 | |||
| 6 | --- a/clean_exit.c | ||
| 7 | +++ b/clean_exit.c | ||
| 8 | @@ -13,6 +13,7 @@ static char sccsid[] = "@(#) clean_exit. | ||
| 9 | #endif | ||
| 10 | |||
| 11 | #include <stdio.h> | ||
| 12 | +#include <unistd.h> | ||
| 13 | |||
| 14 | extern void exit(); | ||
| 15 | |||
| 16 | --- a/hosts_access.c | ||
| 17 | +++ b/hosts_access.c | ||
| 18 | @@ -34,6 +34,7 @@ static char sccsid[] = "@(#) hosts_acces | ||
| 19 | #include <netinet/in.h> | ||
| 20 | #include <arpa/inet.h> | ||
| 21 | #include <stdio.h> | ||
| 22 | +#include <stdlib.h> | ||
| 23 | #include <syslog.h> | ||
| 24 | #include <ctype.h> | ||
| 25 | #include <errno.h> | ||
| 26 | --- a/misc.c | ||
| 27 | +++ b/misc.c | ||
| 28 | @@ -13,6 +13,7 @@ static char sccsic[] = "@(#) misc.c 1.2 | ||
| 29 | #include <netinet/in.h> | ||
| 30 | #include <arpa/inet.h> | ||
| 31 | #include <stdio.h> | ||
| 32 | +#include <stdlib.h> | ||
| 33 | #include <string.h> | ||
| 34 | |||
| 35 | #include "tcpd.h" | ||
| 36 | --- a/options.c | ||
| 37 | +++ b/options.c | ||
| 38 | @@ -41,6 +41,7 @@ static char sccsid[] = "@(#) options.c 1 | ||
| 39 | #include <netinet/in.h> | ||
| 40 | #include <netdb.h> | ||
| 41 | #include <stdio.h> | ||
| 42 | +#include <stdlib.h> | ||
| 43 | #include <unistd.h> | ||
| 44 | #include <syslog.h> | ||
| 45 | #include <pwd.h> | ||
| 46 | --- a/percent_x.c | ||
| 47 | +++ b/percent_x.c | ||
| 48 | @@ -17,6 +17,7 @@ static char sccsid[] = "@(#) percent_x.c | ||
| 49 | /* System libraries. */ | ||
| 50 | |||
| 51 | #include <stdio.h> | ||
| 52 | +#include <unistd.h> | ||
| 53 | #include <syslog.h> | ||
| 54 | #include <string.h> | ||
| 55 | |||
| 56 | --- a/rfc931.c | ||
| 57 | +++ b/rfc931.c | ||
| 58 | @@ -16,6 +16,7 @@ static char sccsid[] = "@(#) rfc931.c 1. | ||
| 59 | /* System libraries. */ | ||
| 60 | |||
| 61 | #include <stdio.h> | ||
| 62 | +#include <unistd.h> | ||
| 63 | #include <syslog.h> | ||
| 64 | #include <sys/types.h> | ||
| 65 | #include <sys/socket.h> | ||
| 66 | --- a/tcpd.c | ||
| 67 | +++ b/tcpd.c | ||
| 68 | @@ -22,6 +22,7 @@ static char sccsid[] = "@(#) tcpd.c 1.10 | ||
| 69 | #include <sys/socket.h> | ||
| 70 | #include <netinet/in.h> | ||
| 71 | #include <stdio.h> | ||
| 72 | +#include <unistd.h> | ||
| 73 | #include <syslog.h> | ||
| 74 | #include <string.h> | ||
| 75 | |||
| 76 | --- a/update.c | ||
| 77 | +++ b/update.c | ||
| 78 | @@ -20,6 +20,7 @@ static char sccsid[] = "@(#) update.c 1. | ||
| 79 | /* System libraries */ | ||
| 80 | |||
| 81 | #include <stdio.h> | ||
| 82 | +#include <unistd.h> | ||
| 83 | #include <syslog.h> | ||
| 84 | #include <string.h> | ||
| 85 | |||
| 86 | --- a/fakelog.c | ||
| 87 | +++ b/fakelog.c | ||
| 88 | @@ -17,7 +17,7 @@ static char sccsid[] = "@(#) fakelog.c 1 | ||
| 89 | |||
| 90 | /* ARGSUSED */ | ||
| 91 | |||
| 92 | -openlog(name, logopt, facility) | ||
| 93 | +void openlog(name, logopt, facility) | ||
| 94 | char *name; | ||
| 95 | int logopt; | ||
| 96 | int facility; | ||
| 97 | @@ -27,7 +27,7 @@ int facility; | ||
| 98 | |||
| 99 | /* vsyslog - format one record */ | ||
| 100 | |||
| 101 | -vsyslog(severity, fmt, ap) | ||
| 102 | +void vsyslog(severity, fmt, ap) | ||
| 103 | int severity; | ||
| 104 | char *fmt; | ||
| 105 | va_list ap; | ||
| 106 | @@ -43,7 +43,7 @@ va_list ap; | ||
| 107 | |||
| 108 | /* VARARGS */ | ||
| 109 | |||
| 110 | -VARARGS(syslog, int, severity) | ||
| 111 | +void VARARGS(syslog, int, severity) | ||
| 112 | { | ||
| 113 | va_list ap; | ||
| 114 | char *fmt; | ||
| 115 | @@ -56,7 +56,7 @@ VARARGS(syslog, int, severity) | ||
| 116 | |||
| 117 | /* closelog - dummy */ | ||
| 118 | |||
| 119 | -closelog() | ||
| 120 | +void closelog() | ||
| 121 | { | ||
| 122 | /* void */ | ||
| 123 | } | ||
| 124 | --- a/safe_finger.c | ||
| 125 | +++ b/safe_finger.c | ||
| 126 | @@ -22,10 +22,15 @@ static char sccsid[] = "@(#) safe_finger | ||
| 127 | |||
| 128 | #include <sys/types.h> | ||
| 129 | #include <sys/stat.h> | ||
| 130 | +#include <sys/wait.h> | ||
| 131 | +#include <fcntl.h> | ||
| 132 | #include <signal.h> | ||
| 133 | #include <stdio.h> | ||
| 134 | +#include <stdlib.h> | ||
| 135 | +#include <unistd.h> | ||
| 136 | #include <ctype.h> | ||
| 137 | #include <pwd.h> | ||
| 138 | +#include <grp.h> | ||
| 139 | #include <syslog.h> | ||
| 140 | |||
| 141 | extern void exit(); | ||
| 142 | @@ -52,7 +59,7 @@ int sig; | ||
| 143 | exit(0); | ||
| 144 | } | ||
| 145 | |||
| 146 | -main(argc, argv) | ||
| 147 | +int main(argc, argv) | ||
| 148 | int argc; | ||
| 149 | char **argv; | ||
| 150 | { | ||
| 151 | --- a/tcpdchk.c | ||
| 152 | +++ b/tcpdchk.c | ||
| 153 | @@ -28,6 +28,8 @@ static char sccsid[] = "@(#) tcpdchk.c 1 | ||
| 154 | #include <netinet/in.h> | ||
| 155 | #include <arpa/inet.h> | ||
| 156 | #include <stdio.h> | ||
| 157 | +#include <stdlib.h> | ||
| 158 | +#include <unistd.h> | ||
| 159 | #include <syslog.h> | ||
| 160 | #include <setjmp.h> | ||
| 161 | #include <errno.h> | ||
| 162 | --- a/tcpdmatch.c | ||
| 163 | +++ b/tcpdmatch.c | ||
| 164 | @@ -26,6 +26,7 @@ static char sccsid[] = "@(#) tcpdmatch.c | ||
| 165 | #include <arpa/inet.h> | ||
| 166 | #include <netdb.h> | ||
| 167 | #include <stdio.h> | ||
| 168 | +#include <unistd.h> | ||
| 169 | #include <syslog.h> | ||
| 170 | #include <setjmp.h> | ||
| 171 | #include <string.h> | ||
| 172 | --- a/try-from.c | ||
| 173 | +++ b/try-from.c | ||
| 174 | @@ -37,7 +37,7 @@ static char sccsid[] = "@(#) try-from.c | ||
| 175 | int allow_severity = SEVERITY; /* run-time adjustable */ | ||
| 176 | int deny_severity = LOG_WARNING; /* ditto */ | ||
| 177 | |||
| 178 | -main(argc, argv) | ||
| 179 | +int main(argc, argv) | ||
| 180 | int argc; | ||
| 181 | char **argv; | ||
| 182 | { | ||
| 183 | --- a/inetcf.c | ||
| 184 | +++ b/inetcf.c | ||
| 185 | @@ -12,6 +12,7 @@ static char sccsid[] = "@(#) inetcf.c 1. | ||
| 186 | #include <sys/types.h> | ||
| 187 | #include <sys/stat.h> | ||
| 188 | #include <stdio.h> | ||
| 189 | +#include <stdlib.h> | ||
| 190 | #include <errno.h> | ||
| 191 | #include <string.h> | ||
| 192 | |||
| 193 | @@ -20,6 +21,7 @@ extern void exit(); | ||
| 194 | |||
| 195 | #include "tcpd.h" | ||
| 196 | #include "inetcf.h" | ||
| 197 | +#include "scaffold.h" | ||
| 198 | |||
| 199 | /* | ||
| 200 | * Network configuration files may live in unusual places. Here are some | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch deleted file mode 100644 index 9b1a3c0fa1..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/percent_m.c tcp_wrappers_7.6/percent_m.c | ||
| 4 | --- tcp_wrappers_7.6.orig/percent_m.c 1994-12-28 17:42:37.000000000 +0100 | ||
| 5 | +++ tcp_wrappers_7.6/percent_m.c 2003-08-21 02:45:31.000000000 +0200 | ||
| 6 | @@ -29,11 +29,15 @@ | ||
| 7 | |||
| 8 | while (*bp = *cp) | ||
| 9 | if (*cp == '%' && cp[1] == 'm') { | ||
| 10 | +#ifdef HAVE_STRERROR | ||
| 11 | + strcpy(bp, strerror(errno)); | ||
| 12 | +#else | ||
| 13 | if (errno < sys_nerr && errno > 0) { | ||
| 14 | strcpy(bp, sys_errlist[errno]); | ||
| 15 | } else { | ||
| 16 | sprintf(bp, "Unknown error %d", errno); | ||
| 17 | } | ||
| 18 | +#endif | ||
| 19 | bp += strlen(bp); | ||
| 20 | cp += 2; | ||
| 21 | } else { | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch deleted file mode 100644 index 79b677f456..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | Index: tcp_wrappers_7.6.orig/Makefile | ||
| 4 | =================================================================== | ||
| 5 | --- tcp_wrappers_7.6.orig.orig/Makefile 2009-04-06 10:55:47.000000000 +0000 | ||
| 6 | +++ tcp_wrappers_7.6.orig/Makefile 2009-04-06 10:57:04.000000000 +0000 | ||
| 7 | @@ -748,31 +748,31 @@ | ||
| 8 | |||
| 9 | $(SHLIB): $(SHLIB_OBJ) | ||
| 10 | rm -f $(SHLIB) | ||
| 11 | - $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) | ||
| 12 | + $(CC) $(LDFLAGS) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) | ||
| 13 | ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) | ||
| 14 | ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) | ||
| 15 | |||
| 16 | tcpd: tcpd.o $(SHLIB) | ||
| 17 | - $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) | ||
| 18 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) | ||
| 19 | |||
| 20 | miscd: miscd.o $(LIB) | ||
| 21 | - $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) | ||
| 22 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ miscd.o $(LIB) $(LIBS) | ||
| 23 | |||
| 24 | safe_finger: safe_finger.o $(SHLIB) | ||
| 25 | - $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) | ||
| 26 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) | ||
| 27 | |||
| 28 | TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o | ||
| 29 | |||
| 30 | tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) | ||
| 31 | - $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) | ||
| 32 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) | ||
| 33 | |||
| 34 | try-from: try-from.o fakelog.o $(SHLIB) | ||
| 35 | - $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) | ||
| 36 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) | ||
| 37 | |||
| 38 | TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o | ||
| 39 | |||
| 40 | tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) | ||
| 41 | - $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) | ||
| 42 | + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) | ||
| 43 | |||
| 44 | shar: $(KIT) | ||
| 45 | @shar $(KIT) | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/makefile-fix-parallel.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/makefile-fix-parallel.patch deleted file mode 100644 index 23762449ac..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/makefile-fix-parallel.patch +++ /dev/null | |||
| @@ -1,54 +0,0 @@ | |||
| 1 | From daf89d272e51b2153015ce7f54ab0b86182e64c1 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Robert Yang <liezhi.yang@windriver.com> | ||
| 3 | Date: Wed, 28 Jan 2015 18:50:23 -0800 | ||
| 4 | Subject: [PATCH] Makefile: fix for parallel build | ||
| 5 | |||
| 6 | Fixed: | ||
| 7 | make: *** No rule to make target `cflags', needed by `tcpd.o'. Stop. | ||
| 8 | |||
| 9 | Let "cflags" depend on config-check which generates cflgas will fix the | ||
| 10 | problem. | ||
| 11 | |||
| 12 | Also fixed: | ||
| 13 | Fatal error: can't create shared/hosts_access.o: No such file or directory | ||
| 14 | |||
| 15 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 16 | |||
| 17 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
| 18 | --- | ||
| 19 | Makefile | 5 ++++- | ||
| 20 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
| 21 | |||
| 22 | diff --git a/Makefile b/Makefile | ||
| 23 | index fe5e732..f468751 100644 | ||
| 24 | --- a/Makefile | ||
| 25 | +++ b/Makefile | ||
| 26 | @@ -714,6 +714,7 @@ KIT = README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \ | ||
| 27 | LIB = libwrap.a | ||
| 28 | |||
| 29 | shared/%.o: %.c | ||
| 30 | + [ -d shared ] || mkdir -p shared | ||
| 31 | $(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@ | ||
| 32 | |||
| 33 | SOMAJOR = 0 | ||
| 34 | @@ -730,6 +731,8 @@ SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ)); | ||
| 35 | |||
| 36 | all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB) | ||
| 37 | |||
| 38 | +cflags: config-check | ||
| 39 | + | ||
| 40 | # Invalidate all object files when the compiler options (CFLAGS) have changed. | ||
| 41 | |||
| 42 | config-check: | ||
| 43 | @@ -739,7 +742,7 @@ config-check: | ||
| 44 | then rm cflags.new ; \ | ||
| 45 | else mv cflags.new cflags ; \ | ||
| 46 | fi >/dev/null 2>/dev/null | ||
| 47 | - @if [ ! -d shared ]; then mkdir shared; fi | ||
| 48 | + @[ -d shared ] || mkdir -p shared | ||
| 49 | |||
| 50 | $(LIB): $(LIB_OBJ) | ||
| 51 | rm -f $(LIB) | ||
| 52 | -- | ||
| 53 | 1.7.9.5 | ||
| 54 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch deleted file mode 100644 index 30e74a1de1..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 | ||
| 4 | --- tcp_wrappers_7.6.orig/hosts_access.3 2004-04-25 00:10:48.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/hosts_access.3 2004-04-25 00:09:36.000000000 +0200 | ||
| 6 | @@ -14,6 +14,9 @@ | ||
| 7 | struct request_info *request_set(request, key, value, ..., 0) | ||
| 8 | struct request_info *request; | ||
| 9 | |||
| 10 | +void fromhost(request) | ||
| 11 | +struct request_info *request; | ||
| 12 | + | ||
| 13 | int hosts_access(request) | ||
| 14 | struct request_info *request; | ||
| 15 | |||
| 16 | @@ -60,6 +63,7 @@ | ||
| 17 | is available, host names and client user names are looked up on demand, | ||
| 18 | using the request structure as a cache. hosts_access() returns zero if | ||
| 19 | access should be denied. | ||
| 20 | +fromhost() must be called before hosts_access(). | ||
| 21 | .PP | ||
| 22 | hosts_ctl() is a wrapper around the request_init() and hosts_access() | ||
| 23 | routines with a perhaps more convenient interface (though it does not | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/musl-decls.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/musl-decls.patch deleted file mode 100644 index b998675aa0..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/musl-decls.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | __BEGIN_DECLS/__END_DECLS are BSD specific and not defined in musl | ||
| 2 | glibc and uclibc had sys/cdefs.h doing it. | ||
| 3 | |||
| 4 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 5 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 6 | |||
| 7 | Index: tcp_wrappers_7.6/tcpd.h | ||
| 8 | =================================================================== | ||
| 9 | --- tcp_wrappers_7.6.orig/tcpd.h | ||
| 10 | +++ tcp_wrappers_7.6/tcpd.h | ||
| 11 | @@ -11,7 +11,9 @@ | ||
| 12 | #include <netinet/in.h> | ||
| 13 | #include <stdio.h> | ||
| 14 | |||
| 15 | -__BEGIN_DECLS | ||
| 16 | +#ifdef __cplusplus | ||
| 17 | +extern "C" { | ||
| 18 | +#endif | ||
| 19 | |||
| 20 | /* Structure to describe one communications endpoint. */ | ||
| 21 | |||
| 22 | @@ -252,6 +254,8 @@ extern char *fix_strtok(); | ||
| 23 | extern char *my_strtok(); | ||
| 24 | #endif | ||
| 25 | |||
| 26 | -__END_DECLS | ||
| 27 | +#ifdef __cplusplus | ||
| 28 | +} | ||
| 29 | +#endif | ||
| 30 | |||
| 31 | #endif | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rename_strings_variable.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rename_strings_variable.patch deleted file mode 100644 index f42b9d2799..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rename_strings_variable.patch +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | STRINGS name conflicts with variable for strings tools (e.g. i586-oe-linux-strings) | ||
| 2 | |||
| 3 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 4 | |||
| 5 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
| 6 | |||
| 7 | --- tcp_wrappers_7.6/Makefile.orig 2013-04-18 23:41:58.277981740 +0200 | ||
| 8 | +++ tcp_wrappers_7.6/Makefile 2013-04-18 23:42:42.513978966 +0200 | ||
| 9 | @@ -309,7 +309,7 @@ | ||
| 10 | pyramid: | ||
| 11 | @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ | ||
| 12 | LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ="environ.o vfprintf.o" \ | ||
| 13 | - STRINGS="-Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy" \ | ||
| 14 | + STRINGS_FLAGS="-Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy" \ | ||
| 15 | NETGROUP="-DNETGROUP -DUSE_GETDOMAIN" TLI= all | ||
| 16 | |||
| 17 | # Untested. | ||
| 18 | @@ -419,7 +419,7 @@ | ||
| 19 | # Uncomment the following if your C library does not provide the | ||
| 20 | # strchr/strrchr/memcmp routines, but comes with index/rindex/bcmp. | ||
| 21 | # | ||
| 22 | -#STRINGS= -Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy | ||
| 23 | +#STRINGS_FLAGS= -Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy | ||
| 24 | |||
| 25 | ################################################################# | ||
| 26 | # System dependencies: selection of non-default object libraries. | ||
| 27 | @@ -690,7 +690,7 @@ | ||
| 28 | $(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \ | ||
| 29 | -DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \ | ||
| 30 | -DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \ | ||
| 31 | - $(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \ | ||
| 32 | + $(UCHAR) $(TABLES) $(STRINGS_FLAGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \ | ||
| 33 | $(VSYSLOG) $(HOSTNAME) | ||
| 34 | |||
| 35 | LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \ | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch deleted file mode 100644 index a864e38129..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c | ||
| 4 | --- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:40:08.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:40:02.000000000 +0200 | ||
| 6 | @@ -92,6 +92,8 @@ | ||
| 7 | char *cp; | ||
| 8 | char *result = unknown; | ||
| 9 | FILE *fp; | ||
| 10 | + unsigned saved_timeout; | ||
| 11 | + struct sigaction nact, oact; | ||
| 12 | |||
| 13 | #ifdef INET6 | ||
| 14 | /* address family must be the same */ | ||
| 15 | @@ -134,7 +136,12 @@ | ||
| 16 | */ | ||
| 17 | |||
| 18 | if (setjmp(timebuf) == 0) { | ||
| 19 | - signal(SIGALRM, timeout); | ||
| 20 | + /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ | ||
| 21 | + saved_timeout = alarm(0); | ||
| 22 | + nact.sa_handler = timeout; | ||
| 23 | + nact.sa_flags = 0; | ||
| 24 | + (void) sigemptyset(&nact.sa_mask); | ||
| 25 | + (void) sigaction(SIGALRM, &nact, &oact); | ||
| 26 | alarm(rfc931_timeout); | ||
| 27 | |||
| 28 | /* | ||
| 29 | @@ -223,6 +230,10 @@ | ||
| 30 | } | ||
| 31 | alarm(0); | ||
| 32 | } | ||
| 33 | + /* Restore SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ | ||
| 34 | + (void) sigaction(SIGALRM, &oact, NULL); | ||
| 35 | + if (saved_timeout > 0) | ||
| 36 | + alarm(saved_timeout); | ||
| 37 | fclose(fp); | ||
| 38 | } | ||
| 39 | STRN_CPY(dest, result, STRING_LENGTH); | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff deleted file mode 100644 index 2d0f548f89..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruNp tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c | ||
| 4 | --- tcp_wrappers_7.6.orig/scaffold.c 2005-03-09 18:22:04.000000000 +0100 | ||
| 5 | +++ tcp_wrappers_7.6/scaffold.c 2005-03-09 18:20:47.000000000 +0100 | ||
| 6 | @@ -237,10 +237,17 @@ struct request_info *request; | ||
| 7 | |||
| 8 | /* ARGSUSED */ | ||
| 9 | |||
| 10 | -void rfc931(request) | ||
| 11 | -struct request_info *request; | ||
| 12 | +void rfc931(rmt_sin, our_sin, dest) | ||
| 13 | +#ifdef INET6 | ||
| 14 | +struct sockaddr *rmt_sin; | ||
| 15 | +struct sockaddr *our_sin; | ||
| 16 | +#else | ||
| 17 | +struct sockaddr_in *rmt_sin; | ||
| 18 | +struct sockaddr_in *our_sin; | ||
| 19 | +#endif | ||
| 20 | +char *dest; | ||
| 21 | { | ||
| 22 | - strcpy(request->user, unknown); | ||
| 23 | + strcpy(dest, unknown); | ||
| 24 | } | ||
| 25 | |||
| 26 | /* check_path - examine accessibility */ | ||
| 27 | diff -ruNp tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h | ||
| 28 | --- tcp_wrappers_7.6.orig/tcpd.h 2005-03-09 18:22:04.000000000 +0100 | ||
| 29 | +++ tcp_wrappers_7.6/tcpd.h 2005-03-09 18:21:23.000000000 +0100 | ||
| 30 | @@ -83,7 +83,11 @@ extern int hosts_access(struct request_i | ||
| 31 | extern void shell_cmd(char *); /* execute shell command */ | ||
| 32 | extern char *percent_x(char *, int, char *, struct request_info *); | ||
| 33 | /* do %<char> expansion */ | ||
| 34 | +#ifdef INET6 | ||
| 35 | extern void rfc931(struct sockaddr *, struct sockaddr *, char *); | ||
| 36 | +#else | ||
| 37 | +extern void rfc931(struct sockaddr_in *, struct sockaddr_in *, char *); | ||
| 38 | +#endif | ||
| 39 | /* client name from RFC 931 daemon */ | ||
| 40 | extern void clean_exit(struct request_info *); /* clean up and exit */ | ||
| 41 | extern void refuse(struct request_info *); /* clean up and exit */ | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 deleted file mode 100644 index 875616b9ea..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | .TH SAFE_FINGER 8 "21th June 1997" Linux "Linux Programmer's Manual" | ||
| 2 | .SH NAME | ||
| 3 | safe_finger \- finger client wrapper that protects against nasty stuff | ||
| 4 | from finger servers | ||
| 5 | .SH SYNOPSIS | ||
| 6 | .B safe_finger [finger_options] | ||
| 7 | .SH DESCRIPTION | ||
| 8 | The | ||
| 9 | .B safe_finger | ||
| 10 | command protects against nasty stuff from finger servers. Use this | ||
| 11 | program for automatic reverse finger probes from the | ||
| 12 | .B tcp_wrapper | ||
| 13 | .B (tcpd) | ||
| 14 | , not the raw finger command. The | ||
| 15 | .B safe_finger | ||
| 16 | command makes sure that the finger client is not run with root | ||
| 17 | privileges. It also runs the finger client with a defined PATH | ||
| 18 | environment. | ||
| 19 | .B safe_finger | ||
| 20 | will also protect you from problems caused by the output of some | ||
| 21 | finger servers. The problem: some programs may react to stuff in | ||
| 22 | the first column. Other programs may get upset by thrash anywhere | ||
| 23 | on a line. File systems may fill up as the finger server keeps | ||
| 24 | sending data. Text editors may bomb out on extremely long lines. | ||
| 25 | The finger server may take forever because it is somehow wedged. | ||
| 26 | .B safe_finger | ||
| 27 | takes care of all this badness. | ||
| 28 | .SH SEE ALSO | ||
| 29 | .BR hosts_access (5), | ||
| 30 | .BR hosts_options (5), | ||
| 31 | .BR tcpd (8) | ||
| 32 | .SH AUTHOR | ||
| 33 | Wietse Venema, Eindhoven University of Technology, The Netherlands. | ||
| 34 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch deleted file mode 100644 index b6543fc92e..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | --- tcp-wrappers-7.6-ipv6.1.orig/safe_finger.c | ||
| 4 | +++ tcp-wrappers-7.6-ipv6.1/safe_finger.c | ||
| 5 | @@ -26,21 +26,24 @@ | ||
| 6 | #include <stdio.h> | ||
| 7 | #include <ctype.h> | ||
| 8 | #include <pwd.h> | ||
| 9 | +#include <syslog.h> | ||
| 10 | |||
| 11 | extern void exit(); | ||
| 12 | |||
| 13 | /* Local stuff */ | ||
| 14 | |||
| 15 | -char path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin"; | ||
| 16 | +char path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin"; | ||
| 17 | |||
| 18 | #define TIME_LIMIT 60 /* Do not keep listinging forever */ | ||
| 19 | #define INPUT_LENGTH 100000 /* Do not keep listinging forever */ | ||
| 20 | #define LINE_LENGTH 128 /* Editors can choke on long lines */ | ||
| 21 | #define FINGER_PROGRAM "finger" /* Most, if not all, UNIX systems */ | ||
| 22 | #define UNPRIV_NAME "nobody" /* Preferred privilege level */ | ||
| 23 | -#define UNPRIV_UGID 32767 /* Default uid and gid */ | ||
| 24 | +#define UNPRIV_UGID 65534 /* Default uid and gid */ | ||
| 25 | |||
| 26 | int finger_pid; | ||
| 27 | +int allow_severity = SEVERITY; | ||
| 28 | +int deny_severity = LOG_WARNING; | ||
| 29 | |||
| 30 | void cleanup(sig) | ||
| 31 | int sig; | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch deleted file mode 100644 index 843063fd7c..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | * Mon Feb 10 2003 Harald Hoyer <harald@redhat.de> 7.6-29 | ||
| 4 | - added security patch tcp_wrappers-7.6-sig.patch | ||
| 5 | |||
| 6 | --- tcp_wrappers_7.6/hosts_access.c.sig 2003-02-10 16:18:31.000000000 +0100 | ||
| 7 | +++ tcp_wrappers_7.6/hosts_access.c 2003-02-10 16:50:38.000000000 +0100 | ||
| 8 | @@ -66,6 +66,7 @@ | ||
| 9 | |||
| 10 | #define YES 1 | ||
| 11 | #define NO 0 | ||
| 12 | +#define ERR -1 | ||
| 13 | |||
| 14 | /* | ||
| 15 | * These variables are globally visible so that they can be redirected in | ||
| 16 | @@ -129,9 +129,9 @@ | ||
| 17 | return (verdict == AC_PERMIT); | ||
| 18 | if (table_match(hosts_allow_table, request)) | ||
| 19 | return (YES); | ||
| 20 | - if (table_match(hosts_deny_table, request)) | ||
| 21 | - return (NO); | ||
| 22 | - return (YES); | ||
| 23 | + if (table_match(hosts_deny_table, request) == NO) | ||
| 24 | + return (YES); | ||
| 25 | + return (NO); | ||
| 26 | } | ||
| 27 | |||
| 28 | /* table_match - match table entries with (daemon, client) pair */ | ||
| 29 | @@ -175,6 +175,7 @@ | ||
| 30 | (void) fclose(fp); | ||
| 31 | } else if (errno != ENOENT) { | ||
| 32 | tcpd_warn("cannot open %s: %m", table); | ||
| 33 | + match = ERR; | ||
| 34 | } | ||
| 35 | if (match) { | ||
| 36 | if (hosts_access_verbose > 1) | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch deleted file mode 100644 index d4a1146594..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruNp tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c | ||
| 4 | --- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:42:25.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:41:04.000000000 +0200 | ||
| 6 | @@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1. | ||
| 7 | |||
| 8 | int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */ | ||
| 9 | |||
| 10 | -static jmp_buf timebuf; | ||
| 11 | +static sigjmp_buf timebuf; | ||
| 12 | |||
| 13 | /* fsocket - open stdio stream on top of socket */ | ||
| 14 | |||
| 15 | @@ -62,7 +62,7 @@ int protocol; | ||
| 16 | static void timeout(sig) | ||
| 17 | int sig; | ||
| 18 | { | ||
| 19 | - longjmp(timebuf, sig); | ||
| 20 | + siglongjmp(timebuf, sig); | ||
| 21 | } | ||
| 22 | |||
| 23 | /* rfc931 - return remote user name, given socket structures */ | ||
| 24 | @@ -135,7 +135,7 @@ char *dest; | ||
| 25 | * Set up a timer so we won't get stuck while waiting for the server. | ||
| 26 | */ | ||
| 27 | |||
| 28 | - if (setjmp(timebuf) == 0) { | ||
| 29 | + if (sigsetjmp(timebuf, 0) == 0) { | ||
| 30 | /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ | ||
| 31 | saved_timeout = alarm(0); | ||
| 32 | nact.sa_handler = timeout; | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch deleted file mode 100644 index fb64f93f1d..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch +++ /dev/null | |||
| @@ -1,58 +0,0 @@ | |||
| 1 | commit 88b6984ef0bf3b703c1c851092662b95e91db1ff | ||
| 2 | Author: farrah rashid <farrah.rashid@windriver.com> | ||
| 3 | Date: Tue Feb 12 09:53:50 2013 -0500 | ||
| 4 | |||
| 5 | tcp-wrappers Support for building with glibc | ||
| 6 | |||
| 7 | Added support for socklen_t type to len argument passed to socket related | ||
| 8 | calls. This fixes a bug that causes tcp wrappers to fail when using sshd. | ||
| 9 | |||
| 10 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 11 | Signed-off-by: farrah rashid <farrah.rashid@windriver.com> | ||
| 12 | |||
| 13 | diff --git a/fix_options.c b/fix_options.c | ||
| 14 | index 7473adf..fe2b442 100644 | ||
| 15 | --- a/fix_options.c | ||
| 16 | +++ b/fix_options.c | ||
| 17 | @@ -38,7 +38,12 @@ struct request_info *request; | ||
| 18 | #ifdef IP_OPTIONS | ||
| 19 | unsigned char optbuf[BUFFER_SIZE / 3], *cp; | ||
| 20 | char lbuf[BUFFER_SIZE], *lp; | ||
| 21 | - int optsize = sizeof(optbuf), ipproto; | ||
| 22 | +#ifdef __GLIBC__ | ||
| 23 | + socklen_t optsize = sizeof(optbuf); | ||
| 24 | +#else | ||
| 25 | + int optsize = sizeof(optbuf); | ||
| 26 | +#endif | ||
| 27 | + int ipproto; | ||
| 28 | struct protoent *ip; | ||
| 29 | int fd = request->fd; | ||
| 30 | unsigned int opt; | ||
| 31 | diff --git a/socket.c b/socket.c | ||
| 32 | index 4b2c575..a0d2987 100644 | ||
| 33 | --- a/socket.c | ||
| 34 | +++ b/socket.c | ||
| 35 | @@ -95,7 +95,11 @@ struct request_info *request; | ||
| 36 | static struct sockaddr_in client; | ||
| 37 | static struct sockaddr_in server; | ||
| 38 | #endif | ||
| 39 | +#ifdef __GLIBC__ | ||
| 40 | + socklen_t len; | ||
| 41 | +#else | ||
| 42 | int len; | ||
| 43 | +#endif | ||
| 44 | char buf[BUFSIZ]; | ||
| 45 | int fd = request->fd; | ||
| 46 | |||
| 47 | @@ -426,7 +430,11 @@ int fd; | ||
| 48 | #else | ||
| 49 | struct sockaddr_in sin; | ||
| 50 | #endif | ||
| 51 | +#ifdef __GLIBC__ | ||
| 52 | + socklen_t size = sizeof(sin); | ||
| 53 | +#else | ||
| 54 | int size = sizeof(sin); | ||
| 55 | +#endif | ||
| 56 | |||
| 57 | /* | ||
| 58 | * Eat up the not-yet received datagram. Some systems insist on a | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch deleted file mode 100644 index 2e3b1719fd..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [current release is from 1997; no vcs anywhere] | ||
| 2 | |||
| 3 | diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c | ||
| 4 | --- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 02:50:37.000000000 +0200 | ||
| 5 | +++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 02:50:33.000000000 +0200 | ||
| 6 | @@ -53,6 +53,24 @@ | ||
| 7 | #include "inetcf.h" | ||
| 8 | #include "scaffold.h" | ||
| 9 | |||
| 10 | +/* list of programs which are known to be linked with libwrap in debian */ | ||
| 11 | +static const char *const libwrap_programs[] = { | ||
| 12 | + "portmap", "mountd", "statd", "ugidd", | ||
| 13 | + "redir", "rlinetd", | ||
| 14 | + "sshd", | ||
| 15 | + "atftpd", | ||
| 16 | + "diald", | ||
| 17 | + "esound", | ||
| 18 | + "gdm", "gnome-session", | ||
| 19 | + "icecast", "icecast_admin", "icecast_client", "icecast_source", | ||
| 20 | + "mysqld", | ||
| 21 | + "ntop", | ||
| 22 | + "pptpd", | ||
| 23 | + "rquotad", | ||
| 24 | + "sendmail", "smail", | ||
| 25 | + NULL | ||
| 26 | +}; | ||
| 27 | + | ||
| 28 | /* | ||
| 29 | * Stolen from hosts_access.c... | ||
| 30 | */ | ||
| 31 | @@ -147,8 +165,8 @@ | ||
| 32 | /* | ||
| 33 | * These are not run from inetd but may have built-in access control. | ||
| 34 | */ | ||
| 35 | - inet_set("portmap", WR_NOT); | ||
| 36 | - inet_set("rpcbind", WR_NOT); | ||
| 37 | + for (c = 0; libwrap_programs[c]; c++) | ||
| 38 | + inet_set(libwrap_programs[c], WR_YES); | ||
| 39 | |||
| 40 | /* | ||
| 41 | * Check accessibility of access control files. | ||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 deleted file mode 100644 index 9c8f30543e..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | .TH TRY-FROM 8 "21th June 1997" Linux "Linux Programmer's Manual" | ||
| 2 | .SH NAME | ||
| 3 | try-from \- test program for the tcp_wrapper | ||
| 4 | .SH SYNOPSIS | ||
| 5 | .B try-from | ||
| 6 | .SH DESCRIPTION | ||
| 7 | The | ||
| 8 | .B try-from | ||
| 9 | command can be called via a remote shell command to find out | ||
| 10 | if the hostname and address are properly recognized | ||
| 11 | by the | ||
| 12 | .B tcp_wrapper | ||
| 13 | library, if username lookup works, and (SysV only) if the TLI | ||
| 14 | on top of IP heuristics work. Diagnostics are reported through | ||
| 15 | .BR syslog (3) | ||
| 16 | and redirected to stderr. | ||
| 17 | |||
| 18 | Example: | ||
| 19 | |||
| 20 | rsh host /some/where/try-from | ||
| 21 | |||
| 22 | .SH SEE ALSO | ||
| 23 | .BR hosts_access (5), | ||
| 24 | .BR hosts_options (5), | ||
| 25 | .BR tcpd (8) | ||
| 26 | .SH AUTHOR | ||
| 27 | Wietse Venema, Eindhoven University of Technology, The Netherlands. | ||
| 28 | |||
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb b/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb deleted file mode 100644 index da3ff90891..0000000000 --- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb +++ /dev/null | |||
| @@ -1,135 +0,0 @@ | |||
| 1 | SUMMARY = "Security tool that is a wrapper for TCP daemons" | ||
| 2 | HOMEPAGE = "http://www.softpanorama.org/Net/Network_security/TCP_wrappers/" | ||
| 3 | DESCRIPTION = "Tools for monitoring and filtering incoming requests for tcp \ | ||
| 4 | services." | ||
| 5 | SECTION = "console/network" | ||
| 6 | |||
| 7 | LICENSE = "BSD-1-Clause" | ||
| 8 | LIC_FILES_CHKSUM = "file://DISCLAIMER;md5=071bd69cb78b18888ea5e3da5c3127fa" | ||
| 9 | |||
| 10 | PACKAGES = "${PN}-dbg libwrap libwrap-doc libwrap-dev libwrap-staticdev ${PN} ${PN}-doc" | ||
| 11 | FILES:libwrap = "${base_libdir}/lib*${SOLIBS}" | ||
| 12 | FILES:libwrap-doc = "${mandir}/man3 ${mandir}/man5" | ||
| 13 | FILES:libwrap-dev = "${libdir}/lib*${SOLIBSDEV} ${includedir}" | ||
| 14 | FILES:libwrap-staticdev = "${libdir}/lib*.a" | ||
| 15 | FILES:${PN} = "${sbindir}" | ||
| 16 | FILES:${PN}-doc = "${mandir}/man8" | ||
| 17 | |||
| 18 | SRC_URI = "http://ftp.porcupine.org/pub/security/tcp_wrappers_${PV}.tar.gz \ | ||
| 19 | file://00_man_quoting.diff \ | ||
| 20 | file://01_man_portability.patch \ | ||
| 21 | file://05_wildcard_matching.patch \ | ||
| 22 | file://06_fix_gethostbyname.patch \ | ||
| 23 | file://10_usagi-ipv6.patch \ | ||
| 24 | file://11_tcpd_blacklist.patch \ | ||
| 25 | file://11_usagi_fix.patch \ | ||
| 26 | file://12_makefile_config.patch \ | ||
| 27 | file://13_shlib_weaksym.patch \ | ||
| 28 | file://14_cidr_support.patch \ | ||
| 29 | file://15_match_clarify.patch \ | ||
| 30 | file://expand_remote_port.patch \ | ||
| 31 | file://have_strerror.patch \ | ||
| 32 | file://man_fromhost.patch \ | ||
| 33 | file://restore_sigalarm.patch \ | ||
| 34 | file://rfc931.diff \ | ||
| 35 | file://safe_finger.patch \ | ||
| 36 | file://sig_fix.patch \ | ||
| 37 | file://siglongjmp.patch \ | ||
| 38 | file://socklen_t.patch \ | ||
| 39 | file://tcpdchk_libwrapped.patch \ | ||
| 40 | file://ldflags.patch \ | ||
| 41 | file://rename_strings_variable.patch \ | ||
| 42 | file://try-from.8 \ | ||
| 43 | file://safe_finger.8 \ | ||
| 44 | file://makefile-fix-parallel.patch \ | ||
| 45 | file://musl-decls.patch \ | ||
| 46 | file://0001-Fix-build-with-clang.patch \ | ||
| 47 | file://fix_warnings.patch \ | ||
| 48 | file://fix_warnings2.patch \ | ||
| 49 | file://0001-Remove-fgets-extern-declaration.patch \ | ||
| 50 | file://0001-Fix-implicit-function-declaration-warnings.patch \ | ||
| 51 | " | ||
| 52 | |||
| 53 | SRC_URI[sha256sum] = "9543d7adedf78a6de0b221ccbbd1952e08b5138717f4ade814039bb489a4315d" | ||
| 54 | |||
| 55 | S = "${UNPACKDIR}/tcp_wrappers_${PV}" | ||
| 56 | |||
| 57 | CFLAGS += "-std=gnu17" | ||
| 58 | |||
| 59 | EXTRA_OEMAKE = "'CC=${CC}' \ | ||
| 60 | 'AR=${AR}' \ | ||
| 61 | 'RANLIB=${RANLIB}' \ | ||
| 62 | 'REAL_DAEMON_DIR=${sbindir}' \ | ||
| 63 | 'STYLE=-DPROCESS_OPTIONS' \ | ||
| 64 | 'FACILITY=LOG_DAEMON' \ | ||
| 65 | 'SEVERITY=LOG_INFO' \ | ||
| 66 | 'BUGS=' \ | ||
| 67 | 'VSYSLOG=' \ | ||
| 68 | 'RFC931_TIMEOUT=10' \ | ||
| 69 | 'ACCESS=-DHOSTS_ACCESS' \ | ||
| 70 | 'KILL_OPT=-DKILL_IP_OPTIONS' \ | ||
| 71 | 'UMASK=-DDAEMON_UMASK=022' \ | ||
| 72 | 'NETGROUP=${EXTRA_OEMAKE_NETGROUP}' \ | ||
| 73 | 'ARFLAGS=rv' \ | ||
| 74 | 'AUX_OBJ=weak_symbols.o' \ | ||
| 75 | 'TLI=' \ | ||
| 76 | 'COPTS=' \ | ||
| 77 | 'EXTRA_CFLAGS=${CFLAGS} -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len'" | ||
| 78 | |||
| 79 | EXTRA_OEMAKE_NETGROUP = "-DNETGROUP -DUSE_GETDOMAIN" | ||
| 80 | EXTRA_OEMAKE_NETGROUP:libc-musl = "-DUSE_GETDOMAIN" | ||
| 81 | |||
| 82 | EXTRA_OEMAKE:append:libc-musl = " 'LIBS='" | ||
| 83 | |||
| 84 | do_compile () { | ||
| 85 | oe_runmake 'TABLES=-DHOSTS_DENY=\"${sysconfdir}/hosts.deny\" -DHOSTS_ALLOW=\"${sysconfdir}/hosts.allow\"' \ | ||
| 86 | all | ||
| 87 | } | ||
| 88 | |||
| 89 | BINS = "safe_finger tcpd tcpdchk try-from tcpdmatch" | ||
| 90 | MANS3 = "hosts_access" | ||
| 91 | MANS5 = "hosts_options" | ||
| 92 | MANS8 = "tcpd tcpdchk tcpdmatch" | ||
| 93 | do_install () { | ||
| 94 | oe_libinstall -a libwrap ${D}${libdir} | ||
| 95 | oe_libinstall -C shared -so libwrap ${D}${base_libdir} | ||
| 96 | |||
| 97 | if [ "${libdir}" != "${base_libdir}" ] ; then | ||
| 98 | rel_lib_prefix=`echo ${libdir} | sed 's,\(^/\|\)[^/][^/]*,..,g'` | ||
| 99 | libname=`readlink ${D}${base_libdir}/libwrap.so | xargs basename` | ||
| 100 | ln -s ${rel_lib_prefix}${base_libdir}/${libname} ${D}${libdir}/libwrap.so | ||
| 101 | rm -f ${D}${base_libdir}/libwrap.so | ||
| 102 | fi | ||
| 103 | |||
| 104 | install -d ${D}${sbindir} | ||
| 105 | for b in ${BINS}; do | ||
| 106 | install -m 0755 $b ${D}${sbindir}/ || exit 1 | ||
| 107 | done | ||
| 108 | |||
| 109 | install -d ${D}${mandir}/man3 | ||
| 110 | for m in ${MANS3}; do | ||
| 111 | install -m 0644 $m.3 ${D}${mandir}/man3/ || exit 1 | ||
| 112 | done | ||
| 113 | |||
| 114 | install -d ${D}${mandir}/man5 | ||
| 115 | for m in ${MANS5}; do | ||
| 116 | install -m 0644 $m.5 ${D}${mandir}/man5/ || exit 1 | ||
| 117 | done | ||
| 118 | |||
| 119 | install -d ${D}${mandir}/man8 | ||
| 120 | for m in ${MANS8}; do | ||
| 121 | install -m 0644 $m.8 ${D}${mandir}/man8/ || exit 1 | ||
| 122 | done | ||
| 123 | |||
| 124 | install -m 0644 ${UNPACKDIR}/try-from.8 ${D}${mandir}/man8/ | ||
| 125 | install -m 0644 ${UNPACKDIR}/safe_finger.8 ${D}${mandir}/man8/ | ||
| 126 | |||
| 127 | install -d ${D}${includedir} | ||
| 128 | install -m 0644 tcpd.h ${D}${includedir}/ | ||
| 129 | |||
| 130 | install -d ${D}${sysconfdir} | ||
| 131 | touch ${D}${sysconfdir}/hosts.allow | ||
| 132 | touch ${D}${sysconfdir}/hosts.deny | ||
| 133 | } | ||
| 134 | |||
| 135 | FILES:${PN} += "${sysconfdir}/hosts.allow ${sysconfdir}/hosts.deny" | ||
diff --git a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb b/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb deleted file mode 100644 index 9773d134cf..0000000000 --- a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | SUMMARY = "Fake version of the texinfo utility suite" | ||
| 2 | SECTION = "console/utils" | ||
| 3 | DESCRIPTION = "${SUMMARY}" | ||
| 4 | LICENSE = "MIT" | ||
| 5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d6bb62e73ca8b901d3f2e9d71542f4bb" | ||
| 6 | DEPENDS = "" | ||
| 7 | PV = "1.0" | ||
| 8 | |||
| 9 | SRC_URI = "file://template.py file://COPYING" | ||
| 10 | |||
| 11 | S = "${UNPACKDIR}" | ||
| 12 | |||
| 13 | inherit native | ||
| 14 | |||
| 15 | # | ||
| 16 | # To avoid texinfo-dummy-native and texinfo-native conflicting we install to base_bindir | ||
| 17 | # which is later in PATH than bindir where texinfo-native installs | ||
| 18 | # | ||
| 19 | do_install_name() { | ||
| 20 | FILENAME="${D}${base_bindir}/$1" | ||
| 21 | # Using ln causes problems with rm_work | ||
| 22 | cp -T "${S}/template.py" "$FILENAME" | ||
| 23 | chmod +x $FILENAME | ||
| 24 | } | ||
| 25 | |||
| 26 | do_install() { | ||
| 27 | mkdir -p "${D}${base_bindir}" | ||
| 28 | for i in makeinfo pod2texi texi2dvi pdftexi2dvi texindex texi2pdf \ | ||
| 29 | txixml2texi texi2any install-info ginstall-info \ | ||
| 30 | update-info-dir; do | ||
| 31 | do_install_name $i | ||
| 32 | done | ||
| 33 | } | ||
diff --git a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/COPYING b/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/COPYING deleted file mode 100644 index 531cbe723d..0000000000 --- a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/COPYING +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | Copyright (c) 2014 Intel Corp. | ||
| 2 | |||
| 3 | Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| 4 | of this software and associated documentation files (the "Software"), to deal | ||
| 5 | in the Software without restriction, including without limitation the rights | ||
| 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| 7 | copies of the Software, and to permit persons to whom the Software is | ||
| 8 | furnished to do so, subject to the following conditions: | ||
| 9 | |||
| 10 | The above copyright notice and this permission notice shall be included in | ||
| 11 | all copies or substantial portions of the Software. | ||
| 12 | |||
| 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
| 19 | THE SOFTWARE. | ||
diff --git a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/template.py b/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/template.py deleted file mode 100644 index 4de5bb8f41..0000000000 --- a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy/template.py +++ /dev/null | |||
| @@ -1,100 +0,0 @@ | |||
| 1 | #! /usr/bin/env python3 | ||
| 2 | |||
| 3 | # template.py (and other filenames) | ||
| 4 | # By Max Eliaser (max.eliaser@intel.com) | ||
| 5 | |||
| 6 | # Copyright (c) 2014 Intel Corp. | ||
| 7 | |||
| 8 | # Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| 9 | # of this software and associated documentation files (the "Software"), to deal | ||
| 10 | # in the Software without restriction, including without limitation the rights | ||
| 11 | # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| 12 | # copies of the Software, and to permit persons to whom the Software is | ||
| 13 | # furnished to do so, subject to the following conditions: | ||
| 14 | |||
| 15 | # The above copyright notice and this permission notice shall be included in | ||
| 16 | # all copies or substantial portions of the Software. | ||
| 17 | |||
| 18 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| 19 | # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| 20 | # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| 21 | # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| 22 | # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| 23 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
| 24 | # THE SOFTWARE. | ||
| 25 | |||
| 26 | # This program acts like a dummy version of the texinfo utilities, creating | ||
| 27 | # the right output files but leaving them blank. It will parse out the name | ||
| 28 | # of the executable from argv[0] and emulate the corresponding program, so | ||
| 29 | # multiple copies of this script will exist under different names. | ||
| 30 | |||
| 31 | import sys, argparse | ||
| 32 | |||
| 33 | this_binary = sys.argv[0].split("/")[-1] | ||
| 34 | |||
| 35 | # To be outputted if functionality that hasn't been stubbed yet is invoked. | ||
| 36 | stub_msg = """ | ||
| 37 | This stand-in version of %s is not yet fully capable of emulating | ||
| 38 | the real version from the GNU texinfo suite. If you see this message, file a | ||
| 39 | bug report with details on the recipe that failed. | ||
| 40 | Invoked as %s | ||
| 41 | """ % (this_binary, sys.argv) | ||
| 42 | |||
| 43 | # Autotools setups query the version, so this is actually necessary. Some of | ||
| 44 | # them (lookin' at you, glibc) actually look for the substring "GNU texinfo," | ||
| 45 | # so we put that substring in there without actually telling a lie. | ||
| 46 | version_str = """%s (fake texinfo, emulating GNU texinfo) 5.2 | ||
| 47 | |||
| 48 | Super amazing version which is totally not fake in any way whatsoever. | ||
| 49 | Copyright (C) 2014 Intel Corp. Distributed under the terms of the MIT | ||
| 50 | license. | ||
| 51 | """ % this_binary | ||
| 52 | |||
| 53 | simple_binaries = "pod2texi texi2dvi pdftexi2dvi texindex texi2pdf \ | ||
| 54 | txixml2texi install-info ginstall-info \ | ||
| 55 | update-info-dir".split() | ||
| 56 | |||
| 57 | # These utilities use a slightly different set of options and flags. | ||
| 58 | complex_binaries = "makeinfo texi2any".split() | ||
| 59 | |||
| 60 | valid_binaries = simple_binaries + complex_binaries | ||
| 61 | |||
| 62 | assert this_binary in valid_binaries, \ | ||
| 63 | this_binary + " is not one of " + ', '.join(valid_binaries) | ||
| 64 | |||
| 65 | # For debugging | ||
| 66 | log_interceptions = False | ||
| 67 | if log_interceptions: | ||
| 68 | with open("/tmp/intercepted_" + this_binary, "a") as f: | ||
| 69 | f.write(' '.join([this_binary] + sys.argv[1:]) + '\n') | ||
| 70 | |||
| 71 | # Look through the options and flags, and if necessary, touch any output | ||
| 72 | # files. | ||
| 73 | p = argparse.ArgumentParser() | ||
| 74 | if this_binary in complex_binaries: | ||
| 75 | p.add_argument('-E', '--macro-expand', metavar='FILE') | ||
| 76 | p.add_argument('-o', '--output', metavar='DEST') | ||
| 77 | p.add_argument('--version', action='store_true') | ||
| 78 | |||
| 79 | args, unknown = p.parse_known_args() | ||
| 80 | |||
| 81 | if args.version: | ||
| 82 | print(version_str) | ||
| 83 | sys.exit(0) | ||
| 84 | |||
| 85 | # Check for functionality that isn't implemented yet. | ||
| 86 | assert not getattr(args, 'macro_expand', None), \ | ||
| 87 | "-E/--macro-expand option not yet supported" + stub_msg | ||
| 88 | |||
| 89 | # Check if -o or --output is specified. | ||
| 90 | if args.output: | ||
| 91 | with open(args.output, 'w'): | ||
| 92 | pass | ||
| 93 | sys.exit(0) | ||
| 94 | |||
| 95 | # The -o/--output option overrides the default. For makeinfo and texi2any, | ||
| 96 | # that default is to look for a @setfilename command in the input file. | ||
| 97 | # Otherwise, printing nothing to stdout and then exiting should suffice. | ||
| 98 | assert this_binary in simple_binaries, \ | ||
| 99 | "Don't know how to get default output file name from input file!" + \ | ||
| 100 | stub_msg | ||
diff --git a/meta/recipes-extended/texinfo/texinfo/0001-Makefile.am-do-not-build-manpages.patch b/meta/recipes-extended/texinfo/texinfo/0001-Makefile.am-do-not-build-manpages.patch deleted file mode 100644 index cf0529db98..0000000000 --- a/meta/recipes-extended/texinfo/texinfo/0001-Makefile.am-do-not-build-manpages.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From f7572109b64db9ea5aa44078eaad25ad2a2283f8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Kanavin <alex@linutronix.de> | ||
| 3 | Date: Thu, 28 Nov 2024 13:16:15 +0100 | ||
| 4 | Subject: [PATCH] Makefile.am: do not build manpages | ||
| 5 | |||
| 6 | This requires help2man. | ||
| 7 | |||
| 8 | Upstream-Status: Inappropriate [oe-core doesn't provide help2man] | ||
| 9 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 10 | --- | ||
| 11 | Makefile.am | 2 +- | ||
| 12 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 13 | |||
| 14 | diff --git a/Makefile.am b/Makefile.am | ||
| 15 | index f733797..1013fcf 100644 | ||
| 16 | --- a/Makefile.am | ||
| 17 | +++ b/Makefile.am | ||
| 18 | @@ -76,7 +76,7 @@ | ||
| 19 | endif | ||
| 20 | endif | ||
| 21 | SUBDIRS += install-info po po_document tp Pod-Simple-Texinfo \ | ||
| 22 | - texindex util doc man | ||
| 23 | + texindex util doc | ||
| 24 | SUBDIRS += js | ||
| 25 | endif | ||
| 26 | |||
| 27 | -- | ||
| 28 | 2.39.5 | ||
| 29 | |||
diff --git a/meta/recipes-extended/texinfo/texinfo/0001-texinfo-several-changes-to-build-without-zlib-and-nc.patch b/meta/recipes-extended/texinfo/texinfo/0001-texinfo-several-changes-to-build-without-zlib-and-nc.patch deleted file mode 100644 index 8ddf50261d..0000000000 --- a/meta/recipes-extended/texinfo/texinfo/0001-texinfo-several-changes-to-build-without-zlib-and-nc.patch +++ /dev/null | |||
| @@ -1,51 +0,0 @@ | |||
| 1 | From db2c41668d62c234fa69c71db18c162500dd403f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joshua Lock <josh@linux.intel.com> | ||
| 3 | Date: Fri, 16 Sep 2011 15:35:48 -0700 | ||
| 4 | Subject: [PATCH] texinfo: several changes to build without zlib and ncurses | ||
| 5 | |||
| 6 | We already DEPEND on the native texinfo being present before building so | ||
| 7 | there isn't any need to try and build the required native texinfo binaries | ||
| 8 | before cross-compiling. This simplifies the recipe somewhat! | ||
| 9 | |||
| 10 | Upstream-Status: Inappropriate oe specific | ||
| 11 | |||
| 12 | Signed-off-by: Joshua Lock <josh@linux.intel.com> | ||
| 13 | --- | ||
| 14 | configure.ac | 24 +----------------------- | ||
| 15 | 1 file changed, 1 insertion(+), 23 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/configure.ac b/configure.ac | ||
| 18 | index 00626a3..5b725fe 100644 | ||
| 19 | --- a/configure.ac | ||
| 20 | +++ b/configure.ac | ||
| 21 | @@ -267,29 +267,7 @@ AC_CANONICAL_BUILD | ||
| 22 | # $native_tools is also added to SUBDIRS in the main Makefile.am, | ||
| 23 | # so that make compiles the native tools first. | ||
| 24 | # | ||
| 25 | -if test "$cross_compiling" = no; then | ||
| 26 | - native_tools= | ||
| 27 | -else | ||
| 28 | - native_tools=tools | ||
| 29 | - test -d "$native_tools" || mkdir "$native_tools" | ||
| 30 | - confdir=`(cd "$srcdir";pwd)` | ||
| 31 | - # Make sure the secondary configure won't fail with | ||
| 32 | - # "error: source directory already configured". | ||
| 33 | - rm -f config.status | ||
| 34 | - AC_MSG_NOTICE([[Doing configure of native tools (${build}).]]) | ||
| 35 | - cd "$native_tools" || exit 1 | ||
| 36 | - # Run secondary configure in alternate environment or | ||
| 37 | - # it gets the wrong CC etc. | ||
| 38 | - # env -i gives this build host configure a clean environment; | ||
| 39 | - # consequently, we have to re-initialize $PATH. | ||
| 40 | - env -i CC="$BUILD_CC" AR="$BUILD_AR" RANLIB="$BUILD_RANLIB" \ | ||
| 41 | - PATH="$PATH" \ | ||
| 42 | - tools_only=1 \ | ||
| 43 | - ${confdir}/configure --build=${build} --host=${build} \ | ||
| 44 | - --disable-rpath --disable-nls | ||
| 45 | - cd .. || exit 1 | ||
| 46 | - AC_MSG_NOTICE([[Continuing with main configure (${host}).]]) | ||
| 47 | -fi | ||
| 48 | +native_tools= | ||
| 49 | AC_SUBST(native_tools) | ||
| 50 | AM_CONDITIONAL(TOOLS_ONLY, [[test "x$tools_only" = x1]]) | ||
| 51 | |||
diff --git a/meta/recipes-extended/texinfo/texinfo/0003-texinfo-Update-to-5.1.patch b/meta/recipes-extended/texinfo/texinfo/0003-texinfo-Update-to-5.1.patch deleted file mode 100644 index 4985d30503..0000000000 --- a/meta/recipes-extended/texinfo/texinfo/0003-texinfo-Update-to-5.1.patch +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | From 0131013100bf0baabfc0f9a44341e0d9d7cca794 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Saul Wold <sgw@linux.intel.com> | ||
| 3 | Date: Mon, 29 Jul 2013 15:02:34 -0700 | ||
| 4 | Subject: [PATCH] texinfo: Update to 5.1 | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [cross build specific] | ||
| 7 | |||
| 8 | Signed-off-by: Saul Wold <sgw@linux.intel.com> | ||
| 9 | --- | ||
| 10 | info/Makefile.am | 2 +- | ||
| 11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 12 | |||
| 13 | diff --git a/info/Makefile.am b/info/Makefile.am | ||
| 14 | index 660d7f5..bed840a 100644 | ||
| 15 | --- a/info/Makefile.am | ||
| 16 | +++ b/info/Makefile.am | ||
| 17 | @@ -81,7 +81,7 @@ cmd_sources = $(srcdir)/session.c $(srcdir)/echo-area.c $(srcdir)/infodoc.c \ | ||
| 18 | # more than once. | ||
| 19 | funs.h: makedoc$(EXEEXT) $(cmd_sources) | ||
| 20 | rm -f $(generated_sources) | ||
| 21 | - $(top_builddir)/$(native_tools)/info/makedoc $(cmd_sources) | ||
| 22 | + makedoc $(cmd_sources) | ||
| 23 | |||
| 24 | # The following hack is necessary to hint make before the automatic | ||
| 25 | # dependencies are built. | ||
diff --git a/meta/recipes-extended/texinfo/texinfo_7.2.bb b/meta/recipes-extended/texinfo/texinfo_7.2.bb deleted file mode 100644 index 784f67f65b..0000000000 --- a/meta/recipes-extended/texinfo/texinfo_7.2.bb +++ /dev/null | |||
| @@ -1,90 +0,0 @@ | |||
| 1 | SUMMARY = "Documentation system for on-line information and printed output" | ||
| 2 | DESCRIPTION = "Texinfo is a documentation system that can produce both \ | ||
| 3 | online information and printed output from a single source file. The \ | ||
| 4 | GNU Project uses the Texinfo file format for most of its documentation." | ||
| 5 | HOMEPAGE = "http://www.gnu.org/software/texinfo/" | ||
| 6 | SECTION = "console/utils" | ||
| 7 | LICENSE = "GPL-3.0-or-later" | ||
| 8 | LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" | ||
| 9 | |||
| 10 | PROVIDES:append:class-native = " texinfo-replacement-native" | ||
| 11 | |||
| 12 | def compress_pkg(d): | ||
| 13 | if bb.data.inherits_class('compress_doc', d): | ||
| 14 | compress = d.getVar("DOC_COMPRESS") | ||
| 15 | if compress == "gz": | ||
| 16 | return "gzip" | ||
| 17 | elif compress == "bz2": | ||
| 18 | return "bzip2" | ||
| 19 | elif compress == "xz": | ||
| 20 | return "xz" | ||
| 21 | return "" | ||
| 22 | |||
| 23 | RDEPENDS:info += "${@compress_pkg(d)}" | ||
| 24 | |||
| 25 | DEPENDS = "zlib ncurses texinfo-replacement-native" | ||
| 26 | DEPENDS:class-native = "zlib-native ncurses-native" | ||
| 27 | |||
| 28 | TARGET_PATCH = "file://0003-texinfo-Update-to-5.1.patch" | ||
| 29 | TARGET_PATCH:class-native = "" | ||
| 30 | |||
| 31 | SRC_URI = "${GNU_MIRROR}/texinfo/${BP}.tar.gz \ | ||
| 32 | file://0001-texinfo-several-changes-to-build-without-zlib-and-nc.patch \ | ||
| 33 | file://0001-Makefile.am-do-not-build-manpages.patch \ | ||
| 34 | ${TARGET_PATCH} \ | ||
| 35 | " | ||
| 36 | |||
| 37 | SRC_URI[sha256sum] = "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8" | ||
| 38 | |||
| 39 | tex_texinfo = "texmf/tex/texinfo" | ||
| 40 | |||
| 41 | inherit gettext autotools multilib_script | ||
| 42 | |||
| 43 | MULTILIB_SCRIPTS = "${PN}:${bindir}/texi2any" | ||
| 44 | |||
| 45 | EXTRA_AUTORECONF += "-I ${S}/gnulib/m4" | ||
| 46 | CACHED_CONFIGUREVARS += "texinfo_cv_sys_iconv_converts_euc_cn=yes" | ||
| 47 | |||
| 48 | do_configure:prepend () { | ||
| 49 | # autotools_do_configure updates po/Makefile.in.in, we also need | ||
| 50 | # update po_document. | ||
| 51 | cp -f ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po_document/ | ||
| 52 | } | ||
| 53 | |||
| 54 | do_compile:prepend() { | ||
| 55 | if [ -d tools ];then | ||
| 56 | oe_runmake -C tools/gnulib/lib | ||
| 57 | fi | ||
| 58 | } | ||
| 59 | |||
| 60 | do_install:append() { | ||
| 61 | mkdir -p ${D}${datadir}/${tex_texinfo} | ||
| 62 | install -p -m644 ${S}/doc/texinfo.tex ${S}/doc/txi-??.tex ${D}${datadir}/${tex_texinfo} | ||
| 63 | sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/texi2any ${D}${bindir}/pod2texi | ||
| 64 | sed -i -e 's,${HOSTTOOLS_DIR},,' ${D}${bindir}/texindex | ||
| 65 | } | ||
| 66 | |||
| 67 | do_install:append:class-native() { | ||
| 68 | install -m 755 info/makedoc ${D}${bindir} | ||
| 69 | } | ||
| 70 | |||
| 71 | PACKAGES += "info info-doc" | ||
| 72 | |||
| 73 | FILES:info = "${bindir}/info ${bindir}/infokey ${bindir}/install-info" | ||
| 74 | FILES:info-doc = "${infodir}/info.info* ${infodir}/dir ${infodir}/info-*.info* \ | ||
| 75 | ${mandir}/man1/info.1* ${mandir}/man5/info.5* \ | ||
| 76 | ${mandir}/man1/infokey.1* ${mandir}/man1/install-info.1*" | ||
| 77 | |||
| 78 | FILES:${PN} = "${bindir}/makeinfo ${bindir}/texi* ${bindir}/pdftexi2dvi ${bindir}/pod2texi ${datadir}/texinfo ${datadir}/texi2any" | ||
| 79 | RDEPENDS:${PN} = "perl" | ||
| 80 | FILES:${PN}-doc = "${infodir}/texi* \ | ||
| 81 | ${datadir}/${tex_texinfo} \ | ||
| 82 | ${mandir}/man1 ${mandir}/man5" | ||
| 83 | |||
| 84 | # Lie about providing the Locale::gettext_xs module. It is not actually built, | ||
| 85 | # but the code will test for it and if not found use Locale::gettext_pp instead. | ||
| 86 | # However, this causes a file dependency on perl(Locale::gettext_xs) to be | ||
| 87 | # generated, which must be satisfied. | ||
| 88 | RPROVIDES:${PN} += "perl(Locale::gettext_xs)" | ||
| 89 | |||
| 90 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/time/time/0001-Fix-the-type-for-sighandler_t.patch b/meta/recipes-extended/time/time/0001-Fix-the-type-for-sighandler_t.patch deleted file mode 100644 index 0f8bf6e03e..0000000000 --- a/meta/recipes-extended/time/time/0001-Fix-the-type-for-sighandler_t.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From cfef684e2c2c93c4a871d6c2a7af8f4c1b7c6741 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 18 Mar 2025 09:29:58 -0700 | ||
| 4 | Subject: [PATCH] Fix the type for sighandler_t | ||
| 5 | |||
| 6 | __sighandler_t is private interface in glibc so its | ||
| 7 | better to not use it, as an aside fixes build with musl | ||
| 8 | |||
| 9 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/bug-time/2025-03/msg00000.html] | ||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | src/time.c | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/src/time.c b/src/time.c | ||
| 16 | index 7ff29a4..82eb66a 100644 | ||
| 17 | --- a/src/time.c | ||
| 18 | +++ b/src/time.c | ||
| 19 | @@ -728,7 +728,7 @@ run_command (cmd, resp) | ||
| 20 | RESUSE *resp; | ||
| 21 | { | ||
| 22 | pid_t pid; /* Pid of child. */ | ||
| 23 | - __sighandler_t interrupt_signal, quit_signal; | ||
| 24 | + sighandler_t interrupt_signal, quit_signal; | ||
| 25 | int saved_errno; | ||
| 26 | |||
| 27 | resuse_start (resp); | ||
diff --git a/meta/recipes-extended/time/time/0001-include-string.h-for-memset.patch b/meta/recipes-extended/time/time/0001-include-string.h-for-memset.patch deleted file mode 100644 index f6ea212667..0000000000 --- a/meta/recipes-extended/time/time/0001-include-string.h-for-memset.patch +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | From c8deae54f92d636878097063b411af9fb5262ad3 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 15 Aug 2022 07:24:24 -0700 | ||
| 4 | Subject: [PATCH] include string.h for memset() | ||
| 5 | |||
| 6 | Fixes implicit function declaration warning e.g. | ||
| 7 | |||
| 8 | resuse.c:103:3: error: call to undeclared library function 'memset' with type 'void *(void *, int, unsigned long)' | ||
| 9 | |||
| 10 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/bug-time/2022-08/msg00001.html] | ||
| 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 12 | --- | ||
| 13 | src/resuse.c | 1 + | ||
| 14 | 1 file changed, 1 insertion(+) | ||
| 15 | |||
| 16 | diff --git a/src/resuse.c b/src/resuse.c | ||
| 17 | index cf5a08c..9d3d18a 100644 | ||
| 18 | --- a/src/resuse.c | ||
| 19 | +++ b/src/resuse.c | ||
| 20 | @@ -22,6 +22,7 @@ | ||
| 21 | */ | ||
| 22 | |||
| 23 | #include "config.h" | ||
| 24 | +#include <string.h> | ||
| 25 | #include <sys/time.h> | ||
| 26 | #include <sys/wait.h> | ||
| 27 | #include <sys/resource.h> | ||
diff --git a/meta/recipes-extended/time/time/time-1.9-Fix-compiling-with-GCC15.patch b/meta/recipes-extended/time/time/time-1.9-Fix-compiling-with-GCC15.patch deleted file mode 100644 index 76141aec18..0000000000 --- a/meta/recipes-extended/time/time/time-1.9-Fix-compiling-with-GCC15.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From 831194f0be7733c99c7a2c69d9e9695b82e05010 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= <opohorel@redhat.com> | ||
| 3 | Date: Thu, 30 Jan 2025 08:48:47 +0100 | ||
| 4 | Subject: [PATCH] time: fix compiling with GCC15 | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | GCC15 complains about incompatible pointer type in run_command() | ||
| 10 | Initialize interrupt_signal and quit_signal with correct type | ||
| 11 | |||
| 12 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/bug-time/2025-01/msg00000.html] | ||
| 13 | Signed-off-by: Ondřej Pohořelský <opohorel@redhat.com> | ||
| 14 | --- | ||
| 15 | src/time.c | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | diff --git a/src/time.c b/src/time.c | ||
| 19 | index 7b401bc..c8d7ab0 100644 | ||
| 20 | --- a/src/time.c | ||
| 21 | +++ b/src/time.c | ||
| 22 | @@ -803,7 +803,7 @@ run_command (cmd, resp) | ||
| 23 | RESUSE *resp; | ||
| 24 | { | ||
| 25 | pid_t pid; /* Pid of child. */ | ||
| 26 | - sighandler interrupt_signal, quit_signal; | ||
| 27 | + __sighandler_t interrupt_signal, quit_signal; | ||
| 28 | int saved_errno; | ||
| 29 | |||
| 30 | resuse_start (resp); | ||
| 31 | -- | ||
| 32 | 2.48.1 | ||
| 33 | |||
diff --git a/meta/recipes-extended/time/time_1.9.bb b/meta/recipes-extended/time/time_1.9.bb deleted file mode 100644 index d6d8aa6e1e..0000000000 --- a/meta/recipes-extended/time/time_1.9.bb +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | SUMMARY = "Tool that measures CPU resources" | ||
| 2 | DESCRIPTION = "time measures many of the CPU resources, such as time and \ | ||
| 3 | memory, that other programs use." | ||
| 4 | HOMEPAGE = "http://www.gnu.org/software/time/" | ||
| 5 | SECTION = "utils" | ||
| 6 | LICENSE = "GPL-3.0-only" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 8 | |||
| 9 | inherit texinfo update-alternatives | ||
| 10 | |||
| 11 | ALTERNATIVE:${PN} = "time" | ||
| 12 | ALTERNATIVE_PRIORITY = "100" | ||
| 13 | |||
| 14 | BBCLASSEXTEND = "native nativesdk" | ||
| 15 | |||
| 16 | SRC_URI = "${GNU_MIRROR}/time/time-${PV}.tar.gz \ | ||
| 17 | file://0001-include-string.h-for-memset.patch \ | ||
| 18 | file://time-1.9-Fix-compiling-with-GCC15.patch \ | ||
| 19 | file://0001-Fix-the-type-for-sighandler_t.patch \ | ||
| 20 | " | ||
| 21 | |||
| 22 | SRC_URI[sha256sum] = "fbacf0c81e62429df3e33bda4cee38756604f18e01d977338e23306a3e3b521e" | ||
| 23 | |||
| 24 | inherit autotools | ||
| 25 | |||
| 26 | # Submitted fix: https://lists.gnu.org/archive/html/bug-time/2021-01/msg00000.html | ||
| 27 | do_configure:prepend () { | ||
| 28 | [ ! -e ${S}/.tarball-version ] && echo ${PV} > ${S}/.tarball-version | ||
| 29 | } | ||
diff --git a/meta/recipes-extended/timezone/timezone.inc b/meta/recipes-extended/timezone/timezone.inc deleted file mode 100644 index 9a5105ffd7..0000000000 --- a/meta/recipes-extended/timezone/timezone.inc +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | SUMMARY = "Timezone data" | ||
| 2 | DESCRIPTION = "The Time Zone Database contains code and data that represent \ | ||
| 3 | the history of local time for many representative locations around the globe." | ||
| 4 | HOMEPAGE = "http://www.iana.org/time-zones" | ||
| 5 | SECTION = "base" | ||
| 6 | LICENSE = "PD & BSD-3-Clause" | ||
| 7 | LIC_FILES_CHKSUM = "file://LICENSE;md5=c679c9d6b02bc2757b3eaf8f53c43fba" | ||
| 8 | |||
| 9 | PV = "2025b" | ||
| 10 | |||
| 11 | SRC_URI = "http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz;name=tzcode;subdir=tz \ | ||
| 12 | http://www.iana.org/time-zones/repository/releases/tzdata${PV}.tar.gz;name=tzdata;subdir=tz \ | ||
| 13 | " | ||
| 14 | |||
| 15 | S = "${UNPACKDIR}/tz" | ||
| 16 | |||
| 17 | UPSTREAM_CHECK_URI = "http://www.iana.org/time-zones" | ||
| 18 | |||
| 19 | SRC_URI[tzcode.sha256sum] = "05f8fedb3525ee70d49c87d3fae78a8a0dbae4fe87aa565c65cda9948ae135ec" | ||
| 20 | SRC_URI[tzdata.sha256sum] = "11810413345fc7805017e27ea9fa4885fd74cd61b2911711ad038f5d28d71474" | ||
diff --git a/meta/recipes-extended/timezone/tzcode-native.bb b/meta/recipes-extended/timezone/tzcode-native.bb deleted file mode 100644 index dc9f076377..0000000000 --- a/meta/recipes-extended/timezone/tzcode-native.bb +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | require timezone.inc | ||
| 2 | |||
| 3 | SUMMARY = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect" | ||
| 4 | |||
| 5 | inherit native | ||
| 6 | |||
| 7 | EXTRA_OEMAKE += "CC='${CC}'" | ||
| 8 | |||
| 9 | do_install () { | ||
| 10 | install -d ${D}${bindir}/ | ||
| 11 | install -m 755 zic ${D}${bindir}/ | ||
| 12 | install -m 755 zdump ${D}${bindir}/ | ||
| 13 | install -m 755 tzselect ${D}${bindir}/ | ||
| 14 | } | ||
diff --git a/meta/recipes-extended/timezone/tzdata.bb b/meta/recipes-extended/timezone/tzdata.bb deleted file mode 100644 index 2099b05db8..0000000000 --- a/meta/recipes-extended/timezone/tzdata.bb +++ /dev/null | |||
| @@ -1,207 +0,0 @@ | |||
| 1 | require timezone.inc | ||
| 2 | |||
| 3 | DEPENDS = "tzcode-native" | ||
| 4 | |||
| 5 | inherit allarch | ||
| 6 | |||
| 7 | DEFAULT_TIMEZONE ?= "Universal" | ||
| 8 | INSTALL_TIMEZONE_FILE ?= "1" | ||
| 9 | |||
| 10 | TZONES = " \ | ||
| 11 | africa antarctica asia australasia europe northamerica southamerica \ | ||
| 12 | factory etcetera backward \ | ||
| 13 | " | ||
| 14 | |||
| 15 | # "slim" is the default since 2020b | ||
| 16 | # "fat" is needed by e.g. MariaDB's mysql_tzinfo_to_sql | ||
| 17 | ZIC_FMT ?= "slim" | ||
| 18 | |||
| 19 | do_configure[cleandirs] = "${B}" | ||
| 20 | B = "${WORKDIR}/build" | ||
| 21 | |||
| 22 | do_compile() { | ||
| 23 | oe_runmake -C ${S} tzdata.zi | ||
| 24 | for zone in ${TZONES}; do | ||
| 25 | ${STAGING_BINDIR_NATIVE}/zic -b ${ZIC_FMT} -d ${B}/zoneinfo -L /dev/null ${S}/${zone} | ||
| 26 | ${STAGING_BINDIR_NATIVE}/zic -b ${ZIC_FMT} -d ${B}/zoneinfo/posix -L /dev/null ${S}/${zone} | ||
| 27 | ${STAGING_BINDIR_NATIVE}/zic -b ${ZIC_FMT} -d ${B}/zoneinfo/right -L ${S}/leapseconds ${S}/${zone} | ||
| 28 | done | ||
| 29 | } | ||
| 30 | |||
| 31 | do_install() { | ||
| 32 | install -d ${D}${datadir}/zoneinfo | ||
| 33 | cp -pPR ${B}/zoneinfo/* ${D}${datadir}/zoneinfo | ||
| 34 | |||
| 35 | # libc is removing zoneinfo files from package | ||
| 36 | cp -pP "${S}/zone.tab" ${D}${datadir}/zoneinfo | ||
| 37 | cp -pP "${S}/zone1970.tab" ${D}${datadir}/zoneinfo | ||
| 38 | cp -pP "${S}/iso3166.tab" ${D}${datadir}/zoneinfo | ||
| 39 | cp -pP "${S}/leapseconds" ${D}${datadir}/zoneinfo | ||
| 40 | cp -pP "${S}/leap-seconds.list" ${D}${datadir}/zoneinfo | ||
| 41 | cp -pP "${S}/tzdata.zi" ${D}${datadir}/zoneinfo | ||
| 42 | |||
| 43 | # Install default timezone | ||
| 44 | if [ -e ${D}${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ]; then | ||
| 45 | install -d ${D}${sysconfdir} | ||
| 46 | if [ "${INSTALL_TIMEZONE_FILE}" = "1" ]; then | ||
| 47 | echo ${DEFAULT_TIMEZONE} > ${D}${sysconfdir}/timezone | ||
| 48 | fi | ||
| 49 | ln -s ${datadir}/zoneinfo/${DEFAULT_TIMEZONE} ${D}${sysconfdir}/localtime | ||
| 50 | else | ||
| 51 | bberror "DEFAULT_TIMEZONE is set to an invalid value." | ||
| 52 | exit 1 | ||
| 53 | fi | ||
| 54 | |||
| 55 | chown -R root:root ${D} | ||
| 56 | } | ||
| 57 | |||
| 58 | pkg_postinst:${PN}() { | ||
| 59 | etc_lt="$D${sysconfdir}/localtime" | ||
| 60 | src="$D${sysconfdir}/timezone" | ||
| 61 | |||
| 62 | if [ -e "$src" ]; then | ||
| 63 | tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "$src") | ||
| 64 | fi | ||
| 65 | |||
| 66 | if [ ! -z "$tz" -a ! -e "$D${datadir}/zoneinfo/$tz" ]; then | ||
| 67 | echo "You have an invalid TIMEZONE setting in $src" | ||
| 68 | echo "Your $etc_lt has been reset to Universal; enjoy!" | ||
| 69 | tz="Universal" | ||
| 70 | echo "Updating $etc_lt with $D${datadir}/zoneinfo/$tz" | ||
| 71 | if [ -L "$etc_lt" ]; then | ||
| 72 | rm -f "$etc_lt" | ||
| 73 | fi | ||
| 74 | ln -s "${datadir}/zoneinfo/$tz" "$etc_lt" | ||
| 75 | fi | ||
| 76 | } | ||
| 77 | |||
| 78 | # Packages are primarily organized by directory with a major city in most time | ||
| 79 | # zones in the base package | ||
| 80 | TZ_PACKAGES = " \ | ||
| 81 | tzdata-core tzdata-misc tzdata-posix tzdata-right tzdata-africa \ | ||
| 82 | tzdata-americas tzdata-antarctica tzdata-arctic tzdata-asia \ | ||
| 83 | tzdata-atlantic tzdata-australia tzdata-europe tzdata-pacific \ | ||
| 84 | " | ||
| 85 | PACKAGES = "${TZ_PACKAGES} ${PN}" | ||
| 86 | |||
| 87 | FILES:tzdata-africa += "${datadir}/zoneinfo/Africa" | ||
| 88 | |||
| 89 | FILES:tzdata-americas += " \ | ||
| 90 | ${datadir}/zoneinfo/America \ | ||
| 91 | ${datadir}/zoneinfo/US \ | ||
| 92 | ${datadir}/zoneinfo/Brazil \ | ||
| 93 | ${datadir}/zoneinfo/Canada \ | ||
| 94 | ${datadir}/zoneinfo/Mexico \ | ||
| 95 | ${datadir}/zoneinfo/Chile \ | ||
| 96 | " | ||
| 97 | |||
| 98 | FILES:tzdata-antarctica += "${datadir}/zoneinfo/Antarctica" | ||
| 99 | |||
| 100 | FILES:tzdata-arctic += "${datadir}/zoneinfo/Arctic" | ||
| 101 | |||
| 102 | FILES:tzdata-asia += " \ | ||
| 103 | ${datadir}/zoneinfo/Asia \ | ||
| 104 | ${datadir}/zoneinfo/Indian \ | ||
| 105 | ${datadir}/zoneinfo/Mideast \ | ||
| 106 | " | ||
| 107 | |||
| 108 | FILES:tzdata-atlantic += "${datadir}/zoneinfo/Atlantic" | ||
| 109 | |||
| 110 | FILES:tzdata-australia += "${datadir}/zoneinfo/Australia" | ||
| 111 | |||
| 112 | FILES:tzdata-europe += "${datadir}/zoneinfo/Europe" | ||
| 113 | |||
| 114 | FILES:tzdata-pacific += "${datadir}/zoneinfo/Pacific" | ||
| 115 | |||
| 116 | FILES:tzdata-posix += "${datadir}/zoneinfo/posix" | ||
| 117 | |||
| 118 | FILES:tzdata-right += "${datadir}/zoneinfo/right" | ||
| 119 | |||
| 120 | FILES:tzdata-misc += " \ | ||
| 121 | ${datadir}/zoneinfo/Cuba \ | ||
| 122 | ${datadir}/zoneinfo/Egypt \ | ||
| 123 | ${datadir}/zoneinfo/Eire \ | ||
| 124 | ${datadir}/zoneinfo/Factory \ | ||
| 125 | ${datadir}/zoneinfo/GB-Eire \ | ||
| 126 | ${datadir}/zoneinfo/Hongkong \ | ||
| 127 | ${datadir}/zoneinfo/Iceland \ | ||
| 128 | ${datadir}/zoneinfo/Iran \ | ||
| 129 | ${datadir}/zoneinfo/Israel \ | ||
| 130 | ${datadir}/zoneinfo/Jamaica \ | ||
| 131 | ${datadir}/zoneinfo/Japan \ | ||
| 132 | ${datadir}/zoneinfo/Kwajalein \ | ||
| 133 | ${datadir}/zoneinfo/Libya \ | ||
| 134 | ${datadir}/zoneinfo/Navajo \ | ||
| 135 | ${datadir}/zoneinfo/Poland \ | ||
| 136 | ${datadir}/zoneinfo/Portugal \ | ||
| 137 | ${datadir}/zoneinfo/Singapore \ | ||
| 138 | ${datadir}/zoneinfo/Turkey \ | ||
| 139 | " | ||
| 140 | |||
| 141 | FILES:tzdata-core += " \ | ||
| 142 | ${sysconfdir}/localtime \ | ||
| 143 | ${sysconfdir}/timezone \ | ||
| 144 | ${datadir}/zoneinfo/leapseconds \ | ||
| 145 | ${datadir}/zoneinfo/leap-seconds.list \ | ||
| 146 | ${datadir}/zoneinfo/tzdata.zi \ | ||
| 147 | ${datadir}/zoneinfo/Pacific/Honolulu \ | ||
| 148 | ${datadir}/zoneinfo/America/Anchorage \ | ||
| 149 | ${datadir}/zoneinfo/America/Los_Angeles \ | ||
| 150 | ${datadir}/zoneinfo/America/Denver \ | ||
| 151 | ${datadir}/zoneinfo/America/Chicago \ | ||
| 152 | ${datadir}/zoneinfo/America/New_York \ | ||
| 153 | ${datadir}/zoneinfo/America/Caracas \ | ||
| 154 | ${datadir}/zoneinfo/America/Sao_Paulo \ | ||
| 155 | ${datadir}/zoneinfo/Europe/London \ | ||
| 156 | ${datadir}/zoneinfo/Europe/Paris \ | ||
| 157 | ${datadir}/zoneinfo/Africa/Cairo \ | ||
| 158 | ${datadir}/zoneinfo/Europe/Moscow \ | ||
| 159 | ${datadir}/zoneinfo/Asia/Dubai \ | ||
| 160 | ${datadir}/zoneinfo/Asia/Karachi \ | ||
| 161 | ${datadir}/zoneinfo/Asia/Dhaka \ | ||
| 162 | ${datadir}/zoneinfo/Asia/Bangkok \ | ||
| 163 | ${datadir}/zoneinfo/Asia/Hong_Kong \ | ||
| 164 | ${datadir}/zoneinfo/Asia/Tokyo \ | ||
| 165 | ${datadir}/zoneinfo/Australia/Darwin \ | ||
| 166 | ${datadir}/zoneinfo/Australia/Adelaide \ | ||
| 167 | ${datadir}/zoneinfo/Australia/Brisbane \ | ||
| 168 | ${datadir}/zoneinfo/Australia/Sydney \ | ||
| 169 | ${datadir}/zoneinfo/Pacific/Noumea \ | ||
| 170 | ${datadir}/zoneinfo/CET \ | ||
| 171 | ${datadir}/zoneinfo/CST6CDT \ | ||
| 172 | ${datadir}/zoneinfo/EET \ | ||
| 173 | ${datadir}/zoneinfo/EST \ | ||
| 174 | ${datadir}/zoneinfo/EST5EDT \ | ||
| 175 | ${datadir}/zoneinfo/GB \ | ||
| 176 | ${datadir}/zoneinfo/GMT \ | ||
| 177 | ${datadir}/zoneinfo/GMT+0 \ | ||
| 178 | ${datadir}/zoneinfo/GMT-0 \ | ||
| 179 | ${datadir}/zoneinfo/GMT0 \ | ||
| 180 | ${datadir}/zoneinfo/Greenwich \ | ||
| 181 | ${datadir}/zoneinfo/HST \ | ||
| 182 | ${datadir}/zoneinfo/MET \ | ||
| 183 | ${datadir}/zoneinfo/MST \ | ||
| 184 | ${datadir}/zoneinfo/MST7MDT \ | ||
| 185 | ${datadir}/zoneinfo/NZ \ | ||
| 186 | ${datadir}/zoneinfo/NZ-CHAT \ | ||
| 187 | ${datadir}/zoneinfo/PRC \ | ||
| 188 | ${datadir}/zoneinfo/PST8PDT \ | ||
| 189 | ${datadir}/zoneinfo/ROC \ | ||
| 190 | ${datadir}/zoneinfo/ROK \ | ||
| 191 | ${datadir}/zoneinfo/UCT \ | ||
| 192 | ${datadir}/zoneinfo/UTC \ | ||
| 193 | ${datadir}/zoneinfo/Universal \ | ||
| 194 | ${datadir}/zoneinfo/W-SU \ | ||
| 195 | ${datadir}/zoneinfo/WET \ | ||
| 196 | ${datadir}/zoneinfo/Zulu \ | ||
| 197 | ${datadir}/zoneinfo/zone.tab \ | ||
| 198 | ${datadir}/zoneinfo/zone1970.tab \ | ||
| 199 | ${datadir}/zoneinfo/iso3166.tab \ | ||
| 200 | ${datadir}/zoneinfo/Etc \ | ||
| 201 | " | ||
| 202 | |||
| 203 | CONFFILES:tzdata-core = "${sysconfdir}/localtime ${sysconfdir}/timezone" | ||
| 204 | |||
| 205 | ALLOW_EMPTY:${PN} = "1" | ||
| 206 | |||
| 207 | RDEPENDS:${PN} = "${TZ_PACKAGES}" | ||
diff --git a/meta/recipes-extended/unzip/unzip/0001-configure-Add-correct-system-headers-and-prototypes-.patch b/meta/recipes-extended/unzip/unzip/0001-configure-Add-correct-system-headers-and-prototypes-.patch deleted file mode 100644 index f7e0854cd9..0000000000 --- a/meta/recipes-extended/unzip/unzip/0001-configure-Add-correct-system-headers-and-prototypes-.patch +++ /dev/null | |||
| @@ -1,112 +0,0 @@ | |||
| 1 | From 5ac5885d35257888d0e4a9dda903405314f9fc84 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 10 Aug 2022 17:53:13 -0700 | ||
| 4 | Subject: [PATCH] configure: Add correct system headers and prototypes to tests | ||
| 5 | |||
| 6 | Newer compilers e.g. clang-15+ have turned stricter towards these | ||
| 7 | warnings and turned them into errors which results in subtle failures | ||
| 8 | during build, therefore make the testcases use the needed headers and | ||
| 9 | modern C | ||
| 10 | |||
| 11 | Upstream-Status: Inactive-Upstream | ||
| 12 | |||
| 13 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 14 | --- | ||
| 15 | unix/configure | 51 +++++++++++++++++++++++++++++++++++++++----------- | ||
| 16 | 1 file changed, 40 insertions(+), 11 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/unix/configure b/unix/configure | ||
| 19 | index 49579f3..8fd82dd 100755 | ||
| 20 | --- a/unix/configure | ||
| 21 | +++ b/unix/configure | ||
| 22 | @@ -379,14 +379,37 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null | ||
| 23 | |||
| 24 | # Check for missing functions | ||
| 25 | # add NO_'function_name' to flags if missing | ||
| 26 | -for func in fchmod fchown lchown nl_langinfo | ||
| 27 | -do | ||
| 28 | - echo Check for $func | ||
| 29 | - echo "int main(){ $func(); return 0; }" > conftest.c | ||
| 30 | - $CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 31 | - [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" | ||
| 32 | -done | ||
| 33 | +echo Check for fchmod | ||
| 34 | +cat > conftest.c << _EOF_ | ||
| 35 | +#include <sys/stat.h> | ||
| 36 | +int main(){ fchmod(0,0); return 0; } | ||
| 37 | +_EOF_ | ||
| 38 | +$CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 39 | +[ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_FCHMOD" | ||
| 40 | |||
| 41 | +echo Check for fchown | ||
| 42 | +cat > conftest.c << _EOF_ | ||
| 43 | +#include <unistd.h> | ||
| 44 | +int main(){ fchown(0,0,0); return 0; } | ||
| 45 | +_EOF_ | ||
| 46 | +$CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 47 | +[ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_FCHOWN" | ||
| 48 | + | ||
| 49 | +echo Check for lchown | ||
| 50 | +cat > conftest.c << _EOF_ | ||
| 51 | +#include <unistd.h> | ||
| 52 | +int main(){ lchown(NULL,0,0); return 0; } | ||
| 53 | +_EOF_ | ||
| 54 | +$CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 55 | +[ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_LCHOWN" | ||
| 56 | + | ||
| 57 | +echo Check for nl_langinfo | ||
| 58 | +cat > conftest.c << _EOF_ | ||
| 59 | +#include <langinfo.h> | ||
| 60 | +int main(){ nl_langinfo(0); return 0; } | ||
| 61 | +_EOF_ | ||
| 62 | +$CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 63 | +[ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_NL_LANGINFO" | ||
| 64 | # Check (seriously) for a working lchmod. | ||
| 65 | echo 'Check for lchmod' | ||
| 66 | temp_file="/tmp/unzip_test_$$" | ||
| 67 | @@ -401,14 +424,17 @@ ln -s "${temp_link}" "${temp_file}" && \ | ||
| 68 | rm -f "${temp_file}" | ||
| 69 | |||
| 70 | echo Check for memset | ||
| 71 | -echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c | ||
| 72 | +cat > conftest.c << _EOF_ | ||
| 73 | +#include <string.h> | ||
| 74 | +int main(){ char k; memset(&k,0,0); return 0; } | ||
| 75 | +_EOF_ | ||
| 76 | $CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 77 | [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DZMEM" | ||
| 78 | |||
| 79 | echo Check for errno declaration | ||
| 80 | cat > conftest.c << _EOF_ | ||
| 81 | #include <errno.h> | ||
| 82 | -main() | ||
| 83 | +int main() | ||
| 84 | { | ||
| 85 | errno = 0; | ||
| 86 | return 0; | ||
| 87 | @@ -419,6 +445,8 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null | ||
| 88 | |||
| 89 | echo Check for directory libraries | ||
| 90 | cat > conftest.c << _EOF_ | ||
| 91 | +#include <sys/types.h> | ||
| 92 | +#include <dirent.h> | ||
| 93 | int main() { return closedir(opendir(".")); } | ||
| 94 | _EOF_ | ||
| 95 | |||
| 96 | @@ -523,10 +551,11 @@ fi | ||
| 97 | # needed for AIX (and others ?) when mmap is used | ||
| 98 | echo Check for valloc | ||
| 99 | cat > conftest.c << _EOF_ | ||
| 100 | -main() | ||
| 101 | +#include <stdlib.h> | ||
| 102 | +int main() | ||
| 103 | { | ||
| 104 | #ifdef MMAP | ||
| 105 | - valloc(); | ||
| 106 | + valloc(0); | ||
| 107 | #endif | ||
| 108 | } | ||
| 109 | _EOF_ | ||
| 110 | -- | ||
| 111 | 2.37.1 | ||
| 112 | |||
diff --git a/meta/recipes-extended/unzip/unzip/0001-configure-Pass-LDFLAGS-to-tests-doing-link-step.patch b/meta/recipes-extended/unzip/unzip/0001-configure-Pass-LDFLAGS-to-tests-doing-link-step.patch deleted file mode 100644 index 5a6d1946f6..0000000000 --- a/meta/recipes-extended/unzip/unzip/0001-configure-Pass-LDFLAGS-to-tests-doing-link-step.patch +++ /dev/null | |||
| @@ -1,137 +0,0 @@ | |||
| 1 | From da29ba6a27d8e78562052c79061476848915eb2a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 9 Mar 2022 12:13:28 -0800 | ||
| 4 | Subject: [PATCH] configure: Pass LDFLAGS to tests doing link step | ||
| 5 | |||
| 6 | Ensures that right flags from recipes are honored, otherwise tests fail | ||
| 7 | which otherwise should not. | ||
| 8 | |||
| 9 | Upstream-Status: Inactive-Upstream | ||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | unix/configure | 28 ++++++++++++++-------------- | ||
| 13 | 1 file changed, 14 insertions(+), 14 deletions(-) | ||
| 14 | |||
| 15 | diff --git a/unix/configure b/unix/configure | ||
| 16 | index d4b0a8e..49579f3 100755 | ||
| 17 | --- a/unix/configure | ||
| 18 | +++ b/unix/configure | ||
| 19 | @@ -116,7 +116,7 @@ _EOF_ | ||
| 20 | # Special Mac OS X shared library "ld" option? | ||
| 21 | if test ` uname -s 2> /dev/null ` = 'Darwin'; then | ||
| 22 | lf='-Wl,-search_paths_first' | ||
| 23 | - $CC $CFLAGS $lf conftest.c > /dev/null 2>/dev/null | ||
| 24 | + $CC $CFLAGS $LDFLAGS $lf conftest.c > /dev/null 2>/dev/null | ||
| 25 | if test $? -eq 0; then | ||
| 26 | BZLF=${lf} | ||
| 27 | fi | ||
| 28 | @@ -276,7 +276,7 @@ int main() | ||
| 29 | } | ||
| 30 | _EOF_ | ||
| 31 | # compile it | ||
| 32 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 33 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 34 | if [ $? -ne 0 ]; then | ||
| 35 | echo -- no Large File Support | ||
| 36 | else | ||
| 37 | @@ -322,7 +322,7 @@ int main() | ||
| 38 | } | ||
| 39 | _EOF_ | ||
| 40 | # compile it | ||
| 41 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 42 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 43 | if [ $? -ne 0 ]; then | ||
| 44 | echo "-- no Unicode (wchar_t) support" | ||
| 45 | else | ||
| 46 | @@ -383,7 +383,7 @@ for func in fchmod fchown lchown nl_langinfo | ||
| 47 | do | ||
| 48 | echo Check for $func | ||
| 49 | echo "int main(){ $func(); return 0; }" > conftest.c | ||
| 50 | - $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 51 | + $CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 52 | [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" | ||
| 53 | done | ||
| 54 | |||
| 55 | @@ -395,14 +395,14 @@ temp_link="link_$$" | ||
| 56 | echo "int main() { lchmod(\"${temp_file}\", 0666); }" \ | ||
| 57 | ) > conftest.c | ||
| 58 | ln -s "${temp_link}" "${temp_file}" && \ | ||
| 59 | - $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null && \ | ||
| 60 | + $CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null && \ | ||
| 61 | ./conftest | ||
| 62 | [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_LCHMOD" | ||
| 63 | rm -f "${temp_file}" | ||
| 64 | |||
| 65 | echo Check for memset | ||
| 66 | echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c | ||
| 67 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 68 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 69 | [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DZMEM" | ||
| 70 | |||
| 71 | echo Check for errno declaration | ||
| 72 | @@ -422,12 +422,12 @@ cat > conftest.c << _EOF_ | ||
| 73 | int main() { return closedir(opendir(".")); } | ||
| 74 | _EOF_ | ||
| 75 | |||
| 76 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 77 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 78 | if [ $? -ne 0 ]; then | ||
| 79 | OPT="" | ||
| 80 | for lib in ndir dir ucb bsd BSD PW x dirent | ||
| 81 | do | ||
| 82 | - $CC -o conftest conftest.c -l$lib >/dev/null 2>/dev/null | ||
| 83 | + $CC $CLFAGS $LDFLAGS -o conftest conftest.c -l$lib >/dev/null 2>/dev/null | ||
| 84 | [ $? -eq 0 ] && OPT=-l$lib && break | ||
| 85 | done | ||
| 86 | if [ ${OPT} ]; then | ||
| 87 | @@ -440,9 +440,9 @@ fi | ||
| 88 | # Dynix/ptx 1.3 needed this | ||
| 89 | echo Check for readlink | ||
| 90 | echo "int main(){ return readlink(); }" > conftest.c | ||
| 91 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 92 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 93 | if [ $? -ne 0 ]; then | ||
| 94 | - $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null | ||
| 95 | + $CC $CFLAGS $LDFLAGS -o conftest conftest.c -lseq >/dev/null 2>/dev/null | ||
| 96 | [ $? -eq 0 ] && LFLAGS2="${LFLAGS2} -lseq" | ||
| 97 | fi | ||
| 98 | |||
| 99 | @@ -501,7 +501,7 @@ int main() | ||
| 100 | } | ||
| 101 | _EOF_ | ||
| 102 | # compile it | ||
| 103 | -$CC ${CFLAGS} ${CFLAGSR} -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 104 | +$CC ${CFLAGS} ${CFLAGSR} $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 105 | if [ $? -ne 0 ]; then | ||
| 106 | echo "-- no MBCS support" | ||
| 107 | CFLAGSR="${CFLAGSR} -DNO_MBCS" | ||
| 108 | @@ -515,7 +515,7 @@ else | ||
| 109 | do | ||
| 110 | echo Check for MBCS $func | ||
| 111 | echo "int main() { $func(); return 0; }" > conftest.c | ||
| 112 | - $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 113 | + $CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 114 | [ $? -eq 0 ] && CFLAGSR="${CFLAGSR} -D`echo $func | tr '[a-z]' '[A-Z]'`=$func" | ||
| 115 | done | ||
| 116 | fi | ||
| 117 | @@ -557,7 +557,7 @@ elif [ -f /xenix ]; then | ||
| 118 | elif uname -X >/dev/null 2>/dev/null; then | ||
| 119 | # SCO shared library check | ||
| 120 | echo "int main() { return 0;}" > conftest.c | ||
| 121 | - $CC -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null | ||
| 122 | + $CC $CFLAGS $LDFLAGS -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null | ||
| 123 | [ $? -eq 0 ] && LFLAGS2="-lc_s -nointl" | ||
| 124 | else | ||
| 125 | SYSTEM=`uname -s 2>/dev/null` || SYSTEM="unknown" | ||
| 126 | @@ -565,7 +565,7 @@ else | ||
| 127 | case $SYSTEM in | ||
| 128 | OSF1|ULTRIX) | ||
| 129 | echo Check for -Olimit option | ||
| 130 | - $CC ${CFLAGS} -Olimit 1000 -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 131 | + $CC ${CFLAGS} ${LDFLAGS} -Olimit 1000 -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 132 | [ $? -eq 0 ] && CFLAGSR="${CFLAGSR} -Olimit 1000" | ||
| 133 | ;; | ||
| 134 | ### HP-UX) | ||
| 135 | -- | ||
| 136 | 2.35.1 | ||
| 137 | |||
diff --git a/meta/recipes-extended/unzip/unzip/0001-unix-configure-fix-detection-for-cross-compilation.patch b/meta/recipes-extended/unzip/unzip/0001-unix-configure-fix-detection-for-cross-compilation.patch deleted file mode 100644 index 2fa7f481b7..0000000000 --- a/meta/recipes-extended/unzip/unzip/0001-unix-configure-fix-detection-for-cross-compilation.patch +++ /dev/null | |||
| @@ -1,103 +0,0 @@ | |||
| 1 | From 5cbf901b5c3b6a7d1d0ed91b6df4194bb6d25a40 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Thu, 15 Jun 2023 07:14:17 -0700 | ||
| 4 | Subject: [PATCH] unix/configure: fix detection for cross compilation | ||
| 5 | |||
| 6 | We're doing cross compilation, running a cross-compiled problem | ||
| 7 | on host to detemine feature is not correct. So we change runtime | ||
| 8 | check into compile-time check to detect the features. | ||
| 9 | |||
| 10 | Upstream-Status: Inactive-Upstream | ||
| 11 | |||
| 12 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 13 | --- | ||
| 14 | unix/configure | 44 +++++++++++++++----------------------------- | ||
| 15 | 1 file changed, 15 insertions(+), 29 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/unix/configure b/unix/configure | ||
| 18 | index 8fd82dd..68dee98 100755 | ||
| 19 | --- a/unix/configure | ||
| 20 | +++ b/unix/configure | ||
| 21 | @@ -259,6 +259,10 @@ cat > conftest.c << _EOF_ | ||
| 22 | #include <sys/stat.h> | ||
| 23 | #include <unistd.h> | ||
| 24 | #include <stdio.h> | ||
| 25 | + | ||
| 26 | +_Static_assert(sizeof(off_t) < 8, "sizeof off_t < 8 failed"); | ||
| 27 | +_Static_assert(sizeof((struct stat){0}.st_size) < 8, "sizeof st_size < 8 failed"); | ||
| 28 | + | ||
| 29 | int main() | ||
| 30 | { | ||
| 31 | off_t offset; | ||
| 32 | @@ -278,21 +282,10 @@ _EOF_ | ||
| 33 | # compile it | ||
| 34 | $CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 35 | if [ $? -ne 0 ]; then | ||
| 36 | - echo -- no Large File Support | ||
| 37 | + echo -- yes we have Large File Support! | ||
| 38 | + CFLAGSR="${CFLAGSR} -DLARGE_FILE_SUPPORT" | ||
| 39 | else | ||
| 40 | -# run it | ||
| 41 | - ./conftest | ||
| 42 | - r=$? | ||
| 43 | - if [ $r -eq 1 ]; then | ||
| 44 | - echo -- no Large File Support - no 64-bit off_t | ||
| 45 | - elif [ $r -eq 2 ]; then | ||
| 46 | - echo -- no Large File Support - no 64-bit stat | ||
| 47 | - elif [ $r -eq 3 ]; then | ||
| 48 | - echo -- yes we have Large File Support! | ||
| 49 | - CFLAGSR="${CFLAGSR} -DLARGE_FILE_SUPPORT" | ||
| 50 | - else | ||
| 51 | - echo -- no Large File Support - conftest returned $r | ||
| 52 | - fi | ||
| 53 | + echo -- no Large File Support | ||
| 54 | fi | ||
| 55 | |||
| 56 | # Added 11/24/2005 EG | ||
| 57 | @@ -302,6 +295,11 @@ cat > conftest.c << _EOF_ | ||
| 58 | #include <stdlib.h> | ||
| 59 | #include <stdio.h> | ||
| 60 | #include <wchar.h> | ||
| 61 | + | ||
| 62 | +#ifndef __STDC_ISO_10646__ | ||
| 63 | +#error "__STDC_ISO_10646__ not defined | ||
| 64 | +#endif | ||
| 65 | + | ||
| 66 | int main() | ||
| 67 | { | ||
| 68 | size_t wsize; | ||
| 69 | @@ -327,19 +325,8 @@ if [ $? -ne 0 ]; then | ||
| 70 | echo "-- no Unicode (wchar_t) support" | ||
| 71 | else | ||
| 72 | # have wide char support | ||
| 73 | -# run it | ||
| 74 | - ./conftest | ||
| 75 | - r=$? | ||
| 76 | - if [ $r -eq 0 ]; then | ||
| 77 | - echo -- no Unicode wchar_t support - wchar_t allocation error | ||
| 78 | - elif [ $r -eq 1 ]; then | ||
| 79 | - echo -- no Unicode support - wchar_t encoding unspecified | ||
| 80 | - elif [ $r -eq 2 ]; then | ||
| 81 | - echo -- have wchar_t with known UCS encoding - enabling Unicode support! | ||
| 82 | - CFLAGSR="${CFLAGSR} -DUNICODE_SUPPORT -DUNICODE_WCHAR" | ||
| 83 | - else | ||
| 84 | - echo "-- no Unicode (wchar_t) support - conftest returned $r" | ||
| 85 | - fi | ||
| 86 | + echo -- have wchar_t with known UCS encoding - enabling Unicode support! | ||
| 87 | + CFLAGSR="${CFLAGSR} -DUNICODE_SUPPORT -DUNICODE_WCHAR" | ||
| 88 | fi | ||
| 89 | |||
| 90 | echo "Check for setlocale support (needed for UNICODE Native check)" | ||
| 91 | @@ -418,8 +405,7 @@ temp_link="link_$$" | ||
| 92 | echo "int main() { lchmod(\"${temp_file}\", 0666); }" \ | ||
| 93 | ) > conftest.c | ||
| 94 | ln -s "${temp_link}" "${temp_file}" && \ | ||
| 95 | - $CC $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null && \ | ||
| 96 | - ./conftest | ||
| 97 | + $CC -Werror=implicit-function-declaration $BFLAG $LDFLAGS -o conftest conftest.c >/dev/null | ||
| 98 | [ $? -ne 0 ] && CFLAGSR="${CFLAGSR} -DNO_LCHMOD" | ||
| 99 | rm -f "${temp_file}" | ||
| 100 | |||
| 101 | -- | ||
| 102 | 2.34.1 | ||
| 103 | |||
diff --git a/meta/recipes-extended/unzip/unzip/0001-unzip-fix-CVE-2018-1000035.patch b/meta/recipes-extended/unzip/unzip/0001-unzip-fix-CVE-2018-1000035.patch deleted file mode 100644 index 37289d1a53..0000000000 --- a/meta/recipes-extended/unzip/unzip/0001-unzip-fix-CVE-2018-1000035.patch +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | From 349f566e6e757458843fa164a0f0584280e1501e Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Changqing Li <changqing.li@windriver.com> | ||
| 3 | Date: Wed, 15 Aug 2018 16:20:53 +0800 | ||
| 4 | Subject: [PATCH] unzip: fix CVE-2018-1000035 | ||
| 5 | |||
| 6 | Upstream-Status: Backport | ||
| 7 | |||
| 8 | CVE: CVE-2018-1000035 | ||
| 9 | |||
| 10 | backport from unzip6.10c23 | ||
| 11 | |||
| 12 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
| 13 | --- | ||
| 14 | fileio.c | 11 ++++++++--- | ||
| 15 | 1 file changed, 8 insertions(+), 3 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/fileio.c b/fileio.c | ||
| 18 | index 36bfea3..7605a29 100644 | ||
| 19 | --- a/fileio.c | ||
| 20 | +++ b/fileio.c | ||
| 21 | @@ -1582,6 +1582,8 @@ int UZ_EXP UzpPassword (pG, rcnt, pwbuf, size, zfn, efn) | ||
| 22 | int r = IZ_PW_ENTERED; | ||
| 23 | char *m; | ||
| 24 | char *prompt; | ||
| 25 | + char *ep; | ||
| 26 | + char *zp; | ||
| 27 | |||
| 28 | #ifndef REENTRANT | ||
| 29 | /* tell picky compilers to shut up about "unused variable" warnings */ | ||
| 30 | @@ -1590,9 +1592,12 @@ int UZ_EXP UzpPassword (pG, rcnt, pwbuf, size, zfn, efn) | ||
| 31 | |||
| 32 | if (*rcnt == 0) { /* First call for current entry */ | ||
| 33 | *rcnt = 2; | ||
| 34 | - if ((prompt = (char *)malloc(2*FILNAMSIZ + 15)) != (char *)NULL) { | ||
| 35 | - sprintf(prompt, LoadFarString(PasswPrompt), | ||
| 36 | - FnFilter1(zfn), FnFilter2(efn)); | ||
| 37 | + zp = FnFilter1( zfn); | ||
| 38 | + ep = FnFilter2( efn); | ||
| 39 | + prompt = (char *)malloc( /* Slightly too long (2* "%s"). */ | ||
| 40 | + sizeof( PasswPrompt)+ strlen( zp)+ strlen( ep)); | ||
| 41 | + if (prompt != (char *)NULL) { | ||
| 42 | + sprintf(prompt, LoadFarString(PasswPrompt), zp, ep); | ||
| 43 | m = prompt; | ||
| 44 | } else | ||
| 45 | m = (char *)LoadFarString(PasswPrompt2); | ||
| 46 | -- | ||
| 47 | 2.7.4 | ||
| 48 | |||
diff --git a/meta/recipes-extended/unzip/unzip/06-unzip60-alt-iconv-utf8_CVE-2015-1315.patch b/meta/recipes-extended/unzip/unzip/06-unzip60-alt-iconv-utf8_CVE-2015-1315.patch deleted file mode 100644 index afc4c734a7..0000000000 --- a/meta/recipes-extended/unzip/unzip/06-unzip60-alt-iconv-utf8_CVE-2015-1315.patch +++ /dev/null | |||
| @@ -1,403 +0,0 @@ | |||
| 1 | From: Giovanni Scafora <giovanni.archlinux.org> | ||
| 2 | Subject: unzip files encoded with non-latin, non-unicode file names | ||
| 3 | Last-Update: 2015-02-11 | ||
| 4 | |||
| 5 | Upstream-Status: Backport | ||
| 6 | CVE: CVE-2015-1315 | ||
| 7 | |||
| 8 | Updated 2015-02-11 by Marc Deslauriers <marc.deslauriers@canonical.com> | ||
| 9 | to fix buffer overflow in charset_to_intern() | ||
| 10 | |||
| 11 | Signed-off-by: Marc Deslauriers <marc.deslauriers@canonical.com> | ||
| 12 | |||
| 13 | Index: unzip-6.0/unix/unix.c | ||
| 14 | =================================================================== | ||
| 15 | --- unzip-6.0.orig/unix/unix.c 2015-02-11 08:46:43.675324290 -0500 | ||
| 16 | +++ unzip-6.0/unix/unix.c 2015-02-11 09:18:04.902081319 -0500 | ||
| 17 | @@ -30,6 +30,9 @@ | ||
| 18 | #define UNZIP_INTERNAL | ||
| 19 | #include "unzip.h" | ||
| 20 | |||
| 21 | +#include <iconv.h> | ||
| 22 | +#include <langinfo.h> | ||
| 23 | + | ||
| 24 | #ifdef SCO_XENIX | ||
| 25 | # define SYSNDIR | ||
| 26 | #else /* SCO Unix, AIX, DNIX, TI SysV, Coherent 4.x, ... */ | ||
| 27 | @@ -1874,3 +1877,102 @@ | ||
| 28 | } | ||
| 29 | } | ||
| 30 | #endif /* QLZIP */ | ||
| 31 | + | ||
| 32 | + | ||
| 33 | +typedef struct { | ||
| 34 | + char *local_charset; | ||
| 35 | + char *archive_charset; | ||
| 36 | +} CHARSET_MAP; | ||
| 37 | + | ||
| 38 | +/* A mapping of local <-> archive charsets used by default to convert filenames | ||
| 39 | + * of DOS/Windows Zip archives. Currently very basic. */ | ||
| 40 | +static CHARSET_MAP dos_charset_map[] = { | ||
| 41 | + { "ANSI_X3.4-1968", "CP850" }, | ||
| 42 | + { "ISO-8859-1", "CP850" }, | ||
| 43 | + { "CP1252", "CP850" }, | ||
| 44 | + { "UTF-8", "CP866" }, | ||
| 45 | + { "KOI8-R", "CP866" }, | ||
| 46 | + { "KOI8-U", "CP866" }, | ||
| 47 | + { "ISO-8859-5", "CP866" } | ||
| 48 | +}; | ||
| 49 | + | ||
| 50 | +char OEM_CP[MAX_CP_NAME] = ""; | ||
| 51 | +char ISO_CP[MAX_CP_NAME] = ""; | ||
| 52 | + | ||
| 53 | +/* Try to guess the default value of OEM_CP based on the current locale. | ||
| 54 | + * ISO_CP is left alone for now. */ | ||
| 55 | +void init_conversion_charsets() | ||
| 56 | +{ | ||
| 57 | + const char *local_charset; | ||
| 58 | + int i; | ||
| 59 | + | ||
| 60 | + /* Make a guess only if OEM_CP not already set. */ | ||
| 61 | + if(*OEM_CP == '\0') { | ||
| 62 | + local_charset = nl_langinfo(CODESET); | ||
| 63 | + for(i = 0; i < sizeof(dos_charset_map)/sizeof(CHARSET_MAP); i++) | ||
| 64 | + if(!strcasecmp(local_charset, dos_charset_map[i].local_charset)) { | ||
| 65 | + strncpy(OEM_CP, dos_charset_map[i].archive_charset, | ||
| 66 | + sizeof(OEM_CP)); | ||
| 67 | + break; | ||
| 68 | + } | ||
| 69 | + } | ||
| 70 | +} | ||
| 71 | + | ||
| 72 | +/* Convert a string from one encoding to the current locale using iconv(). | ||
| 73 | + * Be as non-intrusive as possible. If error is encountered during covertion | ||
| 74 | + * just leave the string intact. */ | ||
| 75 | +static void charset_to_intern(char *string, char *from_charset) | ||
| 76 | +{ | ||
| 77 | + iconv_t cd; | ||
| 78 | + char *s,*d, *buf; | ||
| 79 | + size_t slen, dlen, buflen; | ||
| 80 | + const char *local_charset; | ||
| 81 | + | ||
| 82 | + if(*from_charset == '\0') | ||
| 83 | + return; | ||
| 84 | + | ||
| 85 | + buf = NULL; | ||
| 86 | + local_charset = nl_langinfo(CODESET); | ||
| 87 | + | ||
| 88 | + if((cd = iconv_open(local_charset, from_charset)) == (iconv_t)-1) | ||
| 89 | + return; | ||
| 90 | + | ||
| 91 | + slen = strlen(string); | ||
| 92 | + s = string; | ||
| 93 | + | ||
| 94 | + /* Make sure OUTBUFSIZ + 1 never ends up smaller than FILNAMSIZ | ||
| 95 | + * as this function also gets called with G.outbuf in fileio.c | ||
| 96 | + */ | ||
| 97 | + buflen = FILNAMSIZ; | ||
| 98 | + if (OUTBUFSIZ + 1 < FILNAMSIZ) | ||
| 99 | + { | ||
| 100 | + buflen = OUTBUFSIZ + 1; | ||
| 101 | + } | ||
| 102 | + | ||
| 103 | + d = buf = malloc(buflen); | ||
| 104 | + if(!d) | ||
| 105 | + goto cleanup; | ||
| 106 | + | ||
| 107 | + bzero(buf,buflen); | ||
| 108 | + dlen = buflen - 1; | ||
| 109 | + | ||
| 110 | + if(iconv(cd, &s, &slen, &d, &dlen) == (size_t)-1) | ||
| 111 | + goto cleanup; | ||
| 112 | + strncpy(string, buf, buflen); | ||
| 113 | + | ||
| 114 | + cleanup: | ||
| 115 | + free(buf); | ||
| 116 | + iconv_close(cd); | ||
| 117 | +} | ||
| 118 | + | ||
| 119 | +/* Convert a string from OEM_CP to the current locale charset. */ | ||
| 120 | +inline void oem_intern(char *string) | ||
| 121 | +{ | ||
| 122 | + charset_to_intern(string, OEM_CP); | ||
| 123 | +} | ||
| 124 | + | ||
| 125 | +/* Convert a string from ISO_CP to the current locale charset. */ | ||
| 126 | +inline void iso_intern(char *string) | ||
| 127 | +{ | ||
| 128 | + charset_to_intern(string, ISO_CP); | ||
| 129 | +} | ||
| 130 | Index: unzip-6.0/unix/unxcfg.h | ||
| 131 | =================================================================== | ||
| 132 | --- unzip-6.0.orig/unix/unxcfg.h 2015-02-11 08:46:43.675324290 -0500 | ||
| 133 | +++ unzip-6.0/unix/unxcfg.h 2015-02-11 08:46:43.671324260 -0500 | ||
| 134 | @@ -228,4 +228,30 @@ | ||
| 135 | /* wild_dir, dirname, wildname, matchname[], dirnamelen, have_dirname, */ | ||
| 136 | /* and notfirstcall are used by do_wild(). */ | ||
| 137 | |||
| 138 | + | ||
| 139 | +#define MAX_CP_NAME 25 | ||
| 140 | + | ||
| 141 | +#ifdef SETLOCALE | ||
| 142 | +# undef SETLOCALE | ||
| 143 | +#endif | ||
| 144 | +#define SETLOCALE(category, locale) setlocale(category, locale) | ||
| 145 | +#include <locale.h> | ||
| 146 | + | ||
| 147 | +#ifdef _ISO_INTERN | ||
| 148 | +# undef _ISO_INTERN | ||
| 149 | +#endif | ||
| 150 | +#define _ISO_INTERN(str1) iso_intern(str1) | ||
| 151 | + | ||
| 152 | +#ifdef _OEM_INTERN | ||
| 153 | +# undef _OEM_INTERN | ||
| 154 | +#endif | ||
| 155 | +#ifndef IZ_OEM2ISO_ARRAY | ||
| 156 | +# define IZ_OEM2ISO_ARRAY | ||
| 157 | +#endif | ||
| 158 | +#define _OEM_INTERN(str1) oem_intern(str1) | ||
| 159 | + | ||
| 160 | +void iso_intern(char *); | ||
| 161 | +void oem_intern(char *); | ||
| 162 | +void init_conversion_charsets(void); | ||
| 163 | + | ||
| 164 | #endif /* !__unxcfg_h */ | ||
| 165 | Index: unzip-6.0/unzip.c | ||
| 166 | =================================================================== | ||
| 167 | --- unzip-6.0.orig/unzip.c 2015-02-11 08:46:43.675324290 -0500 | ||
| 168 | +++ unzip-6.0/unzip.c 2015-02-11 08:46:43.675324290 -0500 | ||
| 169 | @@ -327,11 +327,21 @@ | ||
| 170 | -2 just filenames but allow -h/-t/-z -l long Unix \"ls -l\" format\n\ | ||
| 171 | -v verbose, multi-page format\n"; | ||
| 172 | |||
| 173 | +#ifndef UNIX | ||
| 174 | static ZCONST char Far ZipInfoUsageLine3[] = "miscellaneous options:\n\ | ||
| 175 | -h print header line -t print totals for listed files or for all\n\ | ||
| 176 | -z print zipfile comment -T print file times in sortable decimal format\ | ||
| 177 | \n -C be case-insensitive %s\ | ||
| 178 | -x exclude filenames that follow from listing\n"; | ||
| 179 | +#else /* UNIX */ | ||
| 180 | +static ZCONST char Far ZipInfoUsageLine3[] = "miscellaneous options:\n\ | ||
| 181 | + -h print header line -t print totals for listed files or for all\n\ | ||
| 182 | + -z print zipfile comment %c-T%c print file times in sortable decimal format\ | ||
| 183 | +\n %c-C%c be case-insensitive %s\ | ||
| 184 | + -x exclude filenames that follow from listing\n\ | ||
| 185 | + -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives\n\ | ||
| 186 | + -I CHARSET specify a character encoding for UNIX and other archives\n"; | ||
| 187 | +#endif /* !UNIX */ | ||
| 188 | #ifdef MORE | ||
| 189 | static ZCONST char Far ZipInfoUsageLine4[] = | ||
| 190 | " -M page output through built-in \"more\"\n"; | ||
| 191 | @@ -664,6 +674,17 @@ | ||
| 192 | -U use escapes for all non-ASCII Unicode -UU ignore any Unicode fields\n\ | ||
| 193 | -C match filenames case-insensitively -L make (some) names \ | ||
| 194 | lowercase\n %-42s -V retain VMS version numbers\n%s"; | ||
| 195 | +#elif (defined UNIX) | ||
| 196 | +static ZCONST char Far UnzipUsageLine4[] = "\ | ||
| 197 | +modifiers:\n\ | ||
| 198 | + -n never overwrite existing files -q quiet mode (-qq => quieter)\n\ | ||
| 199 | + -o overwrite files WITHOUT prompting -a auto-convert any text files\n\ | ||
| 200 | + -j junk paths (do not make directories) -aa treat ALL files as text\n\ | ||
| 201 | + -U use escapes for all non-ASCII Unicode -UU ignore any Unicode fields\n\ | ||
| 202 | + -C match filenames case-insensitively -L make (some) names \ | ||
| 203 | +lowercase\n %-42s -V retain VMS version numbers\n%s\ | ||
| 204 | + -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives\n\ | ||
| 205 | + -I CHARSET specify a character encoding for UNIX and other archives\n\n"; | ||
| 206 | #else /* !VMS */ | ||
| 207 | static ZCONST char Far UnzipUsageLine4[] = "\ | ||
| 208 | modifiers:\n\ | ||
| 209 | @@ -802,6 +823,10 @@ | ||
| 210 | #endif /* UNICODE_SUPPORT */ | ||
| 211 | |||
| 212 | |||
| 213 | +#ifdef UNIX | ||
| 214 | + init_conversion_charsets(); | ||
| 215 | +#endif | ||
| 216 | + | ||
| 217 | #if (defined(__IBMC__) && defined(__DEBUG_ALLOC__)) | ||
| 218 | extern void DebugMalloc(void); | ||
| 219 | |||
| 220 | @@ -1335,6 +1360,11 @@ | ||
| 221 | argc = *pargc; | ||
| 222 | argv = *pargv; | ||
| 223 | |||
| 224 | +#ifdef UNIX | ||
| 225 | + extern char OEM_CP[MAX_CP_NAME]; | ||
| 226 | + extern char ISO_CP[MAX_CP_NAME]; | ||
| 227 | +#endif | ||
| 228 | + | ||
| 229 | while (++argv, (--argc > 0 && *argv != NULL && **argv == '-')) { | ||
| 230 | s = *argv + 1; | ||
| 231 | while ((c = *s++) != 0) { /* "!= 0": prevent Turbo C warning */ | ||
| 232 | @@ -1516,6 +1546,35 @@ | ||
| 233 | } | ||
| 234 | break; | ||
| 235 | #endif /* MACOS */ | ||
| 236 | +#ifdef UNIX | ||
| 237 | + case ('I'): | ||
| 238 | + if (negative) { | ||
| 239 | + Info(slide, 0x401, ((char *)slide, | ||
| 240 | + "error: encodings can't be negated")); | ||
| 241 | + return(PK_PARAM); | ||
| 242 | + } else { | ||
| 243 | + if(*s) { /* Handle the -Icharset case */ | ||
| 244 | + /* Assume that charsets can't start with a dash to spot arguments misuse */ | ||
| 245 | + if(*s == '-') { | ||
| 246 | + Info(slide, 0x401, ((char *)slide, | ||
| 247 | + "error: a valid character encoding should follow the -I argument")); | ||
| 248 | + return(PK_PARAM); | ||
| 249 | + } | ||
| 250 | + strncpy(ISO_CP, s, sizeof(ISO_CP)); | ||
| 251 | + } else { /* -I charset */ | ||
| 252 | + ++argv; | ||
| 253 | + if(!(--argc > 0 && *argv != NULL && **argv != '-')) { | ||
| 254 | + Info(slide, 0x401, ((char *)slide, | ||
| 255 | + "error: a valid character encoding should follow the -I argument")); | ||
| 256 | + return(PK_PARAM); | ||
| 257 | + } | ||
| 258 | + s = *argv; | ||
| 259 | + strncpy(ISO_CP, s, sizeof(ISO_CP)); | ||
| 260 | + } | ||
| 261 | + while(*(++s)); /* No params straight after charset name */ | ||
| 262 | + } | ||
| 263 | + break; | ||
| 264 | +#endif /* ?UNIX */ | ||
| 265 | case ('j'): /* junk pathnames/directory structure */ | ||
| 266 | if (negative) | ||
| 267 | uO.jflag = FALSE, negative = 0; | ||
| 268 | @@ -1591,6 +1650,35 @@ | ||
| 269 | } else | ||
| 270 | ++uO.overwrite_all; | ||
| 271 | break; | ||
| 272 | +#ifdef UNIX | ||
| 273 | + case ('O'): | ||
| 274 | + if (negative) { | ||
| 275 | + Info(slide, 0x401, ((char *)slide, | ||
| 276 | + "error: encodings can't be negated")); | ||
| 277 | + return(PK_PARAM); | ||
| 278 | + } else { | ||
| 279 | + if(*s) { /* Handle the -Ocharset case */ | ||
| 280 | + /* Assume that charsets can't start with a dash to spot arguments misuse */ | ||
| 281 | + if(*s == '-') { | ||
| 282 | + Info(slide, 0x401, ((char *)slide, | ||
| 283 | + "error: a valid character encoding should follow the -I argument")); | ||
| 284 | + return(PK_PARAM); | ||
| 285 | + } | ||
| 286 | + strncpy(OEM_CP, s, sizeof(OEM_CP)); | ||
| 287 | + } else { /* -O charset */ | ||
| 288 | + ++argv; | ||
| 289 | + if(!(--argc > 0 && *argv != NULL && **argv != '-')) { | ||
| 290 | + Info(slide, 0x401, ((char *)slide, | ||
| 291 | + "error: a valid character encoding should follow the -O argument")); | ||
| 292 | + return(PK_PARAM); | ||
| 293 | + } | ||
| 294 | + s = *argv; | ||
| 295 | + strncpy(OEM_CP, s, sizeof(OEM_CP)); | ||
| 296 | + } | ||
| 297 | + while(*(++s)); /* No params straight after charset name */ | ||
| 298 | + } | ||
| 299 | + break; | ||
| 300 | +#endif /* ?UNIX */ | ||
| 301 | case ('p'): /* pipes: extract to stdout, no messages */ | ||
| 302 | if (negative) { | ||
| 303 | uO.cflag = FALSE; | ||
| 304 | Index: unzip-6.0/unzpriv.h | ||
| 305 | =================================================================== | ||
| 306 | --- unzip-6.0.orig/unzpriv.h 2015-02-11 08:46:43.675324290 -0500 | ||
| 307 | +++ unzip-6.0/unzpriv.h 2015-02-11 08:46:43.675324290 -0500 | ||
| 308 | @@ -3008,7 +3008,7 @@ | ||
| 309 | !(((islochdr) || (isuxatt)) && \ | ||
| 310 | ((hostver) == 25 || (hostver) == 26 || (hostver) == 40))) || \ | ||
| 311 | (hostnum) == FS_HPFS_ || \ | ||
| 312 | - ((hostnum) == FS_NTFS_ && (hostver) == 50)) { \ | ||
| 313 | + ((hostnum) == FS_NTFS_ /* && (hostver) == 50 */ )) { \ | ||
| 314 | _OEM_INTERN((string)); \ | ||
| 315 | } else { \ | ||
| 316 | _ISO_INTERN((string)); \ | ||
| 317 | Index: unzip-6.0/zipinfo.c | ||
| 318 | =================================================================== | ||
| 319 | --- unzip-6.0.orig/zipinfo.c 2015-02-11 08:46:43.675324290 -0500 | ||
| 320 | +++ unzip-6.0/zipinfo.c 2015-02-11 08:46:43.675324290 -0500 | ||
| 321 | @@ -457,6 +457,10 @@ | ||
| 322 | int tflag_slm=TRUE, tflag_2v=FALSE; | ||
| 323 | int explicit_h=FALSE, explicit_t=FALSE; | ||
| 324 | |||
| 325 | +#ifdef UNIX | ||
| 326 | + extern char OEM_CP[MAX_CP_NAME]; | ||
| 327 | + extern char ISO_CP[MAX_CP_NAME]; | ||
| 328 | +#endif | ||
| 329 | |||
| 330 | #ifdef MACOS | ||
| 331 | uO.lflag = LFLAG; /* reset default on each call */ | ||
| 332 | @@ -501,6 +505,35 @@ | ||
| 333 | uO.lflag = 0; | ||
| 334 | } | ||
| 335 | break; | ||
| 336 | +#ifdef UNIX | ||
| 337 | + case ('I'): | ||
| 338 | + if (negative) { | ||
| 339 | + Info(slide, 0x401, ((char *)slide, | ||
| 340 | + "error: encodings can't be negated")); | ||
| 341 | + return(PK_PARAM); | ||
| 342 | + } else { | ||
| 343 | + if(*s) { /* Handle the -Icharset case */ | ||
| 344 | + /* Assume that charsets can't start with a dash to spot arguments misuse */ | ||
| 345 | + if(*s == '-') { | ||
| 346 | + Info(slide, 0x401, ((char *)slide, | ||
| 347 | + "error: a valid character encoding should follow the -I argument")); | ||
| 348 | + return(PK_PARAM); | ||
| 349 | + } | ||
| 350 | + strncpy(ISO_CP, s, sizeof(ISO_CP)); | ||
| 351 | + } else { /* -I charset */ | ||
| 352 | + ++argv; | ||
| 353 | + if(!(--argc > 0 && *argv != NULL && **argv != '-')) { | ||
| 354 | + Info(slide, 0x401, ((char *)slide, | ||
| 355 | + "error: a valid character encoding should follow the -I argument")); | ||
| 356 | + return(PK_PARAM); | ||
| 357 | + } | ||
| 358 | + s = *argv; | ||
| 359 | + strncpy(ISO_CP, s, sizeof(ISO_CP)); | ||
| 360 | + } | ||
| 361 | + while(*(++s)); /* No params straight after charset name */ | ||
| 362 | + } | ||
| 363 | + break; | ||
| 364 | +#endif /* ?UNIX */ | ||
| 365 | case 'l': /* longer form of "ls -l" type listing */ | ||
| 366 | if (negative) | ||
| 367 | uO.lflag = -2, negative = 0; | ||
| 368 | @@ -521,6 +554,35 @@ | ||
| 369 | G.M_flag = TRUE; | ||
| 370 | break; | ||
| 371 | #endif | ||
| 372 | +#ifdef UNIX | ||
| 373 | + case ('O'): | ||
| 374 | + if (negative) { | ||
| 375 | + Info(slide, 0x401, ((char *)slide, | ||
| 376 | + "error: encodings can't be negated")); | ||
| 377 | + return(PK_PARAM); | ||
| 378 | + } else { | ||
| 379 | + if(*s) { /* Handle the -Ocharset case */ | ||
| 380 | + /* Assume that charsets can't start with a dash to spot arguments misuse */ | ||
| 381 | + if(*s == '-') { | ||
| 382 | + Info(slide, 0x401, ((char *)slide, | ||
| 383 | + "error: a valid character encoding should follow the -I argument")); | ||
| 384 | + return(PK_PARAM); | ||
| 385 | + } | ||
| 386 | + strncpy(OEM_CP, s, sizeof(OEM_CP)); | ||
| 387 | + } else { /* -O charset */ | ||
| 388 | + ++argv; | ||
| 389 | + if(!(--argc > 0 && *argv != NULL && **argv != '-')) { | ||
| 390 | + Info(slide, 0x401, ((char *)slide, | ||
| 391 | + "error: a valid character encoding should follow the -O argument")); | ||
| 392 | + return(PK_PARAM); | ||
| 393 | + } | ||
| 394 | + s = *argv; | ||
| 395 | + strncpy(OEM_CP, s, sizeof(OEM_CP)); | ||
| 396 | + } | ||
| 397 | + while(*(++s)); /* No params straight after charset name */ | ||
| 398 | + } | ||
| 399 | + break; | ||
| 400 | +#endif /* ?UNIX */ | ||
| 401 | case 's': /* default: shorter "ls -l" type listing */ | ||
| 402 | if (negative) | ||
| 403 | uO.lflag = -2, negative = 0; | ||
diff --git a/meta/recipes-extended/unzip/unzip/09-cve-2014-8139-crc-overflow.patch b/meta/recipes-extended/unzip/unzip/09-cve-2014-8139-crc-overflow.patch deleted file mode 100644 index 0e497cc65f..0000000000 --- a/meta/recipes-extended/unzip/unzip/09-cve-2014-8139-crc-overflow.patch +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | From: sms | ||
| 2 | Subject: Fix CVE-2014-8139: CRC32 verification heap-based overflow | ||
| 3 | Bug-Debian: http://bugs.debian.org/773722 | ||
| 4 | |||
| 5 | The patch comes from unzip_6.0-8+deb7u2.debian.tar.gz | ||
| 6 | |||
| 7 | Upstream-Status: Backport | ||
| 8 | CVE: CVE-2014-8139 | ||
| 9 | |||
| 10 | Signed-off-by: Roy Li <rongqing.li@windriver.com> | ||
| 11 | |||
| 12 | --- a/extract.c | ||
| 13 | +++ b/extract.c | ||
| 14 | @@ -298,6 +298,8 @@ | ||
| 15 | #ifndef SFX | ||
| 16 | static ZCONST char Far InconsistEFlength[] = "bad extra-field entry:\n \ | ||
| 17 | EF block length (%u bytes) exceeds remaining EF data (%u bytes)\n"; | ||
| 18 | + static ZCONST char Far TooSmallEBlength[] = "bad extra-field entry:\n \ | ||
| 19 | + EF block length (%u bytes) invalid (< %d)\n"; | ||
| 20 | static ZCONST char Far InvalidComprDataEAs[] = | ||
| 21 | " invalid compressed data for EAs\n"; | ||
| 22 | # if (defined(WIN32) && defined(NTSD_EAS)) | ||
| 23 | @@ -2023,7 +2025,8 @@ | ||
| 24 | ebID = makeword(ef); | ||
| 25 | ebLen = (unsigned)makeword(ef+EB_LEN); | ||
| 26 | |||
| 27 | - if (ebLen > (ef_len - EB_HEADSIZE)) { | ||
| 28 | + if (ebLen > (ef_len - EB_HEADSIZE)) | ||
| 29 | + { | ||
| 30 | /* Discovered some extra field inconsistency! */ | ||
| 31 | if (uO.qflag) | ||
| 32 | Info(slide, 1, ((char *)slide, "%-22s ", | ||
| 33 | @@ -2158,11 +2161,19 @@ | ||
| 34 | } | ||
| 35 | break; | ||
| 36 | case EF_PKVMS: | ||
| 37 | - if (makelong(ef+EB_HEADSIZE) != | ||
| 38 | + if (ebLen < 4) | ||
| 39 | + { | ||
| 40 | + Info(slide, 1, | ||
| 41 | + ((char *)slide, LoadFarString(TooSmallEBlength), | ||
| 42 | + ebLen, 4)); | ||
| 43 | + } | ||
| 44 | + else if (makelong(ef+EB_HEADSIZE) != | ||
| 45 | crc32(CRCVAL_INITIAL, ef+(EB_HEADSIZE+4), | ||
| 46 | (extent)(ebLen-4))) | ||
| 47 | + { | ||
| 48 | Info(slide, 1, ((char *)slide, | ||
| 49 | LoadFarString(BadCRC_EAs))); | ||
| 50 | + } | ||
| 51 | break; | ||
| 52 | case EF_PKW32: | ||
| 53 | case EF_PKUNIX: | ||
diff --git a/meta/recipes-extended/unzip/unzip/10-cve-2014-8140-test-compr-eb.patch b/meta/recipes-extended/unzip/unzip/10-cve-2014-8140-test-compr-eb.patch deleted file mode 100644 index ca4aaadffe..0000000000 --- a/meta/recipes-extended/unzip/unzip/10-cve-2014-8140-test-compr-eb.patch +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | From: sms | ||
| 2 | Subject: Fix CVE-2014-8140: out-of-bounds write issue in test_compr_eb() | ||
| 3 | Bug-Debian: http://bugs.debian.org/773722 | ||
| 4 | |||
| 5 | The patch comes from unzip_6.0-8+deb7u2.debian.tar.gz | ||
| 6 | |||
| 7 | Upstream-Status: Backport | ||
| 8 | CVE: CVE-2014-8140 | ||
| 9 | |||
| 10 | Signed-off-by: Roy Li <rongqing.li@windriver.com> | ||
| 11 | |||
| 12 | Index: unzip60/extract.c | ||
| 13 | =================================================================== | ||
| 14 | --- unzip60.orig/extract.c | ||
| 15 | +++ unzip60/extract.c | ||
| 16 | @@ -2233,10 +2233,17 @@ static int test_compr_eb(__G__ eb, eb_si | ||
| 17 | if (compr_offset < 4) /* field is not compressed: */ | ||
| 18 | return PK_OK; /* do nothing and signal OK */ | ||
| 19 | |||
| 20 | + /* Return no/bad-data error status if any problem is found: | ||
| 21 | + * 1. eb_size is too small to hold the uncompressed size | ||
| 22 | + * (eb_ucsize). (Else extract eb_ucsize.) | ||
| 23 | + * 2. eb_ucsize is zero (invalid). 2014-12-04 SMS. | ||
| 24 | + * 3. eb_ucsize is positive, but eb_size is too small to hold | ||
| 25 | + * the compressed data header. | ||
| 26 | + */ | ||
| 27 | if ((eb_size < (EB_UCSIZE_P + 4)) || | ||
| 28 | - ((eb_ucsize = makelong(eb+(EB_HEADSIZE+EB_UCSIZE_P))) > 0L && | ||
| 29 | - eb_size <= (compr_offset + EB_CMPRHEADLEN))) | ||
| 30 | - return IZ_EF_TRUNC; /* no compressed data! */ | ||
| 31 | + ((eb_ucsize = makelong( eb+ (EB_HEADSIZE+ EB_UCSIZE_P))) == 0L) || | ||
| 32 | + ((eb_ucsize > 0L) && (eb_size <= (compr_offset + EB_CMPRHEADLEN)))) | ||
| 33 | + return IZ_EF_TRUNC; /* no/bad compressed data! */ | ||
| 34 | |||
| 35 | method = makeword(eb + (EB_HEADSIZE + compr_offset)); | ||
| 36 | if ((method == STORED) && | ||
diff --git a/meta/recipes-extended/unzip/unzip/11-cve-2014-8141-getzip64data.patch b/meta/recipes-extended/unzip/unzip/11-cve-2014-8141-getzip64data.patch deleted file mode 100644 index c48c23f304..0000000000 --- a/meta/recipes-extended/unzip/unzip/11-cve-2014-8141-getzip64data.patch +++ /dev/null | |||
| @@ -1,145 +0,0 @@ | |||
| 1 | From: sms | ||
| 2 | Subject: Fix CVE-2014-8141: out-of-bounds read issues in getZip64Data() | ||
| 3 | Bug-Debian: http://bugs.debian.org/773722 | ||
| 4 | |||
| 5 | The patch comes from unzip_6.0-8+deb7u2.debian.tar.gz | ||
| 6 | |||
| 7 | Upstream-Status: Backport | ||
| 8 | CVE: CVE-2014-8141 | ||
| 9 | |||
| 10 | Signed-off-by: Roy Li <rongqing.li@windriver.com> | ||
| 11 | |||
| 12 | |||
| 13 | --- a/fileio.c | ||
| 14 | +++ b/fileio.c | ||
| 15 | @@ -176,6 +176,8 @@ | ||
| 16 | #endif | ||
| 17 | static ZCONST char Far ExtraFieldTooLong[] = | ||
| 18 | "warning: extra field too long (%d). Ignoring...\n"; | ||
| 19 | +static ZCONST char Far ExtraFieldCorrupt[] = | ||
| 20 | + "warning: extra field (type: 0x%04x) corrupt. Continuing...\n"; | ||
| 21 | |||
| 22 | #ifdef WINDLL | ||
| 23 | static ZCONST char Far DiskFullQuery[] = | ||
| 24 | @@ -2295,7 +2297,12 @@ | ||
| 25 | if (readbuf(__G__ (char *)G.extra_field, length) == 0) | ||
| 26 | return PK_EOF; | ||
| 27 | /* Looks like here is where extra fields are read */ | ||
| 28 | - getZip64Data(__G__ G.extra_field, length); | ||
| 29 | + if (getZip64Data(__G__ G.extra_field, length) != PK_COOL) | ||
| 30 | + { | ||
| 31 | + Info(slide, 0x401, ((char *)slide, | ||
| 32 | + LoadFarString( ExtraFieldCorrupt), EF_PKSZ64)); | ||
| 33 | + error = PK_WARN; | ||
| 34 | + } | ||
| 35 | #ifdef UNICODE_SUPPORT | ||
| 36 | G.unipath_filename = NULL; | ||
| 37 | if (G.UzO.U_flag < 2) { | ||
| 38 | --- a/process.c | ||
| 39 | +++ b/process.c | ||
| 40 | @@ -1,5 +1,5 @@ | ||
| 41 | /* | ||
| 42 | - Copyright (c) 1990-2009 Info-ZIP. All rights reserved. | ||
| 43 | + Copyright (c) 1990-2014 Info-ZIP. All rights reserved. | ||
| 44 | |||
| 45 | See the accompanying file LICENSE, version 2009-Jan-02 or later | ||
| 46 | (the contents of which are also included in unzip.h) for terms of use. | ||
| 47 | @@ -1901,48 +1901,82 @@ | ||
| 48 | and a 4-byte version of disk start number. | ||
| 49 | Sets both local header and central header fields. Not terribly clever, | ||
| 50 | but it means that this procedure is only called in one place. | ||
| 51 | + | ||
| 52 | + 2014-12-05 SMS. | ||
| 53 | + Added checks to ensure that enough data are available before calling | ||
| 54 | + makeint64() or makelong(). Replaced various sizeof() values with | ||
| 55 | + simple ("4" or "8") constants. (The Zip64 structures do not depend | ||
| 56 | + on our variable sizes.) Error handling is crude, but we should now | ||
| 57 | + stay within the buffer. | ||
| 58 | ---------------------------------------------------------------------------*/ | ||
| 59 | |||
| 60 | +#define Z64FLGS 0xffff | ||
| 61 | +#define Z64FLGL 0xffffffff | ||
| 62 | + | ||
| 63 | if (ef_len == 0 || ef_buf == NULL) | ||
| 64 | return PK_COOL; | ||
| 65 | |||
| 66 | Trace((stderr,"\ngetZip64Data: scanning extra field of length %u\n", | ||
| 67 | ef_len)); | ||
| 68 | |||
| 69 | - while (ef_len >= EB_HEADSIZE) { | ||
| 70 | + while (ef_len >= EB_HEADSIZE) | ||
| 71 | + { | ||
| 72 | eb_id = makeword(EB_ID + ef_buf); | ||
| 73 | eb_len = makeword(EB_LEN + ef_buf); | ||
| 74 | |||
| 75 | - if (eb_len > (ef_len - EB_HEADSIZE)) { | ||
| 76 | - /* discovered some extra field inconsistency! */ | ||
| 77 | + if (eb_len > (ef_len - EB_HEADSIZE)) | ||
| 78 | + { | ||
| 79 | + /* Extra block length exceeds remaining extra field length. */ | ||
| 80 | Trace((stderr, | ||
| 81 | "getZip64Data: block length %u > rest ef_size %u\n", eb_len, | ||
| 82 | ef_len - EB_HEADSIZE)); | ||
| 83 | break; | ||
| 84 | } | ||
| 85 | - if (eb_id == EF_PKSZ64) { | ||
| 86 | - | ||
| 87 | + if (eb_id == EF_PKSZ64) | ||
| 88 | + { | ||
| 89 | int offset = EB_HEADSIZE; | ||
| 90 | |||
| 91 | - if (G.crec.ucsize == 0xffffffff || G.lrec.ucsize == 0xffffffff){ | ||
| 92 | - G.lrec.ucsize = G.crec.ucsize = makeint64(offset + ef_buf); | ||
| 93 | - offset += sizeof(G.crec.ucsize); | ||
| 94 | + if ((G.crec.ucsize == Z64FLGL) || (G.lrec.ucsize == Z64FLGL)) | ||
| 95 | + { | ||
| 96 | + if (offset+ 8 > ef_len) | ||
| 97 | + return PK_ERR; | ||
| 98 | + | ||
| 99 | + G.crec.ucsize = G.lrec.ucsize = makeint64(offset + ef_buf); | ||
| 100 | + offset += 8; | ||
| 101 | } | ||
| 102 | - if (G.crec.csize == 0xffffffff || G.lrec.csize == 0xffffffff){ | ||
| 103 | - G.csize = G.lrec.csize = G.crec.csize = makeint64(offset + ef_buf); | ||
| 104 | - offset += sizeof(G.crec.csize); | ||
| 105 | + | ||
| 106 | + if ((G.crec.csize == Z64FLGL) || (G.lrec.csize == Z64FLGL)) | ||
| 107 | + { | ||
| 108 | + if (offset+ 8 > ef_len) | ||
| 109 | + return PK_ERR; | ||
| 110 | + | ||
| 111 | + G.csize = G.crec.csize = G.lrec.csize = makeint64(offset + ef_buf); | ||
| 112 | + offset += 8; | ||
| 113 | } | ||
| 114 | - if (G.crec.relative_offset_local_header == 0xffffffff){ | ||
| 115 | + | ||
| 116 | + if (G.crec.relative_offset_local_header == Z64FLGL) | ||
| 117 | + { | ||
| 118 | + if (offset+ 8 > ef_len) | ||
| 119 | + return PK_ERR; | ||
| 120 | + | ||
| 121 | G.crec.relative_offset_local_header = makeint64(offset + ef_buf); | ||
| 122 | - offset += sizeof(G.crec.relative_offset_local_header); | ||
| 123 | + offset += 8; | ||
| 124 | } | ||
| 125 | - if (G.crec.disk_number_start == 0xffff){ | ||
| 126 | + | ||
| 127 | + if (G.crec.disk_number_start == Z64FLGS) | ||
| 128 | + { | ||
| 129 | + if (offset+ 4 > ef_len) | ||
| 130 | + return PK_ERR; | ||
| 131 | + | ||
| 132 | G.crec.disk_number_start = (zuvl_t)makelong(offset + ef_buf); | ||
| 133 | - offset += sizeof(G.crec.disk_number_start); | ||
| 134 | + offset += 4; | ||
| 135 | } | ||
| 136 | +#if 0 | ||
| 137 | + break; /* Expect only one EF_PKSZ64 block. */ | ||
| 138 | +#endif /* 0 */ | ||
| 139 | } | ||
| 140 | |||
| 141 | - /* Skip this extra field block */ | ||
| 142 | + /* Skip this extra field block. */ | ||
| 143 | ef_buf += (eb_len + EB_HEADSIZE); | ||
| 144 | ef_len -= (eb_len + EB_HEADSIZE); | ||
| 145 | } | ||
diff --git a/meta/recipes-extended/unzip/unzip/18-cve-2014-9913-unzip-buffer-overflow.patch b/meta/recipes-extended/unzip/unzip/18-cve-2014-9913-unzip-buffer-overflow.patch deleted file mode 100644 index 3c02d596cc..0000000000 --- a/meta/recipes-extended/unzip/unzip/18-cve-2014-9913-unzip-buffer-overflow.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From: "Steven M. Schweda" <sms@antinode.info> | ||
| 2 | Subject: Fix CVE-2014-9913, buffer overflow in unzip | ||
| 3 | Bug: https://sourceforge.net/p/infozip/bugs/27/ | ||
| 4 | Bug-Debian: https://bugs.debian.org/847485 | ||
| 5 | Bug-Ubuntu: https://launchpad.net/bugs/387350 | ||
| 6 | X-Debian-version: 6.0-21 | ||
| 7 | |||
| 8 | Upstream-Status: Backport | ||
| 9 | CVE: CVE-2014-9913 | ||
| 10 | Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> | ||
| 11 | |||
| 12 | --- a/list.c | ||
| 13 | +++ b/list.c | ||
| 14 | @@ -339,7 +339,18 @@ | ||
| 15 | G.crec.compression_method == ENHDEFLATED) { | ||
| 16 | methbuf[5] = dtype[(G.crec.general_purpose_bit_flag>>1) & 3]; | ||
| 17 | } else if (methnum >= NUM_METHODS) { | ||
| 18 | - sprintf(&methbuf[4], "%03u", G.crec.compression_method); | ||
| 19 | + /* 2013-02-26 SMS. | ||
| 20 | + * http://sourceforge.net/p/infozip/bugs/27/ CVE-2014-9913. | ||
| 21 | + * Unexpectedly large compression methods overflow | ||
| 22 | + * &methbuf[]. Use the old, three-digit decimal format | ||
| 23 | + * for values which fit. Otherwise, sacrifice the | ||
| 24 | + * colon, and use four-digit hexadecimal. | ||
| 25 | + */ | ||
| 26 | + if (G.crec.compression_method <= 999) { | ||
| 27 | + sprintf( &methbuf[ 4], "%03u", G.crec.compression_method); | ||
| 28 | + } else { | ||
| 29 | + sprintf( &methbuf[ 3], "%04X", G.crec.compression_method); | ||
| 30 | + } | ||
| 31 | } | ||
| 32 | |||
| 33 | #if 0 /* GRR/Euro: add this? */ | ||
diff --git a/meta/recipes-extended/unzip/unzip/19-cve-2016-9844-zipinfo-buffer-overflow.patch b/meta/recipes-extended/unzip/unzip/19-cve-2016-9844-zipinfo-buffer-overflow.patch deleted file mode 100644 index ffadbc2efa..0000000000 --- a/meta/recipes-extended/unzip/unzip/19-cve-2016-9844-zipinfo-buffer-overflow.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | From: "Steven M. Schweda" <sms@antinode.info> | ||
| 2 | Subject: Fix CVE-2016-9844, buffer overflow in zipinfo | ||
| 3 | Bug-Debian: https://bugs.debian.org/847486 | ||
| 4 | Bug-Ubuntu: https://launchpad.net/bugs/1643750 | ||
| 5 | X-Debian-version: 6.0-21 | ||
| 6 | |||
| 7 | Upstream-Status: Backport | ||
| 8 | CVE: CVE-2016-9844 | ||
| 9 | Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> | ||
| 10 | |||
| 11 | --- a/zipinfo.c | ||
| 12 | +++ b/zipinfo.c | ||
| 13 | @@ -1921,7 +1921,18 @@ | ||
| 14 | ush dnum=(ush)((G.crec.general_purpose_bit_flag>>1) & 3); | ||
| 15 | methbuf[3] = dtype[dnum]; | ||
| 16 | } else if (methnum >= NUM_METHODS) { /* unknown */ | ||
| 17 | - sprintf(&methbuf[1], "%03u", G.crec.compression_method); | ||
| 18 | + /* 2016-12-05 SMS. | ||
| 19 | + * https://launchpad.net/bugs/1643750 | ||
| 20 | + * Unexpectedly large compression methods overflow | ||
| 21 | + * &methbuf[]. Use the old, three-digit decimal format | ||
| 22 | + * for values which fit. Otherwise, sacrifice the "u", | ||
| 23 | + * and use four-digit hexadecimal. | ||
| 24 | + */ | ||
| 25 | + if (G.crec.compression_method <= 999) { | ||
| 26 | + sprintf( &methbuf[ 1], "%03u", G.crec.compression_method); | ||
| 27 | + } else { | ||
| 28 | + sprintf( &methbuf[ 0], "%04X", G.crec.compression_method); | ||
| 29 | + } | ||
| 30 | } | ||
| 31 | |||
| 32 | for (k = 0; k < 15; ++k) | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2015-7696.patch b/meta/recipes-extended/unzip/unzip/CVE-2015-7696.patch deleted file mode 100644 index 87eed965d0..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2015-7696.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | Upstream-Status: Backport | ||
| 2 | CVE: CVE-2015-7696 | ||
| 3 | Signed-off-by: Tudor Florea <tudor.flore@enea.com> | ||
| 4 | |||
| 5 | From 68efed87fabddd450c08f3112f62a73f61d493c9 Mon Sep 17 00:00:00 2001 | ||
| 6 | From: Petr Stodulka <pstodulk@redhat.com> | ||
| 7 | Date: Mon, 14 Sep 2015 18:23:17 +0200 | ||
| 8 | Subject: [PATCH 1/2] upstream fix for heap overflow | ||
| 9 | |||
| 10 | https://bugzilla.redhat.com/attachment.cgi?id=1073002 | ||
| 11 | --- | ||
| 12 | crypt.c | 12 +++++++++++- | ||
| 13 | 1 file changed, 11 insertions(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/crypt.c b/crypt.c | ||
| 16 | index 784e411..a8975f2 100644 | ||
| 17 | --- a/crypt.c | ||
| 18 | +++ b/crypt.c | ||
| 19 | @@ -465,7 +465,17 @@ int decrypt(__G__ passwrd) | ||
| 20 | GLOBAL(pInfo->encrypted) = FALSE; | ||
| 21 | defer_leftover_input(__G); | ||
| 22 | for (n = 0; n < RAND_HEAD_LEN; n++) { | ||
| 23 | - b = NEXTBYTE; | ||
| 24 | + /* 2012-11-23 SMS. (OUSPG report.) | ||
| 25 | + * Quit early if compressed size < HEAD_LEN. The resulting | ||
| 26 | + * error message ("unable to get password") could be improved, | ||
| 27 | + * but it's better than trying to read nonexistent data, and | ||
| 28 | + * then continuing with a negative G.csize. (See | ||
| 29 | + * fileio.c:readbyte()). | ||
| 30 | + */ | ||
| 31 | + if ((b = NEXTBYTE) == (ush)EOF) | ||
| 32 | + { | ||
| 33 | + return PK_ERR; | ||
| 34 | + } | ||
| 35 | h[n] = (uch)b; | ||
| 36 | Trace((stdout, " (%02x)", h[n])); | ||
| 37 | } | ||
| 38 | -- | ||
| 39 | 2.4.6 | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2015-7697.patch b/meta/recipes-extended/unzip/unzip/CVE-2015-7697.patch deleted file mode 100644 index a8f293674b..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2015-7697.patch +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | Upstream-Status: Backport | ||
| 2 | CVE: CVE-2015-7697 | ||
| 3 | Signed-off-by: Tudor Florea <tudor.flore@enea.com> | ||
| 4 | |||
| 5 | From bd8a743ee0a77e65ad07ef4196c4cd366add3f26 Mon Sep 17 00:00:00 2001 | ||
| 6 | From: Kamil Dudka <kdudka@redhat.com> | ||
| 7 | Date: Mon, 14 Sep 2015 18:24:56 +0200 | ||
| 8 | Subject: [PATCH 2/2] fix infinite loop when extracting empty bzip2 data | ||
| 9 | |||
| 10 | --- | ||
| 11 | extract.c | 6 ++++++ | ||
| 12 | 1 file changed, 6 insertions(+) | ||
| 13 | |||
| 14 | diff --git a/extract.c b/extract.c | ||
| 15 | index 7134bfe..29db027 100644 | ||
| 16 | --- a/extract.c | ||
| 17 | +++ b/extract.c | ||
| 18 | @@ -2733,6 +2733,12 @@ __GDEF | ||
| 19 | int repeated_buf_err; | ||
| 20 | bz_stream bstrm; | ||
| 21 | |||
| 22 | + if (G.incnt <= 0 && G.csize <= 0L) { | ||
| 23 | + /* avoid an infinite loop */ | ||
| 24 | + Trace((stderr, "UZbunzip2() got empty input\n")); | ||
| 25 | + return 2; | ||
| 26 | + } | ||
| 27 | + | ||
| 28 | #if (defined(DLL) && !defined(NO_SLIDE_REDIR)) | ||
| 29 | if (G.redirect_slide) | ||
| 30 | wsize = G.redirect_size, redirSlide = G.redirect_buffer; | ||
| 31 | -- | ||
| 32 | 2.4.6 | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2018-18384.patch b/meta/recipes-extended/unzip/unzip/CVE-2018-18384.patch deleted file mode 100644 index cc9e2c1ea1..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2018-18384.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | Upstream-Status: Backport [https://sourceforge.net/p/infozip/bugs/53/] | ||
| 2 | CVE: CVE-2018-18384 | ||
| 3 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
| 4 | |||
| 5 | --- unzip60/list.c | ||
| 6 | +++ unzip60/list.c | ||
| 7 | @@ -97,7 +97,7 @@ int list_files(__G) /* return PK-type | ||
| 8 | { | ||
| 9 | int do_this_file=FALSE, cfactor, error, error_in_archive=PK_COOL; | ||
| 10 | #ifndef WINDLL | ||
| 11 | - char sgn, cfactorstr[10]; | ||
| 12 | + char sgn, cfactorstr[1+10+1+1]; /* <sgn><int>%NUL */ | ||
| 13 | int longhdr=(uO.vflag>1); | ||
| 14 | #endif | ||
| 15 | int date_format; | ||
| 16 | @@ -389,9 +389,9 @@ int list_files(__G) /* return PK-type | ||
| 17 | } | ||
| 18 | #else /* !WINDLL */ | ||
| 19 | if (cfactor == 100) | ||
| 20 | - sprintf(cfactorstr, LoadFarString(CompFactor100)); | ||
| 21 | + snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactor100)); | ||
| 22 | else | ||
| 23 | - sprintf(cfactorstr, LoadFarString(CompFactorStr), sgn, cfactor); | ||
| 24 | + snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactorStr), sgn, cfactor); | ||
| 25 | if (longhdr) | ||
| 26 | Info(slide, 0, ((char *)slide, LoadFarString(LongHdrStats), | ||
| 27 | FmZofft(G.crec.ucsize, "8", "u"), methbuf, | ||
| 28 | @@ -471,9 +471,9 @@ int list_files(__G) /* return PK-type | ||
| 29 | |||
| 30 | #else /* !WINDLL */ | ||
| 31 | if (cfactor == 100) | ||
| 32 | - sprintf(cfactorstr, LoadFarString(CompFactor100)); | ||
| 33 | + snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactor100)); | ||
| 34 | else | ||
| 35 | - sprintf(cfactorstr, LoadFarString(CompFactorStr), sgn, cfactor); | ||
| 36 | + snprintf(cfactorstr, sizeof(cfactorstr), LoadFarString(CompFactorStr), sgn, cfactor); | ||
| 37 | if (longhdr) { | ||
| 38 | Info(slide, 0, ((char *)slide, LoadFarString(LongFileTrailer), | ||
| 39 | FmZofft(tot_ucsize, "8", "u"), FmZofft(tot_csize, "8", "u"), | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p1.patch b/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p1.patch deleted file mode 100644 index d485a1bd6e..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p1.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From 080d52c3c9416c731f637f9c6e003961ef43f079 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mark Adler <madler@alumni.caltech.edu> | ||
| 3 | Date: Mon, 27 May 2019 08:20:32 -0700 | ||
| 4 | Subject: [PATCH 1/3] Fix bug in undefer_input() that misplaced the input | ||
| 5 | state. | ||
| 6 | |||
| 7 | CVE: CVE-2019-13232 | ||
| 8 | Upstream-Status: Backport | ||
| 9 | [https://github.com/madler/unzip/commit/41beb477c5744bc396fa1162ee0c14218ec12213] | ||
| 10 | |||
| 11 | Signed-off-by: Dan Tran <dantran@microsoft.com> | ||
| 12 | --- | ||
| 13 | fileio.c | 4 +++- | ||
| 14 | 1 file changed, 3 insertions(+), 1 deletion(-) | ||
| 15 | |||
| 16 | diff --git a/fileio.c b/fileio.c | ||
| 17 | index 7605a29..14460f3 100644 | ||
| 18 | --- a/fileio.c | ||
| 19 | +++ b/fileio.c | ||
| 20 | @@ -532,8 +532,10 @@ void undefer_input(__G) | ||
| 21 | * This condition was checked when G.incnt_leftover was set > 0 in | ||
| 22 | * defer_leftover_input(), and it is NOT allowed to touch G.csize | ||
| 23 | * before calling undefer_input() when (G.incnt_leftover > 0) | ||
| 24 | - * (single exception: see read_byte()'s "G.csize <= 0" handling) !! | ||
| 25 | + * (single exception: see readbyte()'s "G.csize <= 0" handling) !! | ||
| 26 | */ | ||
| 27 | + if (G.csize < 0L) | ||
| 28 | + G.csize = 0L; | ||
| 29 | G.incnt = G.incnt_leftover + (int)G.csize; | ||
| 30 | G.inptr = G.inptr_leftover - (int)G.csize; | ||
| 31 | G.incnt_leftover = 0; | ||
| 32 | -- | ||
| 33 | 2.22.0.vfs.1.1.57.gbaf16c8 | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p2.patch b/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p2.patch deleted file mode 100644 index 41037a8e24..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p2.patch +++ /dev/null | |||
| @@ -1,356 +0,0 @@ | |||
| 1 | From 1aae47fa8935654a84403768f32c03ecbb1be470 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mark Adler <madler@alumni.caltech.edu> | ||
| 3 | Date: Tue, 11 Jun 2019 22:01:18 -0700 | ||
| 4 | Subject: [PATCH 2/3] Detect and reject a zip bomb using overlapped entries. | ||
| 5 | |||
| 6 | This detects an invalid zip file that has at least one entry that | ||
| 7 | overlaps with another entry or with the central directory to the | ||
| 8 | end of the file. A Fifield zip bomb uses overlapped local entries | ||
| 9 | to vastly increase the potential inflation ratio. Such an invalid | ||
| 10 | zip file is rejected. | ||
| 11 | |||
| 12 | See https://www.bamsoftware.com/hacks/zipbomb/ for David Fifield's | ||
| 13 | analysis, construction, and examples of such zip bombs. | ||
| 14 | |||
| 15 | The detection maintains a list of covered spans of the zip files | ||
| 16 | so far, where the central directory to the end of the file and any | ||
| 17 | bytes preceding the first entry at zip file offset zero are | ||
| 18 | considered covered initially. Then as each entry is decompressed | ||
| 19 | or tested, it is considered covered. When a new entry is about to | ||
| 20 | be processed, its initial offset is checked to see if it is | ||
| 21 | contained by a covered span. If so, the zip file is rejected as | ||
| 22 | invalid. | ||
| 23 | |||
| 24 | This commit depends on a preceding commit: "Fix bug in | ||
| 25 | undefer_input() that misplaced the input state." | ||
| 26 | |||
| 27 | CVE: CVE-2019-13232 | ||
| 28 | Upstream-Status: Backport | ||
| 29 | [https://github.com/madler/unzip/commit/47b3ceae397d21bf822bc2ac73052a4b1daf8e1c] | ||
| 30 | |||
| 31 | Signed-off-by: Dan Tran <dantran@microsoft.com> | ||
| 32 | --- | ||
| 33 | extract.c | 190 +++++++++++++++++++++++++++++++++++++++++++++++++++++- | ||
| 34 | globals.c | 1 + | ||
| 35 | globals.h | 3 + | ||
| 36 | process.c | 10 +++ | ||
| 37 | unzip.h | 1 + | ||
| 38 | 5 files changed, 204 insertions(+), 1 deletion(-) | ||
| 39 | |||
| 40 | diff --git a/extract.c b/extract.c | ||
| 41 | index 24db2a8..2bb72ba 100644 | ||
| 42 | --- a/extract.c | ||
| 43 | +++ b/extract.c | ||
| 44 | @@ -321,6 +321,125 @@ static ZCONST char Far UnsupportedExtraField[] = | ||
| 45 | "\nerror: unsupported extra-field compression type (%u)--skipping\n"; | ||
| 46 | static ZCONST char Far BadExtraFieldCRC[] = | ||
| 47 | "error [%s]: bad extra-field CRC %08lx (should be %08lx)\n"; | ||
| 48 | +static ZCONST char Far NotEnoughMemCover[] = | ||
| 49 | + "error: not enough memory for bomb detection\n"; | ||
| 50 | +static ZCONST char Far OverlappedComponents[] = | ||
| 51 | + "error: invalid zip file with overlapped components (possible zip bomb)\n"; | ||
| 52 | + | ||
| 53 | + | ||
| 54 | + | ||
| 55 | + | ||
| 56 | + | ||
| 57 | +/* A growable list of spans. */ | ||
| 58 | +typedef zoff_t bound_t; | ||
| 59 | +typedef struct { | ||
| 60 | + bound_t beg; /* start of the span */ | ||
| 61 | + bound_t end; /* one past the end of the span */ | ||
| 62 | +} span_t; | ||
| 63 | +typedef struct { | ||
| 64 | + span_t *span; /* allocated, distinct, and sorted list of spans */ | ||
| 65 | + size_t num; /* number of spans in the list */ | ||
| 66 | + size_t max; /* allocated number of spans (num <= max) */ | ||
| 67 | +} cover_t; | ||
| 68 | + | ||
| 69 | +/* | ||
| 70 | + * Return the index of the first span in cover whose beg is greater than val. | ||
| 71 | + * If there is no such span, then cover->num is returned. | ||
| 72 | + */ | ||
| 73 | +static size_t cover_find(cover, val) | ||
| 74 | + cover_t *cover; | ||
| 75 | + bound_t val; | ||
| 76 | +{ | ||
| 77 | + size_t lo = 0, hi = cover->num; | ||
| 78 | + while (lo < hi) { | ||
| 79 | + size_t mid = (lo + hi) >> 1; | ||
| 80 | + if (val < cover->span[mid].beg) | ||
| 81 | + hi = mid; | ||
| 82 | + else | ||
| 83 | + lo = mid + 1; | ||
| 84 | + } | ||
| 85 | + return hi; | ||
| 86 | +} | ||
| 87 | + | ||
| 88 | +/* Return true if val lies within any one of the spans in cover. */ | ||
| 89 | +static int cover_within(cover, val) | ||
| 90 | + cover_t *cover; | ||
| 91 | + bound_t val; | ||
| 92 | +{ | ||
| 93 | + size_t pos = cover_find(cover, val); | ||
| 94 | + return pos > 0 && val < cover->span[pos - 1].end; | ||
| 95 | +} | ||
| 96 | + | ||
| 97 | +/* | ||
| 98 | + * Add a new span to the list, but only if the new span does not overlap any | ||
| 99 | + * spans already in the list. The new span covers the values beg..end-1. beg | ||
| 100 | + * must be less than end. | ||
| 101 | + * | ||
| 102 | + * Keep the list sorted and merge adjacent spans. Grow the allocated space for | ||
| 103 | + * the list as needed. On success, 0 is returned. If the new span overlaps any | ||
| 104 | + * existing spans, then 1 is returned and the new span is not added to the | ||
| 105 | + * list. If the new span is invalid because beg is greater than or equal to | ||
| 106 | + * end, then -1 is returned. If the list needs to be grown but the memory | ||
| 107 | + * allocation fails, then -2 is returned. | ||
| 108 | + */ | ||
| 109 | +static int cover_add(cover, beg, end) | ||
| 110 | + cover_t *cover; | ||
| 111 | + bound_t beg; | ||
| 112 | + bound_t end; | ||
| 113 | +{ | ||
| 114 | + size_t pos; | ||
| 115 | + int prec, foll; | ||
| 116 | + | ||
| 117 | + if (beg >= end) | ||
| 118 | + /* The new span is invalid. */ | ||
| 119 | + return -1; | ||
| 120 | + | ||
| 121 | + /* Find where the new span should go, and make sure that it does not | ||
| 122 | + overlap with any existing spans. */ | ||
| 123 | + pos = cover_find(cover, beg); | ||
| 124 | + if ((pos > 0 && beg < cover->span[pos - 1].end) || | ||
| 125 | + (pos < cover->num && end > cover->span[pos].beg)) | ||
| 126 | + return 1; | ||
| 127 | + | ||
| 128 | + /* Check for adjacencies. */ | ||
| 129 | + prec = pos > 0 && beg == cover->span[pos - 1].end; | ||
| 130 | + foll = pos < cover->num && end == cover->span[pos].beg; | ||
| 131 | + if (prec && foll) { | ||
| 132 | + /* The new span connects the preceding and following spans. Merge the | ||
| 133 | + following span into the preceding span, and delete the following | ||
| 134 | + span. */ | ||
| 135 | + cover->span[pos - 1].end = cover->span[pos].end; | ||
| 136 | + cover->num--; | ||
| 137 | + memmove(cover->span + pos, cover->span + pos + 1, | ||
| 138 | + (cover->num - pos) * sizeof(span_t)); | ||
| 139 | + } | ||
| 140 | + else if (prec) | ||
| 141 | + /* The new span is adjacent only to the preceding span. Extend the end | ||
| 142 | + of the preceding span. */ | ||
| 143 | + cover->span[pos - 1].end = end; | ||
| 144 | + else if (foll) | ||
| 145 | + /* The new span is adjacent only to the following span. Extend the | ||
| 146 | + beginning of the following span. */ | ||
| 147 | + cover->span[pos].beg = beg; | ||
| 148 | + else { | ||
| 149 | + /* The new span has gaps between both the preceding and the following | ||
| 150 | + spans. Assure that there is room and insert the span. */ | ||
| 151 | + if (cover->num == cover->max) { | ||
| 152 | + size_t max = cover->max == 0 ? 16 : cover->max << 1; | ||
| 153 | + span_t *span = realloc(cover->span, max * sizeof(span_t)); | ||
| 154 | + if (span == NULL) | ||
| 155 | + return -2; | ||
| 156 | + cover->span = span; | ||
| 157 | + cover->max = max; | ||
| 158 | + } | ||
| 159 | + memmove(cover->span + pos + 1, cover->span + pos, | ||
| 160 | + (cover->num - pos) * sizeof(span_t)); | ||
| 161 | + cover->num++; | ||
| 162 | + cover->span[pos].beg = beg; | ||
| 163 | + cover->span[pos].end = end; | ||
| 164 | + } | ||
| 165 | + return 0; | ||
| 166 | +} | ||
| 167 | |||
| 168 | |||
| 169 | |||
| 170 | @@ -376,6 +495,29 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 171 | } | ||
| 172 | #endif /* !SFX || SFX_EXDIR */ | ||
| 173 | |||
| 174 | + /* One more: initialize cover structure for bomb detection. Start with a | ||
| 175 | + span that covers the central directory though the end of the file. */ | ||
| 176 | + if (G.cover == NULL) { | ||
| 177 | + G.cover = malloc(sizeof(cover_t)); | ||
| 178 | + if (G.cover == NULL) { | ||
| 179 | + Info(slide, 0x401, ((char *)slide, | ||
| 180 | + LoadFarString(NotEnoughMemCover))); | ||
| 181 | + return PK_MEM; | ||
| 182 | + } | ||
| 183 | + ((cover_t *)G.cover)->span = NULL; | ||
| 184 | + ((cover_t *)G.cover)->max = 0; | ||
| 185 | + } | ||
| 186 | + ((cover_t *)G.cover)->num = 0; | ||
| 187 | + if ((G.extra_bytes != 0 && | ||
| 188 | + cover_add((cover_t *)G.cover, 0, G.extra_bytes) != 0) || | ||
| 189 | + cover_add((cover_t *)G.cover, | ||
| 190 | + G.extra_bytes + G.ecrec.offset_start_central_directory, | ||
| 191 | + G.ziplen) != 0) { | ||
| 192 | + Info(slide, 0x401, ((char *)slide, | ||
| 193 | + LoadFarString(NotEnoughMemCover))); | ||
| 194 | + return PK_MEM; | ||
| 195 | + } | ||
| 196 | + | ||
| 197 | /*--------------------------------------------------------------------------- | ||
| 198 | The basic idea of this function is as follows. Since the central di- | ||
| 199 | rectory lies at the end of the zipfile and the member files lie at the | ||
| 200 | @@ -593,7 +735,8 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 201 | if (error > error_in_archive) | ||
| 202 | error_in_archive = error; | ||
| 203 | /* ...and keep going (unless disk full or user break) */ | ||
| 204 | - if (G.disk_full > 1 || error_in_archive == IZ_CTRLC) { | ||
| 205 | + if (G.disk_full > 1 || error_in_archive == IZ_CTRLC || | ||
| 206 | + error == PK_BOMB) { | ||
| 207 | /* clear reached_end to signal premature stop ... */ | ||
| 208 | reached_end = FALSE; | ||
| 209 | /* ... and cancel scanning the central directory */ | ||
| 210 | @@ -1062,6 +1205,11 @@ static int extract_or_test_entrylist(__G__ numchunk, | ||
| 211 | |||
| 212 | /* seek_zipf(__G__ pInfo->offset); */ | ||
| 213 | request = G.pInfo->offset + G.extra_bytes; | ||
| 214 | + if (cover_within((cover_t *)G.cover, request)) { | ||
| 215 | + Info(slide, 0x401, ((char *)slide, | ||
| 216 | + LoadFarString(OverlappedComponents))); | ||
| 217 | + return PK_BOMB; | ||
| 218 | + } | ||
| 219 | inbuf_offset = request % INBUFSIZ; | ||
| 220 | bufstart = request - inbuf_offset; | ||
| 221 | |||
| 222 | @@ -1593,6 +1741,18 @@ reprompt: | ||
| 223 | return IZ_CTRLC; /* cancel operation by user request */ | ||
| 224 | } | ||
| 225 | #endif | ||
| 226 | + error = cover_add((cover_t *)G.cover, request, | ||
| 227 | + G.cur_zipfile_bufstart + (G.inptr - G.inbuf)); | ||
| 228 | + if (error < 0) { | ||
| 229 | + Info(slide, 0x401, ((char *)slide, | ||
| 230 | + LoadFarString(NotEnoughMemCover))); | ||
| 231 | + return PK_MEM; | ||
| 232 | + } | ||
| 233 | + if (error != 0) { | ||
| 234 | + Info(slide, 0x401, ((char *)slide, | ||
| 235 | + LoadFarString(OverlappedComponents))); | ||
| 236 | + return PK_BOMB; | ||
| 237 | + } | ||
| 238 | #ifdef MACOS /* MacOS is no preemptive OS, thus call event-handling by hand */ | ||
| 239 | UserStop(); | ||
| 240 | #endif | ||
| 241 | @@ -1994,6 +2154,34 @@ static int extract_or_test_member(__G) /* return PK-type error code */ | ||
| 242 | } | ||
| 243 | |||
| 244 | undefer_input(__G); | ||
| 245 | + | ||
| 246 | + if ((G.lrec.general_purpose_bit_flag & 8) != 0) { | ||
| 247 | + /* skip over data descriptor (harder than it sounds, due to signature | ||
| 248 | + * ambiguity) | ||
| 249 | + */ | ||
| 250 | +# define SIG 0x08074b50 | ||
| 251 | +# define LOW 0xffffffff | ||
| 252 | + uch buf[12]; | ||
| 253 | + unsigned shy = 12 - readbuf((char *)buf, 12); | ||
| 254 | + ulg crc = shy ? 0 : makelong(buf); | ||
| 255 | + ulg clen = shy ? 0 : makelong(buf + 4); | ||
| 256 | + ulg ulen = shy ? 0 : makelong(buf + 8); /* or high clen if ZIP64 */ | ||
| 257 | + if (crc == SIG && /* if not SIG, no signature */ | ||
| 258 | + (G.lrec.crc32 != SIG || /* if not SIG, have signature */ | ||
| 259 | + (clen == SIG && /* if not SIG, no signature */ | ||
| 260 | + ((G.lrec.csize & LOW) != SIG || /* if not SIG, have signature */ | ||
| 261 | + (ulen == SIG && /* if not SIG, no signature */ | ||
| 262 | + (G.zip64 ? G.lrec.csize >> 32 : G.lrec.ucsize) != SIG | ||
| 263 | + /* if not SIG, have signature */ | ||
| 264 | + ))))) | ||
| 265 | + /* skip four more bytes to account for signature */ | ||
| 266 | + shy += 4 - readbuf((char *)buf, 4); | ||
| 267 | + if (G.zip64) | ||
| 268 | + shy += 8 - readbuf((char *)buf, 8); /* skip eight more for ZIP64 */ | ||
| 269 | + if (shy) | ||
| 270 | + error = PK_ERR; | ||
| 271 | + } | ||
| 272 | + | ||
| 273 | return error; | ||
| 274 | |||
| 275 | } /* end function extract_or_test_member() */ | ||
| 276 | diff --git a/globals.c b/globals.c | ||
| 277 | index fa8cca5..1e0f608 100644 | ||
| 278 | --- a/globals.c | ||
| 279 | +++ b/globals.c | ||
| 280 | @@ -181,6 +181,7 @@ Uz_Globs *globalsCtor() | ||
| 281 | # if (!defined(NO_TIMESTAMPS)) | ||
| 282 | uO.D_flag=1; /* default to '-D', no restoration of dir timestamps */ | ||
| 283 | # endif | ||
| 284 | + G.cover = NULL; /* not allocated yet */ | ||
| 285 | #endif | ||
| 286 | |||
| 287 | uO.lflag=(-1); | ||
| 288 | diff --git a/globals.h b/globals.h | ||
| 289 | index 11b7215..2bdcdeb 100644 | ||
| 290 | --- a/globals.h | ||
| 291 | +++ b/globals.h | ||
| 292 | @@ -260,12 +260,15 @@ typedef struct Globals { | ||
| 293 | ecdir_rec ecrec; /* used in unzip.c, extract.c */ | ||
| 294 | z_stat statbuf; /* used by main, mapname, check_for_newer */ | ||
| 295 | |||
| 296 | + int zip64; /* true if Zip64 info in extra field */ | ||
| 297 | + | ||
| 298 | int mem_mode; | ||
| 299 | uch *outbufptr; /* extract.c static */ | ||
| 300 | ulg outsize; /* extract.c static */ | ||
| 301 | int reported_backslash; /* extract.c static */ | ||
| 302 | int disk_full; | ||
| 303 | int newfile; | ||
| 304 | + void **cover; /* used in extract.c for bomb detection */ | ||
| 305 | |||
| 306 | int didCRlast; /* fileio static */ | ||
| 307 | ulg numlines; /* fileio static: number of lines printed */ | ||
| 308 | diff --git a/process.c b/process.c | ||
| 309 | index a3c1a4d..208619c 100644 | ||
| 310 | --- a/process.c | ||
| 311 | +++ b/process.c | ||
| 312 | @@ -637,6 +637,13 @@ void free_G_buffers(__G) /* releases all memory allocated in global vars */ | ||
| 313 | } | ||
| 314 | #endif | ||
| 315 | |||
| 316 | + /* Free the cover span list and the cover structure. */ | ||
| 317 | + if (G.cover != NULL) { | ||
| 318 | + free(*(G.cover)); | ||
| 319 | + free(G.cover); | ||
| 320 | + G.cover = NULL; | ||
| 321 | + } | ||
| 322 | + | ||
| 323 | } /* end function free_G_buffers() */ | ||
| 324 | |||
| 325 | |||
| 326 | @@ -1905,6 +1912,7 @@ int getZip64Data(__G__ ef_buf, ef_len) | ||
| 327 | |||
| 328 | #define Z64FLGS 0xffff | ||
| 329 | #define Z64FLGL 0xffffffff | ||
| 330 | + G.zip64 = FALSE; | ||
| 331 | |||
| 332 | if (ef_len == 0 || ef_buf == NULL) | ||
| 333 | return PK_COOL; | ||
| 334 | @@ -1964,6 +1972,8 @@ int getZip64Data(__G__ ef_buf, ef_len) | ||
| 335 | G.crec.disk_number_start = (zuvl_t)makelong(offset + ef_buf); | ||
| 336 | offset += 4; | ||
| 337 | } | ||
| 338 | + | ||
| 339 | + G.zip64 = TRUE; | ||
| 340 | #if 0 | ||
| 341 | break; /* Expect only one EF_PKSZ64 block. */ | ||
| 342 | #endif /* 0 */ | ||
| 343 | diff --git a/unzip.h b/unzip.h | ||
| 344 | index 5b2a326..ed24a5b 100644 | ||
| 345 | --- a/unzip.h | ||
| 346 | +++ b/unzip.h | ||
| 347 | @@ -645,6 +645,7 @@ typedef struct _Uzp_cdir_Rec { | ||
| 348 | #define PK_NOZIP 9 /* zipfile not found */ | ||
| 349 | #define PK_PARAM 10 /* bad or illegal parameters specified */ | ||
| 350 | #define PK_FIND 11 /* no files found */ | ||
| 351 | +#define PK_BOMB 12 /* likely zip bomb */ | ||
| 352 | #define PK_DISK 50 /* disk full */ | ||
| 353 | #define PK_EOF 51 /* unexpected EOF */ | ||
| 354 | |||
| 355 | -- | ||
| 356 | 2.22.0.vfs.1.1.57.gbaf16c8 | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p3.patch b/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p3.patch deleted file mode 100644 index fd26fdd833..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2019-13232_p3.patch +++ /dev/null | |||
| @@ -1,121 +0,0 @@ | |||
| 1 | From be88aa4811af47ca06d8b7dcda294f899eba70ea Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mark Adler <madler@alumni.caltech.edu> | ||
| 3 | Date: Thu, 25 Jul 2019 20:43:17 -0700 | ||
| 4 | Subject: [PATCH 3/3] Do not raise a zip bomb alert for a misplaced central | ||
| 5 | directory. | ||
| 6 | |||
| 7 | There is a zip-like file in the Firefox distribution, omni.ja, | ||
| 8 | which is a zip container with the central directory placed at the | ||
| 9 | start of the file instead of after the local entries as required | ||
| 10 | by the zip standard. This commit marks the actual location of the | ||
| 11 | central directory, as well as the end of central directory records, | ||
| 12 | as disallowed locations. This now permits such containers to not | ||
| 13 | raise a zip bomb alert, where in fact there are no overlaps. | ||
| 14 | |||
| 15 | CVE: CVE-2019-13232 | ||
| 16 | Upstream-Status: Backport | ||
| 17 | [https://github.com/madler/unzip/commit/6d351831be705cc26d897db44f878a978f4138fc] | ||
| 18 | |||
| 19 | Signed-off-by: Dan Tran <dantran@microsoft.com> | ||
| 20 | --- | ||
| 21 | extract.c | 25 +++++++++++++++++++------ | ||
| 22 | process.c | 6 ++++++ | ||
| 23 | unzpriv.h | 10 ++++++++++ | ||
| 24 | 3 files changed, 35 insertions(+), 6 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/extract.c b/extract.c | ||
| 27 | index 2bb72ba..a9dcca8 100644 | ||
| 28 | --- a/extract.c | ||
| 29 | +++ b/extract.c | ||
| 30 | @@ -495,8 +495,11 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 31 | } | ||
| 32 | #endif /* !SFX || SFX_EXDIR */ | ||
| 33 | |||
| 34 | - /* One more: initialize cover structure for bomb detection. Start with a | ||
| 35 | - span that covers the central directory though the end of the file. */ | ||
| 36 | + /* One more: initialize cover structure for bomb detection. Start with | ||
| 37 | + spans that cover any extra bytes at the start, the central directory, | ||
| 38 | + the end of central directory record (including the Zip64 end of central | ||
| 39 | + directory locator, if present), and the Zip64 end of central directory | ||
| 40 | + record, if present. */ | ||
| 41 | if (G.cover == NULL) { | ||
| 42 | G.cover = malloc(sizeof(cover_t)); | ||
| 43 | if (G.cover == NULL) { | ||
| 44 | @@ -508,15 +511,25 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 45 | ((cover_t *)G.cover)->max = 0; | ||
| 46 | } | ||
| 47 | ((cover_t *)G.cover)->num = 0; | ||
| 48 | - if ((G.extra_bytes != 0 && | ||
| 49 | - cover_add((cover_t *)G.cover, 0, G.extra_bytes) != 0) || | ||
| 50 | - cover_add((cover_t *)G.cover, | ||
| 51 | + if (cover_add((cover_t *)G.cover, | ||
| 52 | G.extra_bytes + G.ecrec.offset_start_central_directory, | ||
| 53 | - G.ziplen) != 0) { | ||
| 54 | + G.extra_bytes + G.ecrec.offset_start_central_directory + | ||
| 55 | + G.ecrec.size_central_directory) != 0) { | ||
| 56 | Info(slide, 0x401, ((char *)slide, | ||
| 57 | LoadFarString(NotEnoughMemCover))); | ||
| 58 | return PK_MEM; | ||
| 59 | } | ||
| 60 | + if ((G.extra_bytes != 0 && | ||
| 61 | + cover_add((cover_t *)G.cover, 0, G.extra_bytes) != 0) || | ||
| 62 | + (G.ecrec.have_ecr64 && | ||
| 63 | + cover_add((cover_t *)G.cover, G.ecrec.ec64_start, | ||
| 64 | + G.ecrec.ec64_end) != 0) || | ||
| 65 | + cover_add((cover_t *)G.cover, G.ecrec.ec_start, | ||
| 66 | + G.ecrec.ec_end) != 0) { | ||
| 67 | + Info(slide, 0x401, ((char *)slide, | ||
| 68 | + LoadFarString(OverlappedComponents))); | ||
| 69 | + return PK_BOMB; | ||
| 70 | + } | ||
| 71 | |||
| 72 | /*--------------------------------------------------------------------------- | ||
| 73 | The basic idea of this function is as follows. Since the central di- | ||
| 74 | diff --git a/process.c b/process.c | ||
| 75 | index 208619c..5f8f6c6 100644 | ||
| 76 | --- a/process.c | ||
| 77 | +++ b/process.c | ||
| 78 | @@ -1408,6 +1408,10 @@ static int find_ecrec64(__G__ searchlen) /* return PK-class error */ | ||
| 79 | |||
| 80 | /* Now, we are (almost) sure that we have a Zip64 archive. */ | ||
| 81 | G.ecrec.have_ecr64 = 1; | ||
| 82 | + G.ecrec.ec_start -= ECLOC64_SIZE+4; | ||
| 83 | + G.ecrec.ec64_start = ecrec64_start_offset; | ||
| 84 | + G.ecrec.ec64_end = ecrec64_start_offset + | ||
| 85 | + 12 + makeint64(&byterec[ECREC64_LENGTH]); | ||
| 86 | |||
| 87 | /* Update the "end-of-central-dir offset" for later checks. */ | ||
| 88 | G.real_ecrec_offset = ecrec64_start_offset; | ||
| 89 | @@ -1542,6 +1546,8 @@ static int find_ecrec(__G__ searchlen) /* return PK-class error */ | ||
| 90 | makelong(&byterec[OFFSET_START_CENTRAL_DIRECTORY]); | ||
| 91 | G.ecrec.zipfile_comment_length = | ||
| 92 | makeword(&byterec[ZIPFILE_COMMENT_LENGTH]); | ||
| 93 | + G.ecrec.ec_start = G.real_ecrec_offset; | ||
| 94 | + G.ecrec.ec_end = G.ecrec.ec_start + 22 + G.ecrec.zipfile_comment_length; | ||
| 95 | |||
| 96 | /* Now, we have to read the archive comment, BEFORE the file pointer | ||
| 97 | is moved away backwards to seek for a Zip64 ECLOC64 structure. | ||
| 98 | diff --git a/unzpriv.h b/unzpriv.h | ||
| 99 | index c8d3eab..5e177c7 100644 | ||
| 100 | --- a/unzpriv.h | ||
| 101 | +++ b/unzpriv.h | ||
| 102 | @@ -2185,6 +2185,16 @@ typedef struct VMStimbuf { | ||
| 103 | int have_ecr64; /* valid Zip64 ecdir-record exists */ | ||
| 104 | int is_zip64_archive; /* Zip64 ecdir-record is mandatory */ | ||
| 105 | ush zipfile_comment_length; | ||
| 106 | + zusz_t ec_start, ec_end; /* offsets of start and end of the | ||
| 107 | + end of central directory record, | ||
| 108 | + including if present the Zip64 | ||
| 109 | + end of central directory locator, | ||
| 110 | + which immediately precedes the | ||
| 111 | + end of central directory record */ | ||
| 112 | + zusz_t ec64_start, ec64_end; /* if have_ecr64 is true, then these | ||
| 113 | + are the offsets of the start and | ||
| 114 | + end of the Zip64 end of central | ||
| 115 | + directory record */ | ||
| 116 | } ecdir_rec; | ||
| 117 | |||
| 118 | |||
| 119 | -- | ||
| 120 | 2.22.0.vfs.1.1.57.gbaf16c8 | ||
| 121 | |||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch b/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch deleted file mode 100644 index c0103444fc..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | From 731d698377dbd1f5b1b90efeb8094602ed59fc40 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Nils Bars <nils.bars@t-online.de> | ||
| 3 | Date: Mon, 17 Jan 2022 16:53:16 +0000 | ||
| 4 | Subject: [PATCH] Fix null pointer dereference and use of uninitialized data | ||
| 5 | |||
| 6 | This fixes a bug that causes use of uninitialized heap data if `readbuf` fails | ||
| 7 | to read as many bytes as indicated by the extra field length attribute. | ||
| 8 | Furthermore, this fixes a null pointer dereference if an archive contains an | ||
| 9 | `EF_UNIPATH` extra field but does not have a filename set. | ||
| 10 | --- | ||
| 11 | fileio.c | 5 ++++- | ||
| 12 | process.c | 6 +++++- | ||
| 13 | 2 files changed, 9 insertions(+), 2 deletions(-) | ||
| 14 | --- | ||
| 15 | |||
| 16 | Patch from: | ||
| 17 | https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/1957077 | ||
| 18 | https://launchpadlibrarian.net/580782282/0001-Fix-null-pointer-dereference-and-use-of-uninitialized-data.patch | ||
| 19 | Regenerated to apply without offsets. | ||
| 20 | |||
| 21 | CVE: CVE-2021-4217 | ||
| 22 | |||
| 23 | Upstream-Status: Inactive-Upstream [infozip upstream inactive] | ||
| 24 | |||
| 25 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
| 26 | |||
| 27 | |||
| 28 | diff --git a/fileio.c b/fileio.c | ||
| 29 | index 14460f3..1dc319e 100644 | ||
| 30 | --- a/fileio.c | ||
| 31 | +++ b/fileio.c | ||
| 32 | @@ -2301,8 +2301,11 @@ int do_string(__G__ length, option) /* return PK-type error code */ | ||
| 33 | seek_zipf(__G__ G.cur_zipfile_bufstart - G.extra_bytes + | ||
| 34 | (G.inptr-G.inbuf) + length); | ||
| 35 | } else { | ||
| 36 | - if (readbuf(__G__ (char *)G.extra_field, length) == 0) | ||
| 37 | + unsigned bytes_read = readbuf(__G__ (char *)G.extra_field, length); | ||
| 38 | + if (bytes_read == 0) | ||
| 39 | return PK_EOF; | ||
| 40 | + if (bytes_read != length) | ||
| 41 | + return PK_ERR; | ||
| 42 | /* Looks like here is where extra fields are read */ | ||
| 43 | if (getZip64Data(__G__ G.extra_field, length) != PK_COOL) | ||
| 44 | { | ||
| 45 | diff --git a/process.c b/process.c | ||
| 46 | index 5f8f6c6..de843a5 100644 | ||
| 47 | --- a/process.c | ||
| 48 | +++ b/process.c | ||
| 49 | @@ -2058,10 +2058,14 @@ int getUnicodeData(__G__ ef_buf, ef_len) | ||
| 50 | G.unipath_checksum = makelong(offset + ef_buf); | ||
| 51 | offset += 4; | ||
| 52 | |||
| 53 | + if (!G.filename_full) { | ||
| 54 | + /* Check if we have a unicode extra section but no filename set */ | ||
| 55 | + return PK_ERR; | ||
| 56 | + } | ||
| 57 | + | ||
| 58 | /* | ||
| 59 | * Compute 32-bit crc | ||
| 60 | */ | ||
| 61 | - | ||
| 62 | chksum = crc32(chksum, (uch *)(G.filename_full), | ||
| 63 | strlen(G.filename_full)); | ||
| 64 | |||
| 65 | -- | ||
| 66 | 2.32.0 | ||
| 67 | |||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2022-0529.patch b/meta/recipes-extended/unzip/unzip/CVE-2022-0529.patch deleted file mode 100644 index 1c1e120deb..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2022-0529.patch +++ /dev/null | |||
| @@ -1,39 +0,0 @@ | |||
| 1 | https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010355 | ||
| 2 | |||
| 3 | CVE: CVE-2022-0529 | ||
| 4 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 5 | |||
| 6 | diff --git a/process.c b/process.c | ||
| 7 | index d2a846e..99b9c7b 100644 | ||
| 8 | --- a/process.c | ||
| 9 | +++ b/process.c | ||
| 10 | @@ -2507,13 +2507,15 @@ char *wide_to_local_string(wide_string, escape_all) | ||
| 11 | char buf[9]; | ||
| 12 | char *buffer = NULL; | ||
| 13 | char *local_string = NULL; | ||
| 14 | + size_t buffer_size; | ||
| 15 | |||
| 16 | for (wsize = 0; wide_string[wsize]; wsize++) ; | ||
| 17 | |||
| 18 | if (max_bytes < MAX_ESCAPE_BYTES) | ||
| 19 | max_bytes = MAX_ESCAPE_BYTES; | ||
| 20 | |||
| 21 | - if ((buffer = (char *)malloc(wsize * max_bytes + 1)) == NULL) { | ||
| 22 | + buffer_size = wsize * max_bytes + 1; | ||
| 23 | + if ((buffer = (char *)malloc(buffer_size)) == NULL) { | ||
| 24 | return NULL; | ||
| 25 | } | ||
| 26 | |||
| 27 | @@ -2552,7 +2554,11 @@ char *wide_to_local_string(wide_string, escape_all) | ||
| 28 | /* no MB for this wide */ | ||
| 29 | /* use escape for wide character */ | ||
| 30 | char *escape_string = wide_to_escape_string(wide_string[i]); | ||
| 31 | - strcat(buffer, escape_string); | ||
| 32 | + size_t buffer_len = strlen(buffer); | ||
| 33 | + size_t escape_string_len = strlen(escape_string); | ||
| 34 | + if (buffer_len + escape_string_len + 1 > buffer_size) | ||
| 35 | + escape_string_len = buffer_size - buffer_len - 1; | ||
| 36 | + strncat(buffer, escape_string, escape_string_len); | ||
| 37 | free(escape_string); | ||
| 38 | } | ||
| 39 | } | ||
diff --git a/meta/recipes-extended/unzip/unzip/CVE-2022-0530.patch b/meta/recipes-extended/unzip/unzip/CVE-2022-0530.patch deleted file mode 100644 index 363dafddc9..0000000000 --- a/meta/recipes-extended/unzip/unzip/CVE-2022-0530.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010355 | ||
| 2 | |||
| 3 | CVE: CVE-2022-0530 | ||
| 4 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 5 | |||
| 6 | diff --git a/fileio.c b/fileio.c | ||
| 7 | index 6290824..77e4b5f 100644 | ||
| 8 | --- a/fileio.c | ||
| 9 | +++ b/fileio.c | ||
| 10 | @@ -2361,6 +2361,9 @@ int do_string(__G__ length, option) /* return PK-type error code */ | ||
| 11 | /* convert UTF-8 to local character set */ | ||
| 12 | fn = utf8_to_local_string(G.unipath_filename, | ||
| 13 | G.unicode_escape_all); | ||
| 14 | + if (fn == NULL) | ||
| 15 | + return PK_ERR; | ||
| 16 | + | ||
| 17 | /* make sure filename is short enough */ | ||
| 18 | if (strlen(fn) >= FILNAMSIZ) { | ||
| 19 | fn[FILNAMSIZ - 1] = '\0'; | ||
| 20 | diff --git a/process.c b/process.c | ||
| 21 | index d2a846e..715bc0f 100644 | ||
| 22 | --- a/process.c | ||
| 23 | +++ b/process.c | ||
| 24 | @@ -2605,6 +2605,8 @@ char *utf8_to_local_string(utf8_string, escape_all) | ||
| 25 | int escape_all; | ||
| 26 | { | ||
| 27 | zwchar *wide = utf8_to_wide_string(utf8_string); | ||
| 28 | + if (wide == NULL) | ||
| 29 | + return NULL; | ||
| 30 | char *loc = wide_to_local_string(wide, escape_all); | ||
| 31 | free(wide); | ||
| 32 | return loc; | ||
| 33 | |||
diff --git a/meta/recipes-extended/unzip/unzip/avoid-strip.patch b/meta/recipes-extended/unzip/unzip/avoid-strip.patch deleted file mode 100644 index 70bedc8381..0000000000 --- a/meta/recipes-extended/unzip/unzip/avoid-strip.patch +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 2 | |||
| 3 | unix/Makefile: remove hard coded strip commands | ||
| 4 | |||
| 5 | Remove the hard coded strip commands, both LF2 (used in linking) and | ||
| 6 | STRIP used alone. | ||
| 7 | |||
| 8 | Signed-off-by: Mark Hatle <mark.hatle@windriver.com> | ||
| 9 | |||
| 10 | diff -ur unzip60.orig/unix/configure unzip60/unix/configure | ||
| 11 | --- unzip60.orig/unix/configure 2009-04-16 14:25:12.000000000 -0500 | ||
| 12 | +++ unzip60/unix/configure 2011-06-21 11:23:36.822849960 -0500 | ||
| 13 | @@ -17,7 +17,7 @@ | ||
| 14 | IZ_BZIP2=${3} | ||
| 15 | CFLAGS="${CFLAGS} -I. -DUNIX" | ||
| 16 | LFLAGS1="" | ||
| 17 | -LFLAGS2="-s" | ||
| 18 | +LFLAGS2="" | ||
| 19 | LN="ln -s" | ||
| 20 | |||
| 21 | CFLAGS_OPT='' | ||
| 22 | diff -ur unzip60.orig/unix/Makefile unzip60/unix/Makefile | ||
| 23 | --- unzip60.orig/unix/Makefile 2009-01-18 16:41:18.000000000 -0600 | ||
| 24 | +++ unzip60/unix/Makefile 2011-06-21 11:12:22.900003388 -0500 | ||
| 25 | @@ -52,7 +52,7 @@ | ||
| 26 | CF = $(CFLAGS) $(CF_NOOPT) | ||
| 27 | LFLAGS1 = | ||
| 28 | LF = -o unzip$E $(LFLAGS1) | ||
| 29 | -LF2 = -s | ||
| 30 | +LF2 = | ||
| 31 | |||
| 32 | # UnZipSFX flags | ||
| 33 | SL = -o unzipsfx$E $(LFLAGS1) | ||
| 34 | @@ -70,7 +70,7 @@ | ||
| 35 | CHMOD = chmod | ||
| 36 | BINPERMS = 755 | ||
| 37 | MANPERMS = 644 | ||
| 38 | -STRIP = strip | ||
| 39 | +STRIP = | ||
| 40 | E = | ||
| 41 | O = .o | ||
| 42 | M = unix | ||
| 43 | @@ -776,7 +776,6 @@ | ||
| 44 | # | ||
| 45 | gcc: unix_make | ||
| 46 | $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O3" LF2="" | ||
| 47 | - $(STRIP) $(UNZIPS) | ||
| 48 | |||
| 49 | # Heurikon HK68 (68010), UniPlus+ System V 5.0, Green Hills C-68000 | ||
| 50 | hk68: unix_make | ||
diff --git a/meta/recipes-extended/unzip/unzip/cve-2014-9636.patch b/meta/recipes-extended/unzip/unzip/cve-2014-9636.patch deleted file mode 100644 index 5fcd318b25..0000000000 --- a/meta/recipes-extended/unzip/unzip/cve-2014-9636.patch +++ /dev/null | |||
| @@ -1,46 +0,0 @@ | |||
| 1 | From 190040ebfcf5395a6ccedede2cc9343d34f0a108 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: mancha <mancha1 AT zoho DOT com> | ||
| 3 | Date: Wed, 11 Feb 2015 | ||
| 4 | Subject: Info-ZIP UnZip buffer overflow | ||
| 5 | |||
| 6 | Upstream-Status: Backport | ||
| 7 | CVE: CVE-2014-9636 | ||
| 8 | |||
| 9 | By carefully crafting a corrupt ZIP archive with "extra fields" that | ||
| 10 | purport to have compressed blocks larger than the corresponding | ||
| 11 | uncompressed blocks in STORED no-compression mode, an attacker can | ||
| 12 | trigger a heap overflow that can result in application crash or | ||
| 13 | possibly have other unspecified impact. | ||
| 14 | |||
| 15 | This patch ensures that when extra fields use STORED mode, the | ||
| 16 | "compressed" and uncompressed block sizes match. | ||
| 17 | |||
| 18 | Signed-off-by: mancha <mancha1 AT zoho DOT com> | ||
| 19 | --- | ||
| 20 | extract.c | 8 ++++++++ | ||
| 21 | 1 file changed, 8 insertions(+) | ||
| 22 | |||
| 23 | --- a/extract.c | ||
| 24 | +++ b/extract.c | ||
| 25 | @@ -2217,6 +2217,7 @@ static int test_compr_eb(__G__ eb, eb_si | ||
| 26 | ulg eb_ucsize; | ||
| 27 | uch *eb_ucptr; | ||
| 28 | int r; | ||
| 29 | + ush method; | ||
| 30 | |||
| 31 | if (compr_offset < 4) /* field is not compressed: */ | ||
| 32 | return PK_OK; /* do nothing and signal OK */ | ||
| 33 | @@ -2226,6 +2227,13 @@ static int test_compr_eb(__G__ eb, eb_si | ||
| 34 | eb_size <= (compr_offset + EB_CMPRHEADLEN))) | ||
| 35 | return IZ_EF_TRUNC; /* no compressed data! */ | ||
| 36 | |||
| 37 | + method = makeword(eb + (EB_HEADSIZE + compr_offset)); | ||
| 38 | + if ((method == STORED) && | ||
| 39 | + (eb_size - compr_offset - EB_CMPRHEADLEN != eb_ucsize)) | ||
| 40 | + return PK_ERR; /* compressed & uncompressed | ||
| 41 | + * should match in STORED | ||
| 42 | + * method */ | ||
| 43 | + | ||
| 44 | if ( | ||
| 45 | #ifdef INT_16BIT | ||
| 46 | (((ulg)(extent)eb_ucsize) != eb_ucsize) || | ||
diff --git a/meta/recipes-extended/unzip/unzip/define-ldflags.patch b/meta/recipes-extended/unzip/unzip/define-ldflags.patch deleted file mode 100644 index dd01c01400..0000000000 --- a/meta/recipes-extended/unzip/unzip/define-ldflags.patch +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | Pass LDFLAGS to the linker | ||
| 2 | |||
| 3 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 4 | |||
| 5 | Signed-off-by: Mikhail Durnev <Mikhail_Durnev@mentor.com> | ||
| 6 | |||
| 7 | diff -Naur old/unix/configure new/unix/configure | ||
| 8 | --- old/unix/configure 2014-01-13 21:59:27.000000000 +1100 | ||
| 9 | +++ new/unix/configure 2014-01-14 16:36:02.000000000 +1100 | ||
| 10 | @@ -16,7 +16,7 @@ | ||
| 11 | CFLAGSR=${CFLAGS} | ||
| 12 | IZ_BZIP2=${3} | ||
| 13 | CFLAGS="${CFLAGS} -I. -DUNIX" | ||
| 14 | -LFLAGS1="" | ||
| 15 | +LFLAGS1=${LDFLAGS} | ||
| 16 | LFLAGS2="" | ||
| 17 | LN="ln -s" | ||
| 18 | |||
diff --git a/meta/recipes-extended/unzip/unzip/fix-security-format.patch b/meta/recipes-extended/unzip/unzip/fix-security-format.patch deleted file mode 100644 index 2889c652d4..0000000000 --- a/meta/recipes-extended/unzip/unzip/fix-security-format.patch +++ /dev/null | |||
| @@ -1,97 +0,0 @@ | |||
| 1 | unzip: Fixing security formatting issues | ||
| 2 | |||
| 3 | Fix security formatting issues related to sprintf parameters expeted. | ||
| 4 | |||
| 5 | [YOCTO #9551] | ||
| 6 | [https://bugzilla.yoctoproject.org/show_bug.cgi?id=9551] | ||
| 7 | |||
| 8 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 9 | |||
| 10 | Signed-off-by: Edwin Plauchu <edwin.plauchu.camacho@intel.com> | ||
| 11 | |||
| 12 | diff --git a/extract.c b/extract.c | ||
| 13 | index 7cd9123..25c5a62 100644 | ||
| 14 | --- a/extract.c | ||
| 15 | +++ b/extract.c | ||
| 16 | @@ -475,7 +475,7 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 17 | Info(slide, 0x401, ((char *)slide, | ||
| 18 | LoadFarString(CentSigMsg), j + blknum*DIR_BLKSIZ + 1)); | ||
| 19 | Info(slide, 0x401, ((char *)slide, | ||
| 20 | - LoadFarString(ReportMsg))); | ||
| 21 | + "%s",LoadFarString(ReportMsg))); | ||
| 22 | error_in_archive = PK_BADERR; | ||
| 23 | } | ||
| 24 | reached_end = TRUE; /* ...so no more left to do */ | ||
| 25 | @@ -754,8 +754,8 @@ int extract_or_test_files(__G) /* return PK-type error code */ | ||
| 26 | |||
| 27 | #ifndef SFX | ||
| 28 | if (no_endsig_found) { /* just to make sure */ | ||
| 29 | - Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); | ||
| 30 | - Info(slide, 0x401, ((char *)slide, LoadFarString(ReportMsg))); | ||
| 31 | + Info(slide, 0x401, ((char *)slide, "%s", LoadFarString(EndSigMsg))); | ||
| 32 | + Info(slide, 0x401, ((char *)slide, "%s", LoadFarString(ReportMsg))); | ||
| 33 | if (!error_in_archive) /* don't overwrite stronger error */ | ||
| 34 | error_in_archive = PK_WARN; | ||
| 35 | } | ||
| 36 | diff --git a/list.c b/list.c | ||
| 37 | index 15e0011..0b484f6 100644 | ||
| 38 | --- a/list.c | ||
| 39 | +++ b/list.c | ||
| 40 | @@ -181,7 +181,7 @@ int list_files(__G) /* return PK-type error code */ | ||
| 41 | Info(slide, 0x401, | ||
| 42 | ((char *)slide, LoadFarString(CentSigMsg), j)); | ||
| 43 | Info(slide, 0x401, | ||
| 44 | - ((char *)slide, LoadFarString(ReportMsg))); | ||
| 45 | + ((char *)slide, "%s", LoadFarString(ReportMsg))); | ||
| 46 | return PK_BADERR; /* sig not found */ | ||
| 47 | } | ||
| 48 | } | ||
| 49 | @@ -507,7 +507,7 @@ int list_files(__G) /* return PK-type error code */ | ||
| 50 | && (!G.ecrec.is_zip64_archive) | ||
| 51 | && (memcmp(G.sig, end_central_sig, 4) != 0) | ||
| 52 | ) { /* just to make sure again */ | ||
| 53 | - Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); | ||
| 54 | + Info(slide, 0x401, ((char *)slide, "%s", LoadFarString(EndSigMsg))); | ||
| 55 | error_in_archive = PK_WARN; /* didn't find sig */ | ||
| 56 | } | ||
| 57 | |||
| 58 | @@ -591,7 +591,7 @@ int get_time_stamp(__G__ last_modtime, nmember) /* return PK-type error code */ | ||
| 59 | Info(slide, 0x401, | ||
| 60 | ((char *)slide, LoadFarString(CentSigMsg), j)); | ||
| 61 | Info(slide, 0x401, | ||
| 62 | - ((char *)slide, LoadFarString(ReportMsg))); | ||
| 63 | + ((char *)slide, "%s", LoadFarString(ReportMsg))); | ||
| 64 | return PK_BADERR; /* sig not found */ | ||
| 65 | } | ||
| 66 | } | ||
| 67 | @@ -674,7 +674,7 @@ int get_time_stamp(__G__ last_modtime, nmember) /* return PK-type error code */ | ||
| 68 | ---------------------------------------------------------------------------*/ | ||
| 69 | |||
| 70 | if (memcmp(G.sig, end_central_sig, 4)) { /* just to make sure again */ | ||
| 71 | - Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); | ||
| 72 | + Info(slide, 0x401, ((char *)slide, "%s", LoadFarString(EndSigMsg))); | ||
| 73 | error_in_archive = PK_WARN; | ||
| 74 | } | ||
| 75 | if (*nmember == 0L && error_in_archive <= PK_WARN) | ||
| 76 | diff --git a/zipinfo.c b/zipinfo.c | ||
| 77 | index 0ac75b3..1e7fa82 100644 | ||
| 78 | --- a/zipinfo.c | ||
| 79 | +++ b/zipinfo.c | ||
| 80 | @@ -833,7 +833,7 @@ int zipinfo(__G) /* return PK-type error code */ | ||
| 81 | Info(slide, 0x401, | ||
| 82 | ((char *)slide, LoadFarString(CentSigMsg), j)); | ||
| 83 | Info(slide, 0x401, | ||
| 84 | - ((char *)slide, LoadFarString(ReportMsg))); | ||
| 85 | + ((char *)slide, "%s", LoadFarString(ReportMsg))); | ||
| 86 | error_in_archive = PK_BADERR; /* sig not found */ | ||
| 87 | break; | ||
| 88 | } | ||
| 89 | @@ -1022,7 +1022,7 @@ int zipinfo(__G) /* return PK-type error code */ | ||
| 90 | && (!G.ecrec.is_zip64_archive) | ||
| 91 | && (memcmp(G.sig, end_central_sig, 4) != 0) | ||
| 92 | ) { /* just to make sure again */ | ||
| 93 | - Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); | ||
| 94 | + Info(slide, 0x401, ((char *)slide, "%s", LoadFarString(EndSigMsg))); | ||
| 95 | error_in_archive = PK_WARN; /* didn't find sig */ | ||
| 96 | } | ||
| 97 | |||
diff --git a/meta/recipes-extended/unzip/unzip/gcc15.patch b/meta/recipes-extended/unzip/unzip/gcc15.patch deleted file mode 100644 index 42a2f81681..0000000000 --- a/meta/recipes-extended/unzip/unzip/gcc15.patch +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | Do not redefine gmtime(), localtime() | ||
| 2 | |||
| 3 | They are already provided by system time.h header | ||
| 4 | |||
| 5 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 6 | |||
| 7 | Sign-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 8 | --- a/unix/unxcfg.h | ||
| 9 | +++ b/unix/unxcfg.h | ||
| 10 | @@ -117,7 +117,6 @@ typedef struct stat z_stat; | ||
| 11 | # endif | ||
| 12 | #else | ||
| 13 | # include <time.h> | ||
| 14 | - struct tm *gmtime(), *localtime(); | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #if (defined(BSD4_4) || (defined(SYSV) && defined(MODERN))) | ||
diff --git a/meta/recipes-extended/unzip/unzip/symlink.patch b/meta/recipes-extended/unzip/unzip/symlink.patch deleted file mode 100644 index 26f1c8ba86..0000000000 --- a/meta/recipes-extended/unzip/unzip/symlink.patch +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | Unzip doesn't handle large zip files well and crashes: | ||
| 2 | |||
| 3 | "This only happens if you have more then 16k entries and when one of | ||
| 4 | the 16k entry infos is reused it happend to be previously used for | ||
| 5 | a symlink entry." | ||
| 6 | |||
| 7 | This patch is taken from Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=972427) | ||
| 8 | |||
| 9 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 10 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
| 11 | |||
| 12 | --- unzip60/process.c.sav 2013-06-09 12:08:57.070392264 +0200 | ||
| 13 | +++ unzip60/process.c 2013-06-09 12:10:08.641696988 +0200 | ||
| 14 | @@ -1751,6 +1751,12 @@ | ||
| 15 | = (G.crec.general_purpose_bit_flag & (1 << 11)) == (1 << 11); | ||
| 16 | #endif | ||
| 17 | |||
| 18 | +#ifdef SYMLINKS | ||
| 19 | + /* Initialize the symlink flag, may be set by the platform-specific | ||
| 20 | + mapattr function. */ | ||
| 21 | + G.pInfo->symlink = 0; | ||
| 22 | +#endif | ||
| 23 | + | ||
| 24 | return PK_COOL; | ||
| 25 | |||
| 26 | } /* end function process_cdir_file_hdr() */ | ||
diff --git a/meta/recipes-extended/unzip/unzip/unzip_optimization.patch b/meta/recipes-extended/unzip/unzip/unzip_optimization.patch deleted file mode 100644 index 4bab7b26af..0000000000 --- a/meta/recipes-extended/unzip/unzip/unzip_optimization.patch +++ /dev/null | |||
| @@ -1,127 +0,0 @@ | |||
| 1 | unzip: use optimization from bitbake | ||
| 2 | |||
| 3 | Remove -O3 optimizations to use bitbake default optimization levels. | ||
| 4 | |||
| 5 | Upstream-Status: Inappropriate [configuration] | ||
| 6 | |||
| 7 | Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> | ||
| 8 | |||
| 9 | diff -rup unix-orig/configure unix/configure | ||
| 10 | --- a/unix-orig/configure 2021-04-16 10:25:03.120858292 +0000 | ||
| 11 | +++ b/unix/configure 2021-04-16 10:46:43.292546138 +0000 | ||
| 12 | @@ -70,7 +70,7 @@ int main() | ||
| 13 | _EOF_ | ||
| 14 | $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null | ||
| 15 | if test $? -eq 0; then | ||
| 16 | - CFLAGS_OPT='-O3' | ||
| 17 | + CFLAGS_OPT='' | ||
| 18 | echo " DEC C ($CFLAGS_OPT)" | ||
| 19 | else | ||
| 20 | # HP-UX HP C? | ||
| 21 | @@ -111,7 +111,7 @@ int main() | ||
| 22 | _EOF_ | ||
| 23 | $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null | ||
| 24 | if test $? -eq 0; then | ||
| 25 | - CFLAGS_OPT='-O3' | ||
| 26 | + CFLAGS_OPT='' | ||
| 27 | echo " GNU C ($CFLAGS_OPT)" | ||
| 28 | # Special Mac OS X shared library "ld" option? | ||
| 29 | if test ` uname -s 2> /dev/null ` = 'Darwin'; then | ||
| 30 | diff -rup unix-orig/Makefile unix/Makefile | ||
| 31 | --- a/unix-orig/Makefile 2021-04-16 10:25:03.000863878 +0000 | ||
| 32 | +++ b/unix/Makefile 2021-04-16 10:47:31.658299278 +0000 | ||
| 33 | @@ -47,7 +47,7 @@ LD = $(CC)# must match, else "unresolved | ||
| 34 | AS = as | ||
| 35 | LOC = $(D_USE_BZ2) $(LOCAL_UNZIP) | ||
| 36 | AF = $(LOC) | ||
| 37 | -CFLAGS = -O | ||
| 38 | +CFLAGS = | ||
| 39 | CF_NOOPT = -I. -I$(IZ_BZIP2) -DUNIX $(LOC) | ||
| 40 | CF = $(CFLAGS) $(CF_NOOPT) | ||
| 41 | LFLAGS1 = | ||
| 42 | @@ -594,12 +594,12 @@ generic_shlib: unix_make | ||
| 43 | @echo\ | ||
| 44 | 'which is UnZip linked with the DLL). This target is an example only.' | ||
| 45 | @echo "" | ||
| 46 | - $(MAKE) objsdll CC=gcc CFLAGS="-O3 -Wall -fPIC -DDLL" | ||
| 47 | + $(MAKE) objsdll CC=gcc CFLAGS="-Wall -fPIC -DDLL" | ||
| 48 | gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL) | ||
| 49 | $(RM) libunzip.so.0 libunzip.so | ||
| 50 | $(LN) -s libunzip.so.0.4 libunzip.so.0 | ||
| 51 | $(LN) -s libunzip.so.0 libunzip.so | ||
| 52 | - gcc -c -O unzipstb.c | ||
| 53 | + gcc -c unzipstb.c | ||
| 54 | gcc -o unzip_shlib unzipstb.o -L. -lunzip | ||
| 55 | |||
| 56 | #---------------------------------------------------------------------------- | ||
| 57 | @@ -775,7 +775,7 @@ freebsd: unix_make | ||
| 58 | # with "echo" instead). | ||
| 59 | # | ||
| 60 | gcc: unix_make | ||
| 61 | - $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O3" LF2="" | ||
| 62 | + $(MAKE) unzips CC=gcc LD=gcc CFLAGS="" LF2="" | ||
| 63 | |||
| 64 | # Heurikon HK68 (68010), UniPlus+ System V 5.0, Green Hills C-68000 | ||
| 65 | hk68: unix_make | ||
| 66 | @@ -792,7 +792,7 @@ isc: unix_make | ||
| 67 | isc_gcc: unix_make | ||
| 68 | $(MAKE) unzips AS=gcc CC=gcc LD=gcc CRCA_O=crc_gcc$O \ | ||
| 69 | LF="-shlib $(LF)" SL="-shlib $(SL)" FL="-shlib $(FL)" LF2="" \ | ||
| 70 | - CFLAGS="-O3" LOC="-DSYSV -DASM_CRC -DNO_UID_GID -DNEED_PTEM -DNO_LCHOWN -DNO_LCHMOD $(LOC)" \ | ||
| 71 | + CFLAGS="" LOC="-DSYSV -DASM_CRC -DNO_UID_GID -DNEED_PTEM -DNO_LCHOWN -DNO_LCHMOD $(LOC)" \ | ||
| 72 | AF="-DNO_UNDERLINE -Djecxz=jcxz -DALIGNMENT='.align 16' $(AF)" | ||
| 73 | $(STRIP) $(UNZIPS) | ||
| 74 | |||
| 75 | @@ -808,7 +808,7 @@ isi: unix_make | ||
| 76 | linux: unix_make | ||
| 77 | @echo 'NOTE: use linux_noasm target for non-Intel Linux compiles.' | ||
| 78 | $(MAKE) unzips CC=gcc LD=gcc AS=gcc\ | ||
| 79 | - CFLAGS="-O3 -Wall -DASM_CRC"\ | ||
| 80 | + CFLAGS="-Wall -DASM_CRC"\ | ||
| 81 | AF="-Di386 $(AF)" CRCA_O=crc_gcc$O | ||
| 82 | # GRR: this echo is pointless; if user gets this far, no difference to install | ||
| 83 | # @echo 'Be sure to use the install_asm target rather than the install target' | ||
| 84 | @@ -818,14 +818,14 @@ linux_asm: linux | ||
| 85 | # Linux (Posix, approximately SysV): virtually any version since before 0.96, | ||
| 86 | # for any platform. Change "-O" to "-O3" or whatever, as desired... | ||
| 87 | linux_noasm: unix_make | ||
| 88 | - $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O -Wall" | ||
| 89 | + $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-Wall" | ||
| 90 | |||
| 91 | # Linux with lcc compiler: __inline__ (stat.h) not recognized, and must edit | ||
| 92 | # /usr/include/gnu/types.h to get rid of "long long" if __LCC__ defined. -O3 | ||
| 93 | # (or -O2 or -O) is ignored. [GRR 960828: test target only] | ||
| 94 | # | ||
| 95 | linux_lcc: unix_make | ||
| 96 | - $(MAKE) unzips CC=lcc LD=lcc CFLAGS="-O3 -Wall -D__inline__= " | ||
| 97 | + $(MAKE) unzips CC=lcc LD=lcc CFLAGS="-Wall -D__inline__= " | ||
| 98 | |||
| 99 | # Linux host with go32 (djgpp) cross-compiler (go32crs.tgz) for 32-bit DOS. | ||
| 100 | linux_dos: unix_make | ||
| 101 | @@ -844,7 +844,7 @@ linux_dos: unix_make | ||
| 102 | # library). | ||
| 103 | # | ||
| 104 | linux_shlib: unix_make | ||
| 105 | - $(MAKE) objsdll CC=gcc CFLAGS="-O3 -Wall -fPIC"\ | ||
| 106 | + $(MAKE) objsdll CC=gcc CFLAGS="-Wall -fPIC"\ | ||
| 107 | LOC="-DDLL -DASM_CRC $(LOC)"\ | ||
| 108 | AS=gcc AF="-fPIC -Di386 $(AF)" CRCA_O=crc_gcc$O | ||
| 109 | gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL)\ | ||
| 110 | @@ -858,7 +858,7 @@ linux_shlib: unix_make | ||
| 111 | # instead of the original UnZip version. (libz was libgz prior to 0.94) | ||
| 112 | linux_shlibz: unix_make | ||
| 113 | $(MAKE) objsdll CC=gcc AS=gcc AF="-fPIC -Di386 $(AF)" CRCA_O=crc_gcc$O\ | ||
| 114 | - CFLAGS="-O3 -Wall -fPIC" LOC="-DDLL -DUSE_ZLIB -DASM_CRC $(LOC)" | ||
| 115 | + CFLAGS="-Wall -fPIC" LOC="-DDLL -DUSE_ZLIB -DASM_CRC $(LOC)" | ||
| 116 | gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL)\ | ||
| 117 | crc_gcc.pic.o | ||
| 118 | ln -sf libunzip.so.0.4 libunzip.so.0 | ||
| 119 | @@ -871,7 +871,7 @@ lynx: unix_make | ||
| 120 | |||
| 121 | # Macintosh MacOS X (Unix-compatible enviroment), using standard compiler | ||
| 122 | macosx: unix_make | ||
| 123 | - $(MAKE) unzips CFLAGS="-O3 -Wall -DBSD" LF2="" | ||
| 124 | + $(MAKE) unzips CFLAGS="-Wall -DBSD" LF2="" | ||
| 125 | $(STRIP) $(UNZIPS) | ||
| 126 | |||
| 127 | # Macintosh MacOS X (Unix-compatible enviroment), using gcc | ||
diff --git a/meta/recipes-extended/unzip/unzip_6.0.bb b/meta/recipes-extended/unzip/unzip_6.0.bb deleted file mode 100644 index 1d22855e1c..0000000000 --- a/meta/recipes-extended/unzip/unzip_6.0.bb +++ /dev/null | |||
| @@ -1,71 +0,0 @@ | |||
| 1 | SUMMARY = "Utilities for extracting and viewing files in .zip archives" | ||
| 2 | HOMEPAGE = "http://www.info-zip.org" | ||
| 3 | DESCRIPTION = "Info-ZIP's purpose is to provide free, portable, high-quality versions of the Zip and UnZip compressor-archiver utilities that are compatible with the DOS-based PKZIP by PKWARE, Inc." | ||
| 4 | SECTION = "console/utils" | ||
| 5 | LICENSE = "Info-ZIP" | ||
| 6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=94caec5a51ef55ef711ee4e8b1c69e29" | ||
| 7 | PE = "1" | ||
| 8 | |||
| 9 | SRC_URI = "${SOURCEFORGE_MIRROR}/infozip/UnZip%206.x%20%28latest%29/UnZip%206.0/unzip60.tar.gz \ | ||
| 10 | file://avoid-strip.patch \ | ||
| 11 | file://define-ldflags.patch \ | ||
| 12 | file://06-unzip60-alt-iconv-utf8_CVE-2015-1315.patch \ | ||
| 13 | file://cve-2014-9636.patch \ | ||
| 14 | file://09-cve-2014-8139-crc-overflow.patch \ | ||
| 15 | file://10-cve-2014-8140-test-compr-eb.patch \ | ||
| 16 | file://11-cve-2014-8141-getzip64data.patch \ | ||
| 17 | file://CVE-2015-7696.patch \ | ||
| 18 | file://CVE-2015-7697.patch \ | ||
| 19 | file://fix-security-format.patch \ | ||
| 20 | file://18-cve-2014-9913-unzip-buffer-overflow.patch \ | ||
| 21 | file://19-cve-2016-9844-zipinfo-buffer-overflow.patch \ | ||
| 22 | file://symlink.patch \ | ||
| 23 | file://0001-unzip-fix-CVE-2018-1000035.patch \ | ||
| 24 | file://CVE-2018-18384.patch \ | ||
| 25 | file://CVE-2019-13232_p1.patch \ | ||
| 26 | file://CVE-2019-13232_p2.patch \ | ||
| 27 | file://CVE-2019-13232_p3.patch \ | ||
| 28 | file://unzip_optimization.patch \ | ||
| 29 | file://0001-configure-Pass-LDFLAGS-to-tests-doing-link-step.patch \ | ||
| 30 | file://CVE-2021-4217.patch \ | ||
| 31 | file://CVE-2022-0529.patch \ | ||
| 32 | file://CVE-2022-0530.patch \ | ||
| 33 | file://0001-configure-Add-correct-system-headers-and-prototypes-.patch \ | ||
| 34 | file://0001-unix-configure-fix-detection-for-cross-compilation.patch \ | ||
| 35 | file://gcc15.patch \ | ||
| 36 | " | ||
| 37 | UPSTREAM_VERSION_UNKNOWN = "1" | ||
| 38 | |||
| 39 | SRC_URI[sha256sum] = "036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37" | ||
| 40 | |||
| 41 | S = "${UNPACKDIR}/unzip60" | ||
| 42 | |||
| 43 | # Makefile uses CF_NOOPT instead of CFLAGS. We lifted the values from | ||
| 44 | # Makefile and add CFLAGS. Optimization will be overriden by unzip | ||
| 45 | # configure to be -O3. | ||
| 46 | # | ||
| 47 | EXTRA_OEMAKE = "-e MAKEFLAGS= STRIP=true LF2='' \ | ||
| 48 | 'CF_NOOPT=-I. -Ibzip2 -DUNIX ${CFLAGS}'" | ||
| 49 | |||
| 50 | export LD = "${CC}" | ||
| 51 | LD:class-native = "${CC}" | ||
| 52 | |||
| 53 | do_compile() { | ||
| 54 | oe_runmake -f unix/Makefile generic | ||
| 55 | } | ||
| 56 | |||
| 57 | do_install() { | ||
| 58 | oe_runmake -f unix/Makefile install prefix=${D}${prefix} | ||
| 59 | install -d ${D}${mandir} | ||
| 60 | mv ${D}${prefix}/man/* ${D}${mandir} | ||
| 61 | rmdir ${D}${prefix}/man/ | ||
| 62 | } | ||
| 63 | |||
| 64 | inherit update-alternatives | ||
| 65 | |||
| 66 | ALTERNATIVE_PRIORITY = "100" | ||
| 67 | |||
| 68 | ALTERNATIVE:${PN} = "unzip" | ||
| 69 | ALTERNATIVE_LINK_NAME[unzip] = "${bindir}/unzip" | ||
| 70 | |||
| 71 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta/recipes-extended/watchdog/watchdog-config.bb b/meta/recipes-extended/watchdog/watchdog-config.bb deleted file mode 100644 index 58c565bd30..0000000000 --- a/meta/recipes-extended/watchdog/watchdog-config.bb +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | SUMMARY = "Software watchdog" | ||
| 2 | DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ | ||
| 3 | working. If programs in user space are not longer executed it will reboot \ | ||
| 4 | the system." | ||
| 5 | HOMEPAGE = "http://watchdog.sourceforge.net/" | ||
| 6 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" | ||
| 7 | |||
| 8 | LICENSE = "MIT" | ||
| 9 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
| 10 | |||
| 11 | SRC_URI = " \ | ||
| 12 | file://watchdog.default \ | ||
| 13 | file://watchdog.conf \ | ||
| 14 | " | ||
| 15 | |||
| 16 | S = "${UNPACKDIR}" | ||
| 17 | |||
| 18 | # The default value is 60 seconds when null. | ||
| 19 | WATCHDOG_TIMEOUT ??= "" | ||
| 20 | |||
| 21 | do_install() { | ||
| 22 | install -Dm 0644 ${UNPACKDIR}/watchdog.default ${D}${sysconfdir}/default/watchdog | ||
| 23 | install -Dm 0644 ${UNPACKDIR}/watchdog.conf ${D}${sysconfdir}/watchdog.conf | ||
| 24 | |||
| 25 | if [ -n "${WATCHDOG_TIMEOUT}" ]; then | ||
| 26 | echo "watchdog-timeout = ${WATCHDOG_TIMEOUT}" >> ${D}/etc/watchdog.conf | ||
| 27 | fi | ||
| 28 | } | ||
| 29 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog-config/watchdog.conf b/meta/recipes-extended/watchdog/watchdog-config/watchdog.conf deleted file mode 100644 index c493d12d34..0000000000 --- a/meta/recipes-extended/watchdog/watchdog-config/watchdog.conf +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | #ping = 172.31.14.1 | ||
| 2 | #ping = 172.26.1.255 | ||
| 3 | #interface = eth0 | ||
| 4 | #file = /var/log/messages | ||
| 5 | #change = 1407 | ||
| 6 | |||
| 7 | # Uncomment to enable test. Setting one of these values to '0' disables it. | ||
| 8 | # These values will hopefully never reboot your machine during normal use | ||
| 9 | # (if your machine is really hung, the loadavg will go much higher than 25) | ||
| 10 | #max-load-1 = 24 | ||
| 11 | #max-load-5 = 18 | ||
| 12 | #max-load-15 = 12 | ||
| 13 | |||
| 14 | # Note that this is the number of pages! | ||
| 15 | # To get the real size, check how large the pagesize is on your machine. | ||
| 16 | #min-memory = 1 | ||
| 17 | |||
| 18 | #repair-binary = /usr/sbin/repair | ||
| 19 | #repair-timeout = | ||
| 20 | #test-binary = | ||
| 21 | #test-timeout = | ||
| 22 | |||
| 23 | watchdog-device = /dev/watchdog | ||
| 24 | |||
| 25 | # Defaults compiled into the binary | ||
| 26 | #temperature-device = | ||
| 27 | #max-temperature = 120 | ||
| 28 | |||
| 29 | # Defaults compiled into the binary | ||
| 30 | #admin = root | ||
| 31 | #interval = 1 | ||
| 32 | #logtick = 1 | ||
| 33 | #log-dir = /var/log/watchdog | ||
| 34 | |||
| 35 | # This greatly decreases the chance that watchdog won't be scheduled before | ||
| 36 | # your machine is really loaded | ||
| 37 | realtime = yes | ||
| 38 | priority = 1 | ||
| 39 | |||
| 40 | # Check if rsyslogd is still running by enabling the following line | ||
| 41 | #pidfile = /var/run/rsyslogd.pid | ||
| 42 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog-config/watchdog.default b/meta/recipes-extended/watchdog/watchdog-config/watchdog.default deleted file mode 100644 index cee5fdc2b6..0000000000 --- a/meta/recipes-extended/watchdog/watchdog-config/watchdog.default +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | # Start watchdog at boot time? 0 or 1 | ||
| 2 | run_watchdog=1 | ||
| 3 | watchdog_module=none | ||
diff --git a/meta/recipes-extended/watchdog/watchdog/0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch b/meta/recipes-extended/watchdog/watchdog/0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch deleted file mode 100644 index 8c419e1d11..0000000000 --- a/meta/recipes-extended/watchdog/watchdog/0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch +++ /dev/null | |||
| @@ -1,37 +0,0 @@ | |||
| 1 | From ca1d379fa13c4055d42d2ff3a647b4397768efcd Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 23 Aug 2022 19:23:26 -0700 | ||
| 4 | Subject: [PATCH] shutdown: Do not guard sys/quota.h sys/swap.h and | ||
| 5 | sys/reboot.h with __GLIBC__ | ||
| 6 | |||
| 7 | These headers are provided by uclibc/musl/glibc and bionic so we can | ||
| 8 | assume they are not needed to be glibc specific includes. This also | ||
| 9 | ensures that we get proper declaration of reboot() API | ||
| 10 | |||
| 11 | Upstream-Status: Submitted [https://sourceforge.net/p/watchdog/patches/12/] | ||
| 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 13 | --- | ||
| 14 | src/shutdown.c | 4 ---- | ||
| 15 | 1 file changed, 4 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/src/shutdown.c b/src/shutdown.c | ||
| 18 | index 1d9a857..6aea0d0 100644 | ||
| 19 | --- a/src/shutdown.c | ||
| 20 | +++ b/src/shutdown.c | ||
| 21 | @@ -29,13 +29,9 @@ | ||
| 22 | #include "extern.h" | ||
| 23 | #include "ext2_mnt.h" | ||
| 24 | |||
| 25 | -#if defined __GLIBC__ | ||
| 26 | #include <sys/quota.h> | ||
| 27 | #include <sys/swap.h> | ||
| 28 | #include <sys/reboot.h> | ||
| 29 | -#else /* __GLIBC__ */ | ||
| 30 | -#include <linux/quota.h> | ||
| 31 | -#endif /* __GLIBC__ */ | ||
| 32 | |||
| 33 | #include <unistd.h> | ||
| 34 | |||
| 35 | -- | ||
| 36 | 2.37.2 | ||
| 37 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog/0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch b/meta/recipes-extended/watchdog/watchdog/0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch deleted file mode 100644 index 075a98e5e5..0000000000 --- a/meta/recipes-extended/watchdog/watchdog/0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | From c1fe14fa5bd168292cc4670034bc48b954e9dac7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Maxin B. John" <maxin.john@intel.com> | ||
| 3 | Date: Tue, 13 Mar 2018 14:49:55 +0200 | ||
| 4 | Subject: [PATCH] watchdog: remove interdependencies of watchdog and | ||
| 5 | wd_keepalive services | ||
| 6 | |||
| 7 | Since watchdog and watchdog-keepalive packages can't be installed | ||
| 8 | together, remove the inter-dependencies of watchdog and wd_keepalive | ||
| 9 | services | ||
| 10 | |||
| 11 | Upstream-Status: Inappropriate [oe specific] | ||
| 12 | |||
| 13 | Signed-off-by: Maxin B. John <maxin.john@intel.com> | ||
| 14 | --- | ||
| 15 | debian/watchdog.service | 9 +++------ | ||
| 16 | debian/wd_keepalive.service | 10 +++++----- | ||
| 17 | 2 files changed, 8 insertions(+), 11 deletions(-) | ||
| 18 | |||
| 19 | diff --git a/debian/watchdog.service b/debian/watchdog.service | ||
| 20 | index 7a2fc36..f31d1fe 100644 | ||
| 21 | --- a/debian/watchdog.service | ||
| 22 | +++ b/debian/watchdog.service | ||
| 23 | @@ -1,16 +1,13 @@ | ||
| 24 | [Unit] | ||
| 25 | Description=watchdog daemon | ||
| 26 | -Conflicts=wd_keepalive.service | ||
| 27 | After=multi-user.target | ||
| 28 | -OnFailure=wd_keepalive.service | ||
| 29 | |||
| 30 | [Service] | ||
| 31 | Type=forking | ||
| 32 | EnvironmentFile=/etc/default/watchdog | ||
| 33 | ExecStartPre=/bin/sh -c '[ -z "${watchdog_module}" ] || [ "${watchdog_module}" = "none" ] || /sbin/modprobe $watchdog_module' | ||
| 34 | -ExecStart=/bin/sh -c '[ $run_watchdog != 1 ] || exec /usr/sbin/watchdog $watchdog_options' | ||
| 35 | -ExecStopPost=/bin/sh -c '[ $run_wd_keepalive != 1 ] || false' | ||
| 36 | +ExecStart=/bin/sh -c '[ x$run_watchdog != x1 ] || exec /usr/sbin/watchdog $watchdog_options' | ||
| 37 | +PIDFile=/run/watchdog.pid | ||
| 38 | |||
| 39 | [Install] | ||
| 40 | -WantedBy=default.target | ||
| 41 | - | ||
| 42 | +WantedBy=multi-user.target | ||
| 43 | diff --git a/debian/wd_keepalive.service b/debian/wd_keepalive.service | ||
| 44 | index 45b018e..7f8b1dc 100644 | ||
| 45 | --- a/debian/wd_keepalive.service | ||
| 46 | +++ b/debian/wd_keepalive.service | ||
| 47 | @@ -1,13 +1,13 @@ | ||
| 48 | [Unit] | ||
| 49 | Description=watchdog keepalive daemon | ||
| 50 | -Before=watchdog.service shutdown.target | ||
| 51 | -Conflicts=watchdog.service shutdown.target | ||
| 52 | +After=multi-user.target | ||
| 53 | |||
| 54 | [Service] | ||
| 55 | Type=forking | ||
| 56 | EnvironmentFile=/etc/default/watchdog | ||
| 57 | ExecStartPre=/bin/sh -c '[ -z "${watchdog_module}" ] || [ "${watchdog_module}" = "none" ] || /sbin/modprobe $watchdog_module' | ||
| 58 | -ExecStartPre=-/bin/systemctl reset-failed watchdog.service | ||
| 59 | ExecStart=/usr/sbin/wd_keepalive $watchdog_options | ||
| 60 | -ExecStartPost=/bin/sh -c 'ln -s /var/run/wd_keepalive.pid /run/sendsigs.omit.d/wd_keepalive.pid' | ||
| 61 | -ExecStopPost=/bin/sh -c 'rm -f /run/sendsigs.omit.d/wd_keepalive.pid' | ||
| 62 | +PIDFile=/var/run/wd_keepalive.pid | ||
| 63 | + | ||
| 64 | +[Install] | ||
| 65 | +WantedBy=multi-user.target | ||
| 66 | -- | ||
| 67 | 2.4.0 | ||
| 68 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog/0001-wd_keepalive.service-use-run-instead-of-var-run.patch b/meta/recipes-extended/watchdog/watchdog/0001-wd_keepalive.service-use-run-instead-of-var-run.patch deleted file mode 100644 index 5c5d2f4e44..0000000000 --- a/meta/recipes-extended/watchdog/watchdog/0001-wd_keepalive.service-use-run-instead-of-var-run.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From b5cb6166dbfa57d1d94b19d4a098991a817f68f5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Thu, 15 Oct 2020 10:02:17 +0800 | ||
| 4 | Subject: [PATCH] wd_keepalive.service: use /run instead of /var/run | ||
| 5 | |||
| 6 | /var/run is deprecated by systemd, use /run instead. | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | |||
| 10 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 11 | --- | ||
| 12 | debian/wd_keepalive.service | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | diff --git a/debian/wd_keepalive.service b/debian/wd_keepalive.service | ||
| 16 | index 7f8b1dc..0f2a153 100644 | ||
| 17 | --- a/debian/wd_keepalive.service | ||
| 18 | +++ b/debian/wd_keepalive.service | ||
| 19 | @@ -7,7 +7,7 @@ Type=forking | ||
| 20 | EnvironmentFile=/etc/default/watchdog | ||
| 21 | ExecStartPre=/bin/sh -c '[ -z "${watchdog_module}" ] || [ "${watchdog_module}" = "none" ] || /sbin/modprobe $watchdog_module' | ||
| 22 | ExecStart=/usr/sbin/wd_keepalive $watchdog_options | ||
| 23 | -PIDFile=/var/run/wd_keepalive.pid | ||
| 24 | +PIDFile=/run/wd_keepalive.pid | ||
| 25 | |||
| 26 | [Install] | ||
| 27 | WantedBy=multi-user.target | ||
| 28 | -- | ||
| 29 | 2.17.1 | ||
| 30 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog/watchdog.init b/meta/recipes-extended/watchdog/watchdog/watchdog.init deleted file mode 100644 index d37107cf0e..0000000000 --- a/meta/recipes-extended/watchdog/watchdog/watchdog.init +++ /dev/null | |||
| @@ -1,110 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | #/etc/init.d/watchdog: start watchdog daemon. | ||
| 3 | |||
| 4 | ### BEGIN INIT INFO | ||
| 5 | # Provides: watchdog | ||
| 6 | # Short-Description: Start software watchdog daemon | ||
| 7 | # Required-Start: $all | ||
| 8 | # Required-Stop: $all | ||
| 9 | # Should-Start: | ||
| 10 | # Should-Stop: | ||
| 11 | # Default-Start: 2 3 4 5 | ||
| 12 | # Default-Stop: 0 1 6 | ||
| 13 | ### END INIT INFO | ||
| 14 | |||
| 15 | PATH=/bin:/usr/bin:/sbin:/usr/sbin | ||
| 16 | |||
| 17 | test -x /usr/sbin/watchdog || exit 0 | ||
| 18 | |||
| 19 | # For configuration of the init script use the file | ||
| 20 | # /etc/default/watchdog, do not edit this init script. | ||
| 21 | |||
| 22 | # Set run_watchdog to 1 to start watchdog or 0 to disable it. | ||
| 23 | run_watchdog=0 | ||
| 24 | |||
| 25 | # Specify additional watchdog options here (see manpage). | ||
| 26 | watchdog_options="" | ||
| 27 | |||
| 28 | # Specify module to load | ||
| 29 | watchdog_module="none" | ||
| 30 | |||
| 31 | [ -e /etc/default/watchdog ] && . /etc/default/watchdog | ||
| 32 | |||
| 33 | NAME=watchdog | ||
| 34 | DAEMON=/usr/sbin/watchdog | ||
| 35 | |||
| 36 | STOP_RETRY_SCHEDULE='TERM/10/forever/KILL/1' | ||
| 37 | |||
| 38 | . /etc/init.d/functions | ||
| 39 | |||
| 40 | # Mock Debian stuff | ||
| 41 | log_begin_msg() { | ||
| 42 | echo -n $* | ||
| 43 | } | ||
| 44 | |||
| 45 | log_end_msg() { | ||
| 46 | if [ "$1" = "0" ]; then | ||
| 47 | echo 'done' | ||
| 48 | else | ||
| 49 | echo 'error' | ||
| 50 | fi | ||
| 51 | } | ||
| 52 | |||
| 53 | log_daemon_msg() { | ||
| 54 | echo $* | ||
| 55 | } | ||
| 56 | |||
| 57 | log_progress_msg() { | ||
| 58 | echo $* | ||
| 59 | } | ||
| 60 | |||
| 61 | case "$1" in | ||
| 62 | start) | ||
| 63 | if [ $run_watchdog = 1 ] | ||
| 64 | then | ||
| 65 | # do we have to load a module? | ||
| 66 | [ "${watchdog_module:-none}" != "none" ] && /sbin/modprobe $watchdog_module | ||
| 67 | |||
| 68 | # Check /dev/watchdog here because if it does not exist after module loading, | ||
| 69 | # it makes no sense to start the daemon | ||
| 70 | test -e /dev/watchdog || { log_daemon_msg "daemon not start due to lack of /dev/watchdog"; exit 0; } | ||
| 71 | |||
| 72 | log_begin_msg "Starting watchdog daemon..." | ||
| 73 | start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ | ||
| 74 | --exec $DAEMON -- $watchdog_options | ||
| 75 | log_end_msg $? | ||
| 76 | fi | ||
| 77 | ;; | ||
| 78 | |||
| 79 | stop) | ||
| 80 | if [ $run_watchdog = 1 ] | ||
| 81 | then | ||
| 82 | log_begin_msg "Stopping watchdog daemon..." | ||
| 83 | start-stop-daemon --stop --quiet --retry $STOP_RETRY_SCHEDULE \ | ||
| 84 | --pidfile /var/run/$NAME.pid | ||
| 85 | |||
| 86 | fi | ||
| 87 | ;; | ||
| 88 | |||
| 89 | restart) | ||
| 90 | $0 force-reload | ||
| 91 | ;; | ||
| 92 | |||
| 93 | force-reload) | ||
| 94 | if [ $run_watchdog = 0 ]; then exit 0; fi | ||
| 95 | log_daemon_msg "Restarting $NAME" | ||
| 96 | $0 stop | ||
| 97 | $0 start | ||
| 98 | ;; | ||
| 99 | |||
| 100 | status) | ||
| 101 | status "$DAEMON" | ||
| 102 | ;; | ||
| 103 | |||
| 104 | *) | ||
| 105 | echo "Usage: /etc/init.d/watchdog {start|stop|restart|force-reload|status}" | ||
| 106 | exit 1 | ||
| 107 | |||
| 108 | esac | ||
| 109 | |||
| 110 | exit 0 | ||
diff --git a/meta/recipes-extended/watchdog/watchdog/wd_keepalive.init b/meta/recipes-extended/watchdog/watchdog/wd_keepalive.init deleted file mode 100644 index 1d3e4c5558..0000000000 --- a/meta/recipes-extended/watchdog/watchdog/wd_keepalive.init +++ /dev/null | |||
| @@ -1,121 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | #/etc/init.d/wd_keepalive: start wd_keepalive daemon. | ||
| 3 | |||
| 4 | ### BEGIN INIT INFO | ||
| 5 | # Provides: wd_keepalive | ||
| 6 | # Short-Description: Start watchdog keepalive daemon | ||
| 7 | # Required-Start: $remote_fs | ||
| 8 | # Required-Stop: $remote_fs | ||
| 9 | # X-Start-Before: $all | ||
| 10 | # Default-Start: 2 3 4 5 | ||
| 11 | # Default-Stop | ||
| 12 | ### END INIT INFO | ||
| 13 | |||
| 14 | PATH=/bin:/usr/bin:/sbin:/usr/sbin | ||
| 15 | |||
| 16 | test -x /usr/sbin/wd_keepalive || exit 0 | ||
| 17 | |||
| 18 | # For configuration of the init script use the file | ||
| 19 | # /etc/default/watchdog, do not edit this init script. | ||
| 20 | |||
| 21 | # Set run_watchdog to 1 to start watchdog or 0 to disable it. | ||
| 22 | run_watchdog=0 | ||
| 23 | |||
| 24 | # Specify additional watchdog options here (see manpage). | ||
| 25 | watchdog_options="" | ||
| 26 | |||
| 27 | # Specify module to load | ||
| 28 | watchdog_module="none" | ||
| 29 | |||
| 30 | [ -e /etc/default/watchdog ] && . /etc/default/watchdog | ||
| 31 | |||
| 32 | NAME=wd_keepalive | ||
| 33 | DAEMON=/usr/sbin/wd_keepalive | ||
| 34 | |||
| 35 | STOP_RETRY_SCHEDULE='TERM/10/forever/KILL/1' | ||
| 36 | |||
| 37 | # . /lib/lsb/init-functions | ||
| 38 | |||
| 39 | # Mock Debian stuff | ||
| 40 | log_begin_msg() { | ||
| 41 | echo -n $* | ||
| 42 | } | ||
| 43 | |||
| 44 | log_end_msg() { | ||
| 45 | if [ "$1" = "0" ]; then | ||
| 46 | echo 'done' | ||
| 47 | else | ||
| 48 | echo 'error' | ||
| 49 | fi | ||
| 50 | } | ||
| 51 | |||
| 52 | log_daemon_msg() { | ||
| 53 | echo $* | ||
| 54 | } | ||
| 55 | |||
| 56 | log_progress_msg() { | ||
| 57 | echo $* | ||
| 58 | } | ||
| 59 | |||
| 60 | |||
| 61 | case "$1" in | ||
| 62 | start) | ||
| 63 | if [ $run_watchdog = 1 ] | ||
| 64 | then | ||
| 65 | [ ${watchdog_module:-none} != "none" ] && /sbin/modprobe $watchdog_module | ||
| 66 | echo -n "Starting watchdog keepalive daemon: " | ||
| 67 | if start-stop-daemon --start --quiet \ | ||
| 68 | --exec $DAEMON -- $watchdog_options | ||
| 69 | then | ||
| 70 | echo wd_keepalive. | ||
| 71 | else | ||
| 72 | echo | ||
| 73 | fi | ||
| 74 | fi | ||
| 75 | ;; | ||
| 76 | |||
| 77 | stop) | ||
| 78 | if [ $run_watchdog = 1 ] | ||
| 79 | then | ||
| 80 | echo -n "Stopping watchdog keepalive daemon: " | ||
| 81 | if start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ | ||
| 82 | $STOP_RETRY_SCHEDULE | ||
| 83 | then | ||
| 84 | echo wd_keepalive. | ||
| 85 | else | ||
| 86 | echo | ||
| 87 | fi | ||
| 88 | fi | ||
| 89 | ;; | ||
| 90 | |||
| 91 | status) | ||
| 92 | status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? | ||
| 93 | ;; | ||
| 94 | |||
| 95 | restart) | ||
| 96 | $0 force-reload | ||
| 97 | ;; | ||
| 98 | |||
| 99 | force-reload) | ||
| 100 | if [ $run_watchdog = 0 ]; then exit 0; fi | ||
| 101 | echo -n "Restarting $NAME daemon." | ||
| 102 | start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ | ||
| 103 | $STOP_RETRY_SCHEDULE | ||
| 104 | echo -n "." | ||
| 105 | if start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ | ||
| 106 | --exec $DAEMON -- $watchdog_options | ||
| 107 | then | ||
| 108 | echo "done." | ||
| 109 | else | ||
| 110 | echo | ||
| 111 | fi | ||
| 112 | ;; | ||
| 113 | |||
| 114 | *) | ||
| 115 | echo "Usage: /etc/init.d/wd_keepalive {start|stop|status|restart|force-reload}" | ||
| 116 | exit 1 | ||
| 117 | |||
| 118 | esac | ||
| 119 | |||
| 120 | exit 0 | ||
| 121 | |||
diff --git a/meta/recipes-extended/watchdog/watchdog_5.16.bb b/meta/recipes-extended/watchdog/watchdog_5.16.bb deleted file mode 100644 index c166ace665..0000000000 --- a/meta/recipes-extended/watchdog/watchdog_5.16.bb +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | SUMMARY = "Software watchdog" | ||
| 2 | DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ | ||
| 3 | working. If programs in user space are not longer executed \ | ||
| 4 | it will reboot the system." | ||
| 5 | HOMEPAGE = "http://watchdog.sourceforge.net/" | ||
| 6 | BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" | ||
| 7 | |||
| 8 | LICENSE = "GPL-2.0-or-later" | ||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=084236108b1d4a9851bf5213fea586fd" | ||
| 10 | |||
| 11 | SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \ | ||
| 12 | file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \ | ||
| 13 | file://watchdog.init \ | ||
| 14 | file://wd_keepalive.init \ | ||
| 15 | file://0001-wd_keepalive.service-use-run-instead-of-var-run.patch \ | ||
| 16 | file://0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch \ | ||
| 17 | " | ||
| 18 | |||
| 19 | SRC_URI[sha256sum] = "b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a3b019d" | ||
| 20 | |||
| 21 | # Can be dropped when the output next changes, avoids failures after | ||
| 22 | # reproducibility issues | ||
| 23 | |||
| 24 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" | ||
| 25 | UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/" | ||
| 26 | |||
| 27 | inherit autotools update-rc.d systemd pkgconfig | ||
| 28 | |||
| 29 | EXTRA_OECONF += " --disable-nfs " | ||
| 30 | CACHED_CONFIGUREVARS += "ac_cv_path_PATH_SENDMAIL=${sbindir}/sendmail" | ||
| 31 | |||
| 32 | INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive" | ||
| 33 | |||
| 34 | INITSCRIPT_NAME:${PN} = "watchdog" | ||
| 35 | INITSCRIPT_PARAMS:${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ." | ||
| 36 | |||
| 37 | INITSCRIPT_NAME:${PN}-keepalive = "wd_keepalive" | ||
| 38 | INITSCRIPT_PARAMS:${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ." | ||
| 39 | |||
| 40 | SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive" | ||
| 41 | SYSTEMD_SERVICE:${PN} = "watchdog.service" | ||
| 42 | SYSTEMD_SERVICE:${PN}-keepalive = "wd_keepalive.service" | ||
| 43 | # When using systemd, consider making use of internal watchdog support of systemd. | ||
| 44 | # See RuntimeWatchdogSec in /etc/systemd/system.conf. | ||
| 45 | SYSTEMD_AUTO_ENABLE = "disable" | ||
| 46 | |||
| 47 | do_install:append() { | ||
| 48 | install -d ${D}${systemd_system_unitdir} | ||
| 49 | install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir} | ||
| 50 | install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir} | ||
| 51 | |||
| 52 | install -Dm 0755 ${UNPACKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog | ||
| 53 | install -Dm 0755 ${UNPACKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive | ||
| 54 | |||
| 55 | # watchdog.conf is provided by the watchdog-config recipe | ||
| 56 | rm ${D}${sysconfdir}/watchdog.conf | ||
| 57 | } | ||
| 58 | |||
| 59 | PACKAGES =+ "${PN}-keepalive" | ||
| 60 | |||
| 61 | FILES:${PN}-keepalive = " \ | ||
| 62 | ${sysconfdir}/init.d/wd_keepalive \ | ||
| 63 | ${systemd_system_unitdir}/wd_keepalive.service \ | ||
| 64 | ${sbindir}/wd_keepalive \ | ||
| 65 | " | ||
| 66 | |||
| 67 | RDEPENDS:${PN} += "${PN}-config" | ||
| 68 | RRECOMMENDS:${PN} += "kernel-module-softdog" | ||
| 69 | |||
| 70 | RDEPENDS:${PN}-keepalive += "${PN}-config" | ||
| 71 | RCONFLICTS:${PN}-keepalive += "${PN}" | ||
| 72 | RRECOMMENDS:${PN}-keepalive += "kernel-module-softdog" | ||
diff --git a/meta/recipes-extended/wget/wget.inc b/meta/recipes-extended/wget/wget.inc deleted file mode 100644 index 13cf879067..0000000000 --- a/meta/recipes-extended/wget/wget.inc +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | SUMMARY = "Console URL download utility supporting HTTP, FTP, etc" | ||
| 2 | DESCRIPTION = "Wget is a network utility to retrieve files from the web using \ | ||
| 3 | HTTP(S) and FTP, the two most widely used internet protocols. It works \ | ||
| 4 | non-interactively, so it will work in the background, after having logged off. \ | ||
| 5 | The program supports recursive retrieval of web-authoring pages as well as \ | ||
| 6 | FTP sites" | ||
| 7 | HOMEPAGE = "https://www.gnu.org/software/wget/" | ||
| 8 | SECTION = "console/network" | ||
| 9 | LICENSE = "GPL-3.0-only" | ||
| 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=6f65012d1daf98cb09b386cfb68df26b" | ||
| 11 | |||
| 12 | inherit autotools gettext texinfo update-alternatives pkgconfig | ||
| 13 | |||
| 14 | DEPENDS += "autoconf-archive-native" | ||
| 15 | |||
| 16 | EXTRA_OECONF = "--without-libgnutls-prefix --without-libssl-prefix \ | ||
| 17 | --disable-rpath" | ||
| 18 | |||
| 19 | EXTRA_OEMAKE += 'TOOLCHAIN_OPTIONS="${TOOLCHAIN_OPTIONS}" \ | ||
| 20 | DEBUG_PREFIX_MAP="${DEBUG_PREFIX_MAP}"' | ||
| 21 | |||
| 22 | ALTERNATIVE:${PN} = "wget" | ||
| 23 | ALTERNATIVE:${PN}:class-nativesdk = "" | ||
| 24 | ALTERNATIVE_PRIORITY = "100" | ||
| 25 | |||
| 26 | RRECOMMENDS:${PN} += "ca-certificates" | ||
| 27 | |||
| 28 | BBCLASSEXTEND = "nativesdk" | ||
| 29 | |||
| 30 | PACKAGECONFIG ??= "gnutls pcre2 zlib \ | ||
| 31 | ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" | ||
| 32 | PACKAGECONFIG[ares] = "--with-cares,--without-cares,c-ares" | ||
| 33 | PACKAGECONFIG[gnutls] = "--with-ssl=gnutls,,gnutls" | ||
| 34 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," | ||
| 35 | PACKAGECONFIG[iri] = "--enable-iri,--disable-iri,libidn2" | ||
| 36 | PACKAGECONFIG[libpsl] = "--with-libpsl,--without-libpsl,libpsl" | ||
| 37 | PACKAGECONFIG[libuuid] = "--with-libuuid,--without-libuuid,util-linux" | ||
| 38 | PACKAGECONFIG[openssl] = "--with-ssl=openssl,,openssl" | ||
| 39 | PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre" | ||
| 40 | PACKAGECONFIG[pcre2] = "--enable-pcre2,--disable-pcre2,libpcre2" | ||
| 41 | PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" | ||
diff --git a/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch b/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch deleted file mode 100644 index 6ecb9ef289..0000000000 --- a/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch +++ /dev/null | |||
| @@ -1,63 +0,0 @@ | |||
| 1 | From 304f55a3e2689154d829938d29e43d808ca6298a Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 3 | Date: Wed, 10 Jan 2018 14:43:20 +0800 | ||
| 4 | Subject: [PATCH] src/Makefile.am: improve reproducibility | ||
| 5 | |||
| 6 | Remove build host references from the internally | ||
| 7 | generated file version.c. The references get compiled into | ||
| 8 | executables, which leads to non-reproducible builds. | ||
| 9 | The removed references (--sysroot, -fdebug-prefix-map) were | ||
| 10 | only used as part of the `wget --version' which do not have | ||
| 11 | side effect. | ||
| 12 | |||
| 13 | ... | ||
| 14 | $ wget --version | ||
| 15 | GNU Wget 1.14 built on linux-gnu. | ||
| 16 | |||
| 17 | +digest +https +ipv6 +iri +large-file +nls +ntlm +opie +ssl/openssl | ||
| 18 | |||
| 19 | Wgetrc: | ||
| 20 | /etc/wgetrc (system) | ||
| 21 | Locale: /usr/share/locale | ||
| 22 | Compile: gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/etc/wgetrc" | ||
| 23 | -DLOCALEDIR="/usr/share/locale" -I. -I../lib -I../lib -O2 -g -pipe | ||
| 24 | -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong | ||
| 25 | --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic | ||
| 26 | Link: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions | ||
| 27 | -fstack-protector-strong --param=ssp-buffer-size=4 | ||
| 28 | -grecord-gcc-switches -m64 -mtune=generic -lssl -lcrypto | ||
| 29 | /usr/lib64/libssl.so /usr/lib64/libcrypto.so /usr/lib64/libz.so | ||
| 30 | -ldl -lz -lz -lidn -luuid -lpcre ftp-opie.o openssl.o http-ntlm.o | ||
| 31 | ../lib/libgnu.a | ||
| 32 | ... | ||
| 33 | |||
| 34 | Upstream-Status: Inappropriate [oe-core specific] | ||
| 35 | |||
| 36 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
| 37 | |||
| 38 | sed use of DEBUG_PREFIX_MAP must treat whitespace the same as the | ||
| 39 | echo command building version.c or the expression match will fail. | ||
| 40 | |||
| 41 | Signed-off-by: Joe Slater <jslater@windriver.com> | ||
| 42 | --- | ||
| 43 | src/Makefile.am | 4 ++++ | ||
| 44 | 1 file changed, 4 insertions(+) | ||
| 45 | |||
| 46 | diff --git a/src/Makefile.am b/src/Makefile.am | ||
| 47 | index 86be533..721a401 100644 | ||
| 48 | --- a/src/Makefile.am | ||
| 49 | +++ b/src/Makefile.am | ||
| 50 | @@ -126,9 +126,13 @@ version.c: $(wget_SOURCES) ../lib/libgnu.a | ||
| 51 | echo '#include "version.h"' >> $@ | ||
| 52 | echo 'const char *version_string = "@VERSION@";' >> $@ | ||
| 53 | echo 'const char *compilation_string = "'$(COMPILE)'";' \ | ||
| 54 | + | sed -e "s,$(TOOLCHAIN_OPTIONS),,g" \ | ||
| 55 | + -e "s,$$(echo $(DEBUG_PREFIX_MAP)),,g" \ | ||
| 56 | | $(ESCAPEQUOTE) >> $@ | ||
| 57 | echo 'const char *link_string = "'$(CCLD) $(AM_CFLAGS) $(CFLAGS) \ | ||
| 58 | $(AM_LDFLAGS) $(LDFLAGS) $(LIBS) $(wget_LDADD)'";' \ | ||
| 59 | + | sed -e "s,$(TOOLCHAIN_OPTIONS),,g" \ | ||
| 60 | + -e "s,$$(echo $(DEBUG_PREFIX_MAP)),,g" \ | ||
| 61 | | $(ESCAPEQUOTE) >> $@ | ||
| 62 | |||
| 63 | css.c: $(srcdir)/css.l | ||
diff --git a/meta/recipes-extended/wget/wget_1.25.0.bb b/meta/recipes-extended/wget/wget_1.25.0.bb deleted file mode 100644 index 93fefc9092..0000000000 --- a/meta/recipes-extended/wget/wget_1.25.0.bb +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ | ||
| 2 | file://0002-improve-reproducibility.patch \ | ||
| 3 | " | ||
| 4 | |||
| 5 | SRC_URI[sha256sum] = "766e48423e79359ea31e41db9e5c289675947a7fcf2efdcedb726ac9d0da3784" | ||
| 6 | |||
| 7 | require wget.inc | ||
diff --git a/meta/recipes-extended/which/which-2.23/0001-getopt-Fix-signature-of-getenv-function.patch b/meta/recipes-extended/which/which-2.23/0001-getopt-Fix-signature-of-getenv-function.patch deleted file mode 100644 index c54368a084..0000000000 --- a/meta/recipes-extended/which/which-2.23/0001-getopt-Fix-signature-of-getenv-function.patch +++ /dev/null | |||
| @@ -1,44 +0,0 @@ | |||
| 1 | From 83d2ed3fd203868a8f287d2ebedc7c304c74fbb4 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sat, 22 Mar 2025 17:56:19 -0700 | ||
| 4 | Subject: [PATCH] getopt: Fix signature of getenv function | ||
| 5 | |||
| 6 | This happens on musl systems using GCC 15 | ||
| 7 | |||
| 8 | ../which-2.21/getopt.h:106:12: error: conflicting types for 'getopt'; have 'int(void)' | ||
| 9 | 106 | extern int getopt (); | ||
| 10 | | ^~~~~~ | ||
| 11 | |||
| 12 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/which-bugs/2025-03/msg00000.html] | ||
| 13 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 14 | --- | ||
| 15 | getopt.c | 2 +- | ||
| 16 | getopt.h | 2 +- | ||
| 17 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
| 18 | |||
| 19 | diff --git a/getopt.c b/getopt.c | ||
| 20 | index 9ac2ed6..b1aa322 100644 | ||
| 21 | --- a/getopt.c | ||
| 22 | +++ b/getopt.c | ||
| 23 | @@ -205,7 +205,7 @@ static char *posixly_correct; | ||
| 24 | /* Avoid depending on library functions or files | ||
| 25 | whose names are inconsistent. */ | ||
| 26 | |||
| 27 | -char *getenv(); | ||
| 28 | +char *getenv (const char*); | ||
| 29 | |||
| 30 | static char *my_index(str, chr) const char *str; | ||
| 31 | int chr; | ||
| 32 | diff --git a/getopt.h b/getopt.h | ||
| 33 | index f080053..e04e3ca 100644 | ||
| 34 | --- a/getopt.h | ||
| 35 | +++ b/getopt.h | ||
| 36 | @@ -102,7 +102,7 @@ struct option { | ||
| 37 | errors, only prototype getopt for the GNU C library. */ | ||
| 38 | extern int getopt(int argc, char *const *argv, const char *shortopts); | ||
| 39 | #else /* not __GNU_LIBRARY__ */ | ||
| 40 | -extern int getopt(); | ||
| 41 | +extern int getopt (int, char * const [], const char *); | ||
| 42 | #endif /* __GNU_LIBRARY__ */ | ||
| 43 | extern int getopt_long(int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind); | ||
| 44 | extern int getopt_long_only(int argc, char *const *argv, const char *shortopts, const struct option *longopts, | ||
diff --git a/meta/recipes-extended/which/which-2.23/meson.build b/meta/recipes-extended/which/which-2.23/meson.build deleted file mode 100644 index 045dfceb66..0000000000 --- a/meta/recipes-extended/which/which-2.23/meson.build +++ /dev/null | |||
| @@ -1,92 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Copyright OpenEmbedded Contributors | ||
| 3 | # | ||
| 4 | # SPDX-License-Identifier: MIT | ||
| 5 | # | ||
| 6 | project('which', 'c', version: '2.23') | ||
| 7 | |||
| 8 | add_project_arguments('-DHAVE_CONFIG_H', language : 'c') | ||
| 9 | |||
| 10 | src = ['bash.c','getopt1.c','getopt.c','tilde.c','which.c'] | ||
| 11 | |||
| 12 | executable('which', src, install: true) | ||
| 13 | install_man('which.1') | ||
| 14 | |||
| 15 | conf_data = configuration_data() | ||
| 16 | |||
| 17 | conf_data.set('GETGROUPS_T', 'gid_t') | ||
| 18 | |||
| 19 | compiler = meson.get_compiler('c') | ||
| 20 | if compiler.has_function('strchr') | ||
| 21 | conf_data.set('HAVE_STRCHR', 1) | ||
| 22 | endif | ||
| 23 | if compiler.has_function('memcpy') | ||
| 24 | conf_data.set('HAVE_MEMCPY', 1) | ||
| 25 | endif | ||
| 26 | if compiler.has_function('getopt_long') | ||
| 27 | conf_data.set('HAVE_GETOPT_LONG', 1) | ||
| 28 | endif | ||
| 29 | if compiler.has_function('getcwd') | ||
| 30 | conf_data.set('HAVE_GETCWD', 1) | ||
| 31 | endif | ||
| 32 | if compiler.has_function('getwd') | ||
| 33 | conf_data.set('HAVE_GETWD', 1) | ||
| 34 | endif | ||
| 35 | if compiler.has_function('sysconf') | ||
| 36 | conf_data.set('HAVE_SYSCONF', 1) | ||
| 37 | endif | ||
| 38 | if compiler.has_function('getgroups') | ||
| 39 | conf_data.set('HAVE_GETGROUPS', 1) | ||
| 40 | endif | ||
| 41 | if compiler.has_function('eaccess') | ||
| 42 | conf_data.set('HAVE_EACCESS', 1) | ||
| 43 | endif | ||
| 44 | if compiler.has_function('getpwent') | ||
| 45 | conf_data.set('HAVE_GETPWENT', 1) | ||
| 46 | endif | ||
| 47 | if compiler.has_function('getpwnam') | ||
| 48 | conf_data.set('HAVE_GETPWNAM', 1) | ||
| 49 | endif | ||
| 50 | if compiler.has_function('getpwuid') | ||
| 51 | conf_data.set('HAVE_GETPWUID', 1) | ||
| 52 | conf_data.set('HAVE_GETPW_DECLS', 1) | ||
| 53 | endif | ||
| 54 | |||
| 55 | if compiler.has_header('unistd.h') | ||
| 56 | conf_data.set('HAVE_UNISTD_H', 1) | ||
| 57 | endif | ||
| 58 | if compiler.has_header('string.h') | ||
| 59 | conf_data.set('HAVE_STRING_H', 1) | ||
| 60 | endif | ||
| 61 | if compiler.has_header('stdlib.h') | ||
| 62 | conf_data.set('HAVE_STDLIB_H', 1) | ||
| 63 | endif | ||
| 64 | if compiler.has_header('memory.h') | ||
| 65 | conf_data.set('HAVE_MEMORY_H', 1) | ||
| 66 | endif | ||
| 67 | if compiler.has_header('pwd.h') | ||
| 68 | conf_data.set('HAVE_PWD_H', 1) | ||
| 69 | endif | ||
| 70 | if compiler.has_header('strings.h') | ||
| 71 | conf_data.set('HAVE_STRINGS_H', 1) | ||
| 72 | endif | ||
| 73 | if compiler.has_header('inttypes.h') | ||
| 74 | conf_data.set('HAVE_INTTYPES_H', 1) | ||
| 75 | endif | ||
| 76 | if compiler.has_header('stdio.h') | ||
| 77 | conf_data.set('HAVE_STDIO_H', 1) | ||
| 78 | endif | ||
| 79 | if compiler.has_header('stdint.h') | ||
| 80 | conf_data.set('HAVE_STDINT_H', 1) | ||
| 81 | endif | ||
| 82 | if compiler.has_header('sys/stat.h') | ||
| 83 | conf_data.set('HAVE_SYS_STAT_H', 1) | ||
| 84 | endif | ||
| 85 | if compiler.has_header('sys/types.h') | ||
| 86 | conf_data.set('HAVE_SYS_TYPES_H', 1) | ||
| 87 | endif | ||
| 88 | conf_data.set('NEED_XMALLOC', 1) | ||
| 89 | conf_data.set('STDC_HEADERS', 1) | ||
| 90 | conf_data.set('VERSION', '"' + meson.project_version() + '"') | ||
| 91 | |||
| 92 | configure_file(output: 'config.h', configuration: conf_data) | ||
diff --git a/meta/recipes-extended/which/which_2.23.bb b/meta/recipes-extended/which/which_2.23.bb deleted file mode 100644 index 0bbc3510d8..0000000000 --- a/meta/recipes-extended/which/which_2.23.bb +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | SUMMARY = "Displays the full path of shell commands" | ||
| 2 | DESCRIPTION = "Which is a utility that prints out the full path of the \ | ||
| 3 | executables that bash(1) would execute when the passed \ | ||
| 4 | program names would have been entered on the shell prompt. \ | ||
| 5 | It does this by using the exact same algorithm as bash." | ||
| 6 | SECTION = "libs" | ||
| 7 | HOMEPAGE = "https://carlowood.github.io/which/" | ||
| 8 | |||
| 9 | LICENSE = "GPL-3.0-or-later" | ||
| 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\ | ||
| 11 | file://which.c;beginline=1;endline=17;md5=a9963693af2272e7a8df6f231164e7a2" | ||
| 12 | |||
| 13 | inherit meson update-alternatives | ||
| 14 | |||
| 15 | SRC_URI = "${GNU_MIRROR}/which/which-${PV}.tar.gz \ | ||
| 16 | file://meson.build \ | ||
| 17 | file://0001-getopt-Fix-signature-of-getenv-function.patch \ | ||
| 18 | " | ||
| 19 | |||
| 20 | SRC_URI[sha256sum] = "a2c558226fc4d9e4ce331bd2fd3c3f17f955115d2c00e447618a4ef9978a2a73" | ||
| 21 | |||
| 22 | do_configure:prepend() { | ||
| 23 | cp ${UNPACKDIR}/meson.build ${S} | ||
| 24 | } | ||
| 25 | |||
| 26 | ALTERNATIVE:${PN} = "which" | ||
| 27 | ALTERNATIVE_PRIORITY = "100" | ||
| 28 | |||
| 29 | ALTERNATIVE:${PN}-doc = "which.1" | ||
| 30 | ALTERNATIVE_LINK_NAME[which.1] = "${mandir}/man1/which.1" | ||
| 31 | |||
| 32 | BBCLASSEXTEND = "nativesdk" | ||
diff --git a/meta/recipes-extended/xdg-utils/xdg-utils/0001-Don-t-build-the-in-script-manual.patch b/meta/recipes-extended/xdg-utils/xdg-utils/0001-Don-t-build-the-in-script-manual.patch deleted file mode 100644 index 14160bf8df..0000000000 --- a/meta/recipes-extended/xdg-utils/xdg-utils/0001-Don-t-build-the-in-script-manual.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 33f42aa8d190b40be18cd0541b5881d46978b572 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 3 | Date: Thu, 17 Dec 2015 11:50:05 +0200 | ||
| 4 | Subject: [PATCH] Don't build the in-script manual | ||
| 5 | |||
| 6 | Building the contents for "--manual" option requires a web browser | ||
| 7 | or java (these are the two options for "xmlto txt" support). | ||
| 8 | That's bonkers so don't do it: the man pages are still available | ||
| 9 | and contain the same info. | ||
| 10 | |||
| 11 | Upstream-Status: Inappropriate [disables in-script docs] | ||
| 12 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 13 | --- | ||
| 14 | scripts/Makefile.in | 2 +- | ||
| 15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 16 | |||
| 17 | diff --git a/scripts/Makefile.in b/scripts/Makefile.in | ||
| 18 | index 430032d..85359bc 100644 | ||
| 19 | --- a/scripts/Makefile.in | ||
| 20 | +++ b/scripts/Makefile.in | ||
| 21 | @@ -112,5 +112,5 @@ html/%.html: desc/%.xml | ||
| 22 | (cd html;$(XMLTO) html-nochunks ../$<) | ||
| 23 | |||
| 24 | %.txt: desc/%.xml | ||
| 25 | - $(XMLTO) txt $< | ||
| 26 | + echo "Please see the man pages." > $@ | ||
| 27 | |||
| 28 | -- | ||
| 29 | 2.1.4 | ||
| 30 | |||
diff --git a/meta/recipes-extended/xdg-utils/xdg-utils/0001-Reinstate-xdg-terminal.patch b/meta/recipes-extended/xdg-utils/xdg-utils/0001-Reinstate-xdg-terminal.patch deleted file mode 100644 index e9defadeaf..0000000000 --- a/meta/recipes-extended/xdg-utils/xdg-utils/0001-Reinstate-xdg-terminal.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From 37e227ae1766568d8de55e268bb69bc15eee3529 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 3 | Date: Thu, 26 Nov 2015 16:01:47 +0200 | ||
| 4 | Subject: [PATCH] Enable xdg-terminal | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [configuration] | ||
| 7 | |||
| 8 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
| 9 | --- | ||
| 10 | scripts/Makefile.in | 3 ++- | ||
| 11 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
| 12 | |||
| 13 | diff --git a/scripts/Makefile.in b/scripts/Makefile.in | ||
| 14 | index d167393..430032d 100644 | ||
| 15 | --- a/scripts/Makefile.in | ||
| 16 | +++ b/scripts/Makefile.in | ||
| 17 | @@ -20,7 +20,8 @@ SCRIPTS = \ | ||
| 18 | xdg-open \ | ||
| 19 | xdg-email \ | ||
| 20 | xdg-screensaver \ | ||
| 21 | - xdg-settings | ||
| 22 | + xdg-settings \ | ||
| 23 | + xdg-terminal | ||
| 24 | # xdg-su | ||
| 25 | # xdg-copy \ | ||
| 26 | # xdg-file-dialog | ||
| 27 | -- | ||
| 28 | 2.1.4 | ||
| 29 | |||
diff --git a/meta/recipes-extended/xdg-utils/xdg-utils/1f199813e0eb0246f63b54e9e154970e609575af.patch b/meta/recipes-extended/xdg-utils/xdg-utils/1f199813e0eb0246f63b54e9e154970e609575af.patch deleted file mode 100644 index 948b9e22e9..0000000000 --- a/meta/recipes-extended/xdg-utils/xdg-utils/1f199813e0eb0246f63b54e9e154970e609575af.patch +++ /dev/null | |||
| @@ -1,58 +0,0 @@ | |||
| 1 | From 1f199813e0eb0246f63b54e9e154970e609575af Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> | ||
| 3 | Date: Tue, 18 Aug 2020 16:52:24 +0100 | ||
| 4 | Subject: [PATCH] xdg-email: remove attachment handling from mailto | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | This allows attacker to extract secrets from users: | ||
| 10 | |||
| 11 | mailto:sid@evil.com?attach=/.gnupg/secring.gpg | ||
| 12 | |||
| 13 | See also https://bugzilla.mozilla.org/show_bug.cgi?id=1613425 | ||
| 14 | and https://gitlab.freedesktop.org/xdg/xdg-utils/-/issues/177 | ||
| 15 | |||
| 16 | Signed-off-by: Jörg Thalheim <joerg@thalheim.io> | ||
| 17 | --- | ||
| 18 | scripts/xdg-email.in | 7 +------ | ||
| 19 | 1 file changed, 1 insertion(+), 6 deletions(-) | ||
| 20 | |||
| 21 | Upstream-Status: Backport | ||
| 22 | CVE: CVE-2020-27748 | ||
| 23 | |||
| 24 | diff --git a/scripts/xdg-email.in b/scripts/xdg-email.in | ||
| 25 | index 6db58ad..5d2f4f3 100644 | ||
| 26 | --- a/scripts/xdg-email.in | ||
| 27 | +++ b/scripts/xdg-email.in | ||
| 28 | @@ -32,7 +32,7 @@ _USAGE | ||
| 29 | |||
| 30 | run_thunderbird() | ||
| 31 | { | ||
| 32 | - local THUNDERBIRD MAILTO NEWMAILTO TO CC BCC SUBJECT BODY ATTACH | ||
| 33 | + local THUNDERBIRD MAILTO NEWMAILTO TO CC BCC SUBJECT BODY | ||
| 34 | THUNDERBIRD="$1" | ||
| 35 | MAILTO=$(echo "$2" | sed 's/^mailto://') | ||
| 36 | echo "$MAILTO" | grep -qs "^?" | ||
| 37 | @@ -48,7 +48,6 @@ run_thunderbird() | ||
| 38 | BCC=$(/bin/echo -e $(echo "$MAILTO" | grep '^bcc=' | sed 's/^bcc=//;s/%\(..\)/\\x\1/g' | awk '{ printf "%s,",$0 }')) | ||
| 39 | SUBJECT=$(echo "$MAILTO" | grep '^subject=' | tail -n 1) | ||
| 40 | BODY=$(echo "$MAILTO" | grep '^body=' | tail -n 1) | ||
| 41 | - ATTACH=$(/bin/echo -e $(echo "$MAILTO" | grep '^attach=' | sed 's/^attach=//;s/%\(..\)/\\x\1/g' | awk '{ printf "%s,",$0 }' | sed 's/,$//')) | ||
| 42 | |||
| 43 | if [ -z "$TO" ] ; then | ||
| 44 | NEWMAILTO= | ||
| 45 | @@ -68,10 +67,6 @@ run_thunderbird() | ||
| 46 | NEWMAILTO="${NEWMAILTO},$BODY" | ||
| 47 | fi | ||
| 48 | |||
| 49 | - if [ -n "$ATTACH" ] ; then | ||
| 50 | - NEWMAILTO="${NEWMAILTO},attachment='${ATTACH}'" | ||
| 51 | - fi | ||
| 52 | - | ||
| 53 | NEWMAILTO=$(echo "$NEWMAILTO" | sed 's/^,//') | ||
| 54 | DEBUG 1 "Running $THUNDERBIRD -compose \"$NEWMAILTO\"" | ||
| 55 | "$THUNDERBIRD" -compose "$NEWMAILTO" | ||
| 56 | -- | ||
| 57 | GitLab | ||
| 58 | |||
diff --git a/meta/recipes-extended/xdg-utils/xdg-utils/CVE-2022-4055.patch b/meta/recipes-extended/xdg-utils/xdg-utils/CVE-2022-4055.patch deleted file mode 100644 index b236030108..0000000000 --- a/meta/recipes-extended/xdg-utils/xdg-utils/CVE-2022-4055.patch +++ /dev/null | |||
| @@ -1,145 +0,0 @@ | |||
| 1 | xdg-email does not parse mailto uris properly for thunderbird | ||
| 2 | |||
| 3 | When using thunderbird as mailto handler xdg-email translates mailto uris into an 'thunderbird -compose' argument. While to, cc and bcc values are properly enclosed in single quotes this is not the case for subject or body. This breaks functionality and allows to use all thunderbird -compose arguments within a mailto uri, e.g. | ||
| 4 | |||
| 5 | xdg-email 'mailto:test@example.com?subject=Test,attachment=~/.thunderbird/profiles.ini,message=/home/test/test.txt' | ||
| 6 | |||
| 7 | translates into | ||
| 8 | |||
| 9 | thunderbird -compose to='test@example.com,',subject=Test,attachment=~/.thunderbird/profiles.ini,message=/home/test/test.txt | ||
| 10 | |||
| 11 | with working attachment and message. (And, yes, ~ expands to the home directory.) | ||
| 12 | |||
| 13 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/xdg/xdg-utils/-/issues/205] | ||
| 14 | |||
| 15 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 16 | |||
| 17 | CVE: CVE-2022-4055 | ||
| 18 | |||
| 19 | |||
| 20 | Index: xdg-utils-1.1.3/scripts/xdg-email.in | ||
| 21 | =================================================================== | ||
| 22 | --- xdg-utils-1.1.3.orig/scripts/xdg-email.in | ||
| 23 | +++ xdg-utils-1.1.3/scripts/xdg-email.in | ||
| 24 | @@ -30,53 +30,6 @@ _USAGE | ||
| 25 | |||
| 26 | #@xdg-utils-common@ | ||
| 27 | |||
| 28 | -run_thunderbird() | ||
| 29 | -{ | ||
| 30 | - local THUNDERBIRD MAILTO NEWMAILTO TO CC BCC SUBJECT BODY | ||
| 31 | - THUNDERBIRD="$1" | ||
| 32 | - MAILTO=$(echo "$2" | sed 's/^mailto://') | ||
| 33 | - echo "$MAILTO" | grep -qs "^?" | ||
| 34 | - if [ "$?" = "0" ] ; then | ||
| 35 | - MAILTO=$(echo "$MAILTO" | sed 's/^?//') | ||
| 36 | - else | ||
| 37 | - MAILTO=$(echo "$MAILTO" | sed 's/^/to=/' | sed 's/?/\&/') | ||
| 38 | - fi | ||
| 39 | - | ||
| 40 | - MAILTO=$(echo "$MAILTO" | sed 's/&/\n/g') | ||
| 41 | - TO=$(/bin/echo -e $(echo "$MAILTO" | grep '^to=' | sed 's/^to=//;s/%\(..\)/\\x\1/g' | awk '{ printf "%s,",$0 }')) | ||
| 42 | - CC=$(/bin/echo -e $(echo "$MAILTO" | grep '^cc=' | sed 's/^cc=//;s/%\(..\)/\\x\1/g' | awk '{ printf "%s,",$0 }')) | ||
| 43 | - BCC=$(/bin/echo -e $(echo "$MAILTO" | grep '^bcc=' | sed 's/^bcc=//;s/%\(..\)/\\x\1/g' | awk '{ printf "%s,",$0 }')) | ||
| 44 | - SUBJECT=$(echo "$MAILTO" | grep '^subject=' | tail -n 1) | ||
| 45 | - BODY=$(echo "$MAILTO" | grep '^body=' | tail -n 1) | ||
| 46 | - | ||
| 47 | - if [ -z "$TO" ] ; then | ||
| 48 | - NEWMAILTO= | ||
| 49 | - else | ||
| 50 | - NEWMAILTO="to='$TO'" | ||
| 51 | - fi | ||
| 52 | - if [ -n "$CC" ] ; then | ||
| 53 | - NEWMAILTO="${NEWMAILTO},cc='$CC'" | ||
| 54 | - fi | ||
| 55 | - if [ -n "$BCC" ] ; then | ||
| 56 | - NEWMAILTO="${NEWMAILTO},bcc='$BCC'" | ||
| 57 | - fi | ||
| 58 | - if [ -n "$SUBJECT" ] ; then | ||
| 59 | - NEWMAILTO="${NEWMAILTO},$SUBJECT" | ||
| 60 | - fi | ||
| 61 | - if [ -n "$BODY" ] ; then | ||
| 62 | - NEWMAILTO="${NEWMAILTO},$BODY" | ||
| 63 | - fi | ||
| 64 | - | ||
| 65 | - NEWMAILTO=$(echo "$NEWMAILTO" | sed 's/^,//') | ||
| 66 | - DEBUG 1 "Running $THUNDERBIRD -compose \"$NEWMAILTO\"" | ||
| 67 | - "$THUNDERBIRD" -compose "$NEWMAILTO" | ||
| 68 | - if [ $? -eq 0 ]; then | ||
| 69 | - exit_success | ||
| 70 | - else | ||
| 71 | - exit_failure_operation_failed | ||
| 72 | - fi | ||
| 73 | -} | ||
| 74 | - | ||
| 75 | open_kde() | ||
| 76 | { | ||
| 77 | if [ -n "$KDE_SESSION_VERSION" ] && [ "$KDE_SESSION_VERSION" -ge 5 ]; then | ||
| 78 | @@ -130,15 +83,6 @@ open_kde() | ||
| 79 | |||
| 80 | open_gnome3() | ||
| 81 | { | ||
| 82 | - local client | ||
| 83 | - local desktop | ||
| 84 | - desktop=`xdg-mime query default "x-scheme-handler/mailto"` | ||
| 85 | - client=`desktop_file_to_binary "$desktop"` | ||
| 86 | - echo $client | grep -E 'thunderbird|icedove' > /dev/null 2>&1 | ||
| 87 | - if [ $? -eq 0 ] ; then | ||
| 88 | - run_thunderbird "$client" "$1" | ||
| 89 | - fi | ||
| 90 | - | ||
| 91 | if gio help open 2>/dev/null 1>&2; then | ||
| 92 | DEBUG 1 "Running gio open \"$1\"" | ||
| 93 | gio open "$1" | ||
| 94 | @@ -159,13 +103,6 @@ open_gnome3() | ||
| 95 | |||
| 96 | open_gnome() | ||
| 97 | { | ||
| 98 | - local client | ||
| 99 | - client=`gconftool-2 --get /desktop/gnome/url-handlers/mailto/command | cut -d ' ' -f 1` || "" | ||
| 100 | - echo $client | grep -E 'thunderbird|icedove' > /dev/null 2>&1 | ||
| 101 | - if [ $? -eq 0 ] ; then | ||
| 102 | - run_thunderbird "$client" "$1" | ||
| 103 | - fi | ||
| 104 | - | ||
| 105 | if gio help open 2>/dev/null 1>&2; then | ||
| 106 | DEBUG 1 "Running gio open \"$1\"" | ||
| 107 | gio open "$1" | ||
| 108 | @@ -231,15 +168,6 @@ open_flatpak() | ||
| 109 | |||
| 110 | open_generic() | ||
| 111 | { | ||
| 112 | - local client | ||
| 113 | - local desktop | ||
| 114 | - desktop=`xdg-mime query default "x-scheme-handler/mailto"` | ||
| 115 | - client=`desktop_file_to_binary "$desktop"` | ||
| 116 | - echo $client | grep -E 'thunderbird|icedove' > /dev/null 2>&1 | ||
| 117 | - if [ $? -eq 0 ] ; then | ||
| 118 | - run_thunderbird "$client" "$1" | ||
| 119 | - fi | ||
| 120 | - | ||
| 121 | xdg-open "$1" | ||
| 122 | local ret=$? | ||
| 123 | |||
| 124 | @@ -364,21 +292,6 @@ while [ $# -gt 0 ] ; do | ||
| 125 | shift | ||
| 126 | ;; | ||
| 127 | |||
| 128 | - --attach) | ||
| 129 | - if [ -z "$1" ] ; then | ||
| 130 | - exit_failure_syntax "file argument missing for --attach option" | ||
| 131 | - fi | ||
| 132 | - check_input_file "$1" | ||
| 133 | - file=`readlink -f "$1"` # Normalize path | ||
| 134 | - if [ -z "$file" ] || [ ! -f "$file" ] ; then | ||
| 135 | - exit_failure_file_missing "file '$1' does not exist" | ||
| 136 | - fi | ||
| 137 | - | ||
| 138 | - url_encode "$file" | ||
| 139 | - options="${options}attach=${result}&" | ||
| 140 | - shift | ||
| 141 | - ;; | ||
| 142 | - | ||
| 143 | -*) | ||
| 144 | exit_failure_syntax "unexpected option '$parm'" | ||
| 145 | ;; | ||
diff --git a/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb b/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb deleted file mode 100644 index 3ee320da5a..0000000000 --- a/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | SUMMARY = "Basic desktop integration functions" | ||
| 2 | HOMEPAGE = "https://www.freedesktop.org/wiki/Software/xdg-utils/" | ||
| 3 | DESCRIPTION = "The xdg-utils package is a set of simple scripts that provide basic \ | ||
| 4 | desktop integration functions for any Free Desktop, such as Linux. \ | ||
| 5 | They are intended to provide a set of defacto standards. \ | ||
| 6 | The following scripts are provided at this time: \ | ||
| 7 | xdg-desktop-icon \ | ||
| 8 | xdg-desktop-menu \ | ||
| 9 | xdg-email \ | ||
| 10 | xdg-icon-resource \ | ||
| 11 | xdg-mime \ | ||
| 12 | xdg-open \ | ||
| 13 | xdg-screensaver \ | ||
| 14 | xdg-terminal \ | ||
| 15 | " | ||
| 16 | |||
| 17 | LICENSE = "MIT" | ||
| 18 | LIC_FILES_CHKSUM = "file://LICENSE;md5=a5367a90934098d6b05af3b746405014" | ||
| 19 | |||
| 20 | SRC_URI = "https://portland.freedesktop.org/download/${BPN}-${PV}.tar.gz \ | ||
| 21 | file://0001-Reinstate-xdg-terminal.patch \ | ||
| 22 | file://0001-Don-t-build-the-in-script-manual.patch \ | ||
| 23 | file://1f199813e0eb0246f63b54e9e154970e609575af.patch \ | ||
| 24 | file://CVE-2022-4055.patch \ | ||
| 25 | " | ||
| 26 | |||
| 27 | SRC_URI[sha256sum] = "d798b08af8a8e2063ddde6c9fa3398ca81484f27dec642c5627ffcaa0d4051d9" | ||
| 28 | |||
| 29 | UPSTREAM_CHECK_REGEX = "xdg-utils-(?P<pver>((\d+[\.\-_]*)+)((rc|alpha|beta)\d+)?)\.(tar\.gz|tgz)" | ||
| 30 | |||
| 31 | # Needs brokensep as this doesn't use automake | ||
| 32 | inherit autotools-brokensep features_check | ||
| 33 | |||
| 34 | # The xprop requires x11 in DISTRO_FEATURES | ||
| 35 | REQUIRED_DISTRO_FEATURES = "x11" | ||
| 36 | |||
| 37 | DEPENDS = "xmlto-native libxslt-native" | ||
| 38 | RDEPENDS:${PN} += "xprop" | ||
diff --git a/meta/recipes-extended/xinetd/xinetd/0001-Use-monotonic-time.patch b/meta/recipes-extended/xinetd/xinetd/0001-Use-monotonic-time.patch deleted file mode 100644 index ee997fd28f..0000000000 --- a/meta/recipes-extended/xinetd/xinetd/0001-Use-monotonic-time.patch +++ /dev/null | |||
| @@ -1,325 +0,0 @@ | |||
| 1 | From 753aa53e817d29e979c2a2fca7da40a3d115f93c Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Li Wang <li.wang@windriver.com> | ||
| 3 | Date: Tue, 3 Sep 2024 15:21:52 +0800 | ||
| 4 | Subject: [PATCH] Use monotonic time | ||
| 5 | |||
| 6 | When using xinet.d to limit rsync connections, it can't handle changes | ||
| 7 | in system time. When time is set back, the connection limit is reached | ||
| 8 | very quickly and rsync gets deactivated, if time is changed again, rsync | ||
| 9 | is never reactivated. | ||
| 10 | |||
| 11 | The current timer of xinet.d is based on the time() and is affected by | ||
| 12 | the system time. Use clock_gettime() with CLOCK_MONOTONIC as the new | ||
| 13 | timer because CLOCK_MONOTONIC clock is not affected by discontinuous | ||
| 14 | jumps in the system time. | ||
| 15 | |||
| 16 | Upstream-Status: Submitted [https://github.com/openSUSE/xinetd/pull/48] | ||
| 17 | |||
| 18 | Signed-off-by: Li Wang <li.wang@windriver.com> | ||
| 19 | --- | ||
| 20 | src/access.c | 6 +++--- | ||
| 21 | src/builtins.c | 5 +++-- | ||
| 22 | src/internals.c | 2 +- | ||
| 23 | src/log.c | 3 ++- | ||
| 24 | src/sensor.c | 6 +++--- | ||
| 25 | src/server.c | 3 ++- | ||
| 26 | src/service.c | 5 +++-- | ||
| 27 | src/signals.c | 2 +- | ||
| 28 | src/time.c | 3 ++- | ||
| 29 | src/xlog/filelog.c | 3 ++- | ||
| 30 | src/xtimer.c | 15 ++++++++++++--- | ||
| 31 | src/xtimer.h | 1 + | ||
| 32 | 12 files changed, 35 insertions(+), 19 deletions(-) | ||
| 33 | |||
| 34 | diff --git a/src/access.c b/src/access.c | ||
| 35 | index e942db7..eb9da6e 100644 | ||
| 36 | --- a/src/access.c | ||
| 37 | +++ b/src/access.c | ||
| 38 | @@ -70,7 +70,7 @@ static void cps_service_restart(void) | ||
| 39 | time_t nowtime; | ||
| 40 | const char *func = "cps_service_restart"; | ||
| 41 | |||
| 42 | - nowtime = time(NULL); | ||
| 43 | + nowtime = _time(NULL); | ||
| 44 | for( i=0; i < pset_count( SERVICES(ps) ); i++ ) { | ||
| 45 | struct service *sp; | ||
| 46 | struct service_config *scp; | ||
| 47 | @@ -104,7 +104,7 @@ void cps_service_stop(struct service *sp, const char *reason) | ||
| 48 | msg(LOG_ERR, "service_stop", | ||
| 49 | "Deactivating service %s due to %s. Restarting in %d seconds.", | ||
| 50 | SC_NAME(scp), reason, (int)SC_TIME_WAIT(scp)); | ||
| 51 | - nowtime = time(NULL); | ||
| 52 | + nowtime = _time(NULL); | ||
| 53 | SC_TIME_REENABLE(scp) = nowtime + SC_TIME_WAIT(scp); | ||
| 54 | xtimer_add(cps_service_restart, SC_TIME_WAIT(scp)); | ||
| 55 | } | ||
| 56 | @@ -284,7 +284,7 @@ access_e parent_access_control( struct service *sp, const connection_s *cp ) | ||
| 57 | /* CPS handler */ | ||
| 58 | if( SC_TIME_CONN_MAX(scp) != 0 ) { | ||
| 59 | int time_diff; | ||
| 60 | - nowtime = time(NULL); | ||
| 61 | + nowtime = _time(NULL); | ||
| 62 | time_diff = nowtime - SC_TIME_LIMIT(scp) ; | ||
| 63 | |||
| 64 | if( SC_TIME_CONN(scp) == 0 ) { | ||
| 65 | diff --git a/src/builtins.c b/src/builtins.c | ||
| 66 | index 042e5dc..c285a02 100644 | ||
| 67 | --- a/src/builtins.c | ||
| 68 | +++ b/src/builtins.c | ||
| 69 | @@ -36,6 +36,7 @@ | ||
| 70 | #include "nvlists.h" | ||
| 71 | #include "child.h" | ||
| 72 | #include "access.h" | ||
| 73 | +#include "xtimer.h" | ||
| 74 | |||
| 75 | #define BUFFER_SIZE 1024 | ||
| 76 | |||
| 77 | @@ -237,7 +238,7 @@ static void daytime_protocol( char *buf, unsigned int *buflen ) | ||
| 78 | int size = *buflen ; | ||
| 79 | int cc ; | ||
| 80 | |||
| 81 | - (void) time( &now ) ; | ||
| 82 | + (void) _time( &now ) ; | ||
| 83 | tmp = localtime( &now ) ; | ||
| 84 | cc = strx_nprint( buf, size, | ||
| 85 | "%02d %s %d %02d:%02d:%02d", | ||
| 86 | @@ -308,7 +309,7 @@ static void time_protocol( unsigned char *timep ) | ||
| 87 | time_t now ; | ||
| 88 | unsigned long base1900; | ||
| 89 | |||
| 90 | - (void) time( &now ) ; | ||
| 91 | + (void) _time( &now ) ; | ||
| 92 | base1900 = (unsigned long)now + TIME_OFFSET ; | ||
| 93 | timep[0] = base1900 >> 24; | ||
| 94 | timep[1] = base1900 >> 16; | ||
| 95 | diff --git a/src/internals.c b/src/internals.c | ||
| 96 | index c5ed4f8..6a19207 100644 | ||
| 97 | --- a/src/internals.c | ||
| 98 | +++ b/src/internals.c | ||
| 99 | @@ -85,7 +85,7 @@ void dump_internal_state(void) | ||
| 100 | * Print the program name, version, and timestamp. | ||
| 101 | * Note that the program_version variable contains the program name. | ||
| 102 | */ | ||
| 103 | - (void) time( ¤t_time ) ; | ||
| 104 | + (void) _time( ¤t_time ) ; | ||
| 105 | Sprint( dump_fd, "INTERNAL STATE DUMP: %s\n", program_version ) ; | ||
| 106 | Sprint( dump_fd, "Current time: %s\n", ctime( ¤t_time ) ) ; | ||
| 107 | |||
| 108 | diff --git a/src/log.c b/src/log.c | ||
| 109 | index b66ab24..7aba30d 100644 | ||
| 110 | --- a/src/log.c | ||
| 111 | +++ b/src/log.c | ||
| 112 | @@ -21,6 +21,7 @@ | ||
| 113 | #include "sconf.h" | ||
| 114 | #include "sconst.h" | ||
| 115 | #include "msg.h" | ||
| 116 | +#include "xtimer.h" | ||
| 117 | |||
| 118 | |||
| 119 | #define LOGBUF_SIZE 1024 | ||
| 120 | @@ -202,7 +203,7 @@ void svc_log_exit( struct service *sp, const struct server *serp ) | ||
| 121 | { | ||
| 122 | time_t current_time ; | ||
| 123 | |||
| 124 | - (void) time( ¤t_time ) ; | ||
| 125 | + (void) _time( ¤t_time ) ; | ||
| 126 | cc = strx_nprint( &buf[ len ], bufsize, " duration=%ld(sec)", | ||
| 127 | (long)(current_time - SERVER_STARTTIME( serp )) ) ; | ||
| 128 | len += cc ; | ||
| 129 | diff --git a/src/sensor.c b/src/sensor.c | ||
| 130 | index cd85806..24bd816 100644 | ||
| 131 | --- a/src/sensor.c | ||
| 132 | +++ b/src/sensor.c | ||
| 133 | @@ -68,7 +68,7 @@ void process_sensor( const struct service *sp, const union xsockaddr *addr) | ||
| 134 | time_t nowtime; | ||
| 135 | char time_buf[40], *tmp; | ||
| 136 | |||
| 137 | - nowtime = time(NULL); | ||
| 138 | + nowtime = _time(NULL); | ||
| 139 | msg(LOG_CRIT, func, | ||
| 140 | "Adding %s to the global_no_access list for %d minutes", | ||
| 141 | dup_addr, SC_DENY_TIME(SVC_CONF(sp))); | ||
| 142 | @@ -113,7 +113,7 @@ void process_sensor( const struct service *sp, const union xsockaddr *addr) | ||
| 143 | { | ||
| 144 | time_t nowtime, new_time; | ||
| 145 | |||
| 146 | - nowtime = time(NULL); | ||
| 147 | + nowtime = _time(NULL); | ||
| 148 | new_time = (time_t)nowtime+(60*SC_DENY_TIME(SVC_CONF(sp))); if (difftime(new_time, (time_t)stored_time) > 0.0) | ||
| 149 | { /* new_time is longer save it */ | ||
| 150 | char time_buf[40], *new_exp_time; | ||
| 151 | @@ -163,7 +163,7 @@ static void scrub_global_access_list( void ) | ||
| 152 | { | ||
| 153 | int found_one = 0; | ||
| 154 | unsigned u; | ||
| 155 | - time_t nowtime = time(NULL); | ||
| 156 | + time_t nowtime = _time(NULL); | ||
| 157 | |||
| 158 | for (u=0; u < count; u++) | ||
| 159 | { | ||
| 160 | diff --git a/src/server.c b/src/server.c | ||
| 161 | index 4c4a2b8..e201a57 100644 | ||
| 162 | --- a/src/server.c | ||
| 163 | +++ b/src/server.c | ||
| 164 | @@ -30,6 +30,7 @@ | ||
| 165 | #include "retry.h" | ||
| 166 | #include "child.h" | ||
| 167 | #include "signals.h" | ||
| 168 | +#include "xtimer.h" | ||
| 169 | |||
| 170 | |||
| 171 | #define NEW_SERVER() NEW( struct server ) | ||
| 172 | @@ -228,7 +229,7 @@ status_e server_start( struct server *serp ) | ||
| 173 | return( FAILED ) ; | ||
| 174 | |||
| 175 | default: | ||
| 176 | - (void) time( &SERVER_STARTTIME(serp) ) ; | ||
| 177 | + (void) _time( &SERVER_STARTTIME(serp) ) ; | ||
| 178 | SVC_INC_RUNNING_SERVERS( sp ) ; | ||
| 179 | |||
| 180 | /* | ||
| 181 | diff --git a/src/service.c b/src/service.c | ||
| 182 | index 93c2162..04422c3 100644 | ||
| 183 | --- a/src/service.c | ||
| 184 | +++ b/src/service.c | ||
| 185 | @@ -43,6 +43,7 @@ | ||
| 186 | #include "logctl.h" | ||
| 187 | #include "xconfig.h" | ||
| 188 | #include "special.h" | ||
| 189 | +#include "xtimer.h" | ||
| 190 | |||
| 191 | |||
| 192 | #define NEW_SVC() NEW( struct service ) | ||
| 193 | @@ -840,7 +841,7 @@ static status_e failed_service(struct service *sp, | ||
| 194 | SVC_LAST_DGRAM_ADDR(sp) = (union xsockaddr *)last; | ||
| 195 | } | ||
| 196 | |||
| 197 | - (void) time( ¤t_time ) ; | ||
| 198 | + (void) _time( ¤t_time ) ; | ||
| 199 | if ( sinp->sin_addr.s_addr == last->sin_addr.s_addr && | ||
| 200 | sinp->sin_port == last->sin_port ) | ||
| 201 | { | ||
| 202 | @@ -867,7 +868,7 @@ static status_e failed_service(struct service *sp, | ||
| 203 | SVC_LAST_DGRAM_ADDR( sp ) = (union xsockaddr *)last; | ||
| 204 | } | ||
| 205 | |||
| 206 | - (void) time( ¤t_time ) ; | ||
| 207 | + (void) _time( ¤t_time ) ; | ||
| 208 | if ( IN6_ARE_ADDR_EQUAL(&(sinp->sin6_addr), &(last->sin6_addr)) && | ||
| 209 | sinp->sin6_port == last->sin6_port ) | ||
| 210 | { | ||
| 211 | diff --git a/src/signals.c b/src/signals.c | ||
| 212 | index 3c42db3..4160e6d 100644 | ||
| 213 | --- a/src/signals.c | ||
| 214 | +++ b/src/signals.c | ||
| 215 | @@ -301,7 +301,7 @@ static void bad_signal(void) | ||
| 216 | else if ( total_signal_count > MAX_SIGNAL_COUNT ) | ||
| 217 | _exit( 1 ) ; /* in case of a problem in exit(3) */ | ||
| 218 | |||
| 219 | - (void) time( ¤t_time ) ; | ||
| 220 | + (void) _time( ¤t_time ) ; | ||
| 221 | |||
| 222 | if ( interval_signal_count > 0 && | ||
| 223 | current_time - interval_start <= SIGNAL_INTERVAL ) | ||
| 224 | diff --git a/src/time.c b/src/time.c | ||
| 225 | index a4d63fb..68142b0 100644 | ||
| 226 | --- a/src/time.c | ||
| 227 | +++ b/src/time.c | ||
| 228 | @@ -16,6 +16,7 @@ | ||
| 229 | #include "timex.h" | ||
| 230 | #include "msg.h" | ||
| 231 | #include "util.h" | ||
| 232 | +#include "xtimer.h" | ||
| 233 | |||
| 234 | |||
| 235 | #define IN_RANGE( val, low, high ) ( (low) <= (val) && (val) <= (high) ) | ||
| 236 | @@ -41,7 +42,7 @@ bool_int ti_current_time_check( const pset_h intervals ) | ||
| 237 | int16_t min_current ; | ||
| 238 | struct tm *tmp ; | ||
| 239 | |||
| 240 | - (void) time( ¤t_time ) ; | ||
| 241 | + (void) _time( ¤t_time ) ; | ||
| 242 | tmp = localtime( ¤t_time ) ; | ||
| 243 | min_current = tmp->tm_hour * 60 + tmp->tm_min ; | ||
| 244 | |||
| 245 | diff --git a/src/xlog/filelog.c b/src/xlog/filelog.c | ||
| 246 | index ee688e5..46cf1e2 100644 | ||
| 247 | --- a/src/xlog/filelog.c | ||
| 248 | +++ b/src/xlog/filelog.c | ||
| 249 | @@ -25,6 +25,7 @@ | ||
| 250 | #include "str.h" | ||
| 251 | #include "xlog.h" | ||
| 252 | #include "filelog.h" | ||
| 253 | +#include "xtimer.h" | ||
| 254 | |||
| 255 | static int filelog_init(xlog_s *, va_list) ; | ||
| 256 | static void filelog_fini(xlog_s *) ; | ||
| 257 | @@ -190,7 +191,7 @@ static int filelog_write( xlog_s *xp, const char buf[], int len, int flags, | ||
| 258 | if ( flp->fl_state != FL_OPEN ) | ||
| 259 | return( flp->fl_error ) ; | ||
| 260 | |||
| 261 | - (void) time( ¤t_time ) ; | ||
| 262 | + (void) _time( ¤t_time ) ; | ||
| 263 | tmp = localtime( ¤t_time ) ; | ||
| 264 | cc = Sprint( flp->fl_fd, "%02d/%d/%d@%02d:%02d:%02d", | ||
| 265 | tmp->tm_year%100, tmp->tm_mon+1, tmp->tm_mday, | ||
| 266 | diff --git a/src/xtimer.c b/src/xtimer.c | ||
| 267 | index 2053ef4..7a125d8 100644 | ||
| 268 | --- a/src/xtimer.c | ||
| 269 | +++ b/src/xtimer.c | ||
| 270 | @@ -11,6 +11,15 @@ | ||
| 271 | #include "pset.h" | ||
| 272 | #include "msg.h" | ||
| 273 | |||
| 274 | +time_t _time(time_t *t) | ||
| 275 | +{ | ||
| 276 | + struct timespec ts; | ||
| 277 | + clock_gettime(CLOCK_MONOTONIC, &ts); | ||
| 278 | + if(t) | ||
| 279 | + *t = ts.tv_sec; | ||
| 280 | + return ts.tv_sec; | ||
| 281 | +} | ||
| 282 | + | ||
| 283 | /* A note on the usage of timers in these functions: | ||
| 284 | * The timers are composed of 3 elements, a pointer to a callback function, | ||
| 285 | * the expire time of the timer, and a unique (pseudo-monotomically increasing) | ||
| 286 | @@ -68,7 +77,7 @@ int xtimer_add( void (*func)(void), time_t secs ) | ||
| 287 | return -1; | ||
| 288 | } | ||
| 289 | |||
| 290 | - tmptime = time(NULL); | ||
| 291 | + tmptime = _time(NULL); | ||
| 292 | if( tmptime == -1 ) { | ||
| 293 | free( new_xtimer ); | ||
| 294 | return -1; | ||
| 295 | @@ -107,7 +116,7 @@ int xtimer_poll(void) | ||
| 296 | |||
| 297 | for( i = 0; i < pset_count( xtimer_list ); i++ ) { | ||
| 298 | xtime_h *cur_timer = pset_pointer( xtimer_list, i ); | ||
| 299 | - time_t cur_time = time(NULL); | ||
| 300 | + time_t cur_time = _time(NULL); | ||
| 301 | |||
| 302 | /* The list is sorted, low to high. If there's no | ||
| 303 | * timers left, return. | ||
| 304 | @@ -163,7 +172,7 @@ time_t xtimer_nexttime(void) | ||
| 305 | if( pset_count(xtimer_list) == 0 ) | ||
| 306 | return -1; | ||
| 307 | |||
| 308 | - ret = ((xtime_h *)pset_pointer(xtimer_list, 0))->when - time(NULL) ; | ||
| 309 | + ret = ((xtime_h *)pset_pointer(xtimer_list, 0))->when - _time(NULL) ; | ||
| 310 | if( ret < 0 ) | ||
| 311 | ret = 0; | ||
| 312 | return( ret ); | ||
| 313 | diff --git a/src/xtimer.h b/src/xtimer.h | ||
| 314 | index b0f8451..3ba0d0a 100644 | ||
| 315 | --- a/src/xtimer.h | ||
| 316 | +++ b/src/xtimer.h | ||
| 317 | @@ -22,4 +22,5 @@ int xtimer_poll(void); | ||
| 318 | int xtimer_remove(int); | ||
| 319 | time_t xtimer_nexttime(void); | ||
| 320 | |||
| 321 | +time_t _time(time_t *t); | ||
| 322 | #endif /* _X_TIMER_H */ | ||
| 323 | -- | ||
| 324 | 2.34.1 | ||
| 325 | |||
diff --git a/meta/recipes-extended/xinetd/xinetd/xinetd.default b/meta/recipes-extended/xinetd/xinetd/xinetd.default deleted file mode 100644 index 20a38e3f3e..0000000000 --- a/meta/recipes-extended/xinetd/xinetd/xinetd.default +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | # Default settings for xinetd. This file is sourced by /bin/sh from | ||
| 2 | # /etc/init.d/xinetd | ||
| 3 | |||
| 4 | # enable xinetd Inetd compat mode | ||
| 5 | INETD_COMPAT=Yes | ||
| 6 | |||
| 7 | # Options to pass to xinetd | ||
| 8 | # | ||
| 9 | # -stayalive comes by default : it can be removed if xinetd is expected | ||
| 10 | # not to start when no service is configured | ||
| 11 | # | ||
| 12 | XINETD_OPTS="-stayalive" | ||
diff --git a/meta/recipes-extended/xinetd/xinetd/xinetd.init b/meta/recipes-extended/xinetd/xinetd/xinetd.init deleted file mode 100644 index 777c2c8b46..0000000000 --- a/meta/recipes-extended/xinetd/xinetd/xinetd.init +++ /dev/null | |||
| @@ -1,64 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # | ||
| 3 | # /etc/init.d/xinetd -- script to start and stop xinetd. | ||
| 4 | |||
| 5 | # Source function library. | ||
| 6 | . /etc/init.d/functions | ||
| 7 | |||
| 8 | if test -f /etc/default/xinetd; then | ||
| 9 | . /etc/default/xinetd | ||
| 10 | fi | ||
| 11 | |||
| 12 | |||
| 13 | test -x /usr/sbin/xinetd || exit 0 | ||
| 14 | |||
| 15 | checkportmap () { | ||
| 16 | if grep "^[^ *#]" /etc/xinetd.conf | grep -q 'rpc/'; then | ||
| 17 | if ! rpcinfo -u localhost portmapper >/dev/null 2>&1; then | ||
| 18 | echo | ||
| 19 | echo "WARNING: portmapper inactive - RPC services unavailable!" | ||
| 20 | echo " Commenting out or removing the RPC services from" | ||
| 21 | echo " the /etc/xinetd.conf file will remove this message." | ||
| 22 | echo | ||
| 23 | fi | ||
| 24 | fi | ||
| 25 | } | ||
| 26 | |||
| 27 | case "$1" in | ||
| 28 | start) | ||
| 29 | checkportmap | ||
| 30 | echo -n "Starting internet superserver: xinetd" | ||
| 31 | start-stop-daemon --start --quiet --background --exec /usr/sbin/xinetd -- -pidfile /var/run/xinetd.pid $XINETD_OPTS | ||
| 32 | echo "." | ||
| 33 | ;; | ||
| 34 | stop) | ||
| 35 | echo -n "Stopping internet superserver: xinetd" | ||
| 36 | start-stop-daemon --stop --signal 3 --quiet --exec /usr/sbin/xinetd | ||
| 37 | echo "." | ||
| 38 | ;; | ||
| 39 | status) | ||
| 40 | status /usr/sbin/xinetd; | ||
| 41 | exit $? | ||
| 42 | ;; | ||
| 43 | reload) | ||
| 44 | echo -n "Reloading internet superserver configuration: xinetd" | ||
| 45 | start-stop-daemon --stop --signal 1 --quiet --exec /usr/sbin/xinetd | ||
| 46 | echo "." | ||
| 47 | ;; | ||
| 48 | force-reload) | ||
| 49 | echo "$0 force-reload: Force Reload is deprecated" | ||
| 50 | echo -n "Forcefully reloading internet superserver configuration: xinetd" | ||
| 51 | start-stop-daemon --stop --signal 1 --quiet --exec /usr/sbin/xinetd | ||
| 52 | echo "." | ||
| 53 | ;; | ||
| 54 | restart) | ||
| 55 | $0 stop | ||
| 56 | $0 start | ||
| 57 | ;; | ||
| 58 | *) | ||
| 59 | echo "Usage: /etc/init.d/xinetd {start|stop|status|reload|force-reload|restart}" | ||
| 60 | exit 1 | ||
| 61 | ;; | ||
| 62 | esac | ||
| 63 | |||
| 64 | exit 0 | ||
diff --git a/meta/recipes-extended/xinetd/xinetd/xinetd.service b/meta/recipes-extended/xinetd/xinetd/xinetd.service deleted file mode 100644 index 6da92f2bf5..0000000000 --- a/meta/recipes-extended/xinetd/xinetd/xinetd.service +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=Xinetd A Powerful Replacement For Inetd | ||
| 3 | After=syslog.target network.target | ||
| 4 | |||
| 5 | [Service] | ||
| 6 | EnvironmentFile=-/etc/sysconfig/xinetd | ||
| 7 | ExecStart=@SBINDIR@/xinetd -dontfork "$EXTRAOPTIONS" | ||
| 8 | |||
| 9 | [Install] | ||
| 10 | WantedBy=multi-user.target | ||
diff --git a/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb b/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb deleted file mode 100644 index 2f727128a5..0000000000 --- a/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | SUMMARY = "Socket-based service activation daemon" | ||
| 2 | HOMEPAGE = "https://github.com/xinetd-org/xinetd" | ||
| 3 | DESCRIPTION = "xinetd is a powerful replacement for inetd, xinetd has access control mechanisms, extensive logging capabilities, the ability to make services available based on time, can place limits on the number of servers that can be started, and has deployable defence mechanisms to protect against port scanners, among other things." | ||
| 4 | |||
| 5 | LICENSE = "xinetd" | ||
| 6 | LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=55c5fdf02cfcca3fc9621b6f2ceae10f" | ||
| 7 | |||
| 8 | UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)" | ||
| 9 | |||
| 10 | SRC_URI = "git://github.com/openSUSE/xinetd.git;protocol=https;branch=master \ | ||
| 11 | file://0001-Use-monotonic-time.patch \ | ||
| 12 | file://xinetd.init \ | ||
| 13 | file://xinetd.default \ | ||
| 14 | file://xinetd.service \ | ||
| 15 | " | ||
| 16 | |||
| 17 | SRCREV = "6a4af7786630ce48747d9687e2f18f45ea6684c4" | ||
| 18 | |||
| 19 | # https://github.com/xinetd-org/xinetd/pull/10 is merged into this git tree revision | ||
| 20 | CVE_STATUS[CVE-2013-4342] = "fixed-version: Fixed directly in git tree revision" | ||
| 21 | |||
| 22 | inherit autotools update-rc.d systemd pkgconfig | ||
| 23 | |||
| 24 | SYSTEMD_SERVICE:${PN} = "xinetd.service" | ||
| 25 | |||
| 26 | INITSCRIPT_NAME = "xinetd" | ||
| 27 | INITSCRIPT_PARAMS = "defaults" | ||
| 28 | |||
| 29 | PACKAGECONFIG ??= "tcp-wrappers" | ||
| 30 | PACKAGECONFIG[tcp-wrappers] = "--with-libwrap,,tcp-wrappers" | ||
| 31 | |||
| 32 | CFLAGS += "-D_GNU_SOURCE -std=gnu17" | ||
| 33 | |||
| 34 | CONFFILES:${PN} = "${sysconfdir}/xinetd.conf" | ||
| 35 | |||
| 36 | do_install:append() { | ||
| 37 | install -d "${D}${sysconfdir}/init.d" | ||
| 38 | install -d "${D}${sysconfdir}/default" | ||
| 39 | install -m 755 "${UNPACKDIR}/xinetd.init" "${D}${sysconfdir}/init.d/xinetd" | ||
| 40 | install -m 644 "${UNPACKDIR}/xinetd.default" "${D}${sysconfdir}/default/xinetd" | ||
| 41 | |||
| 42 | # Install systemd unit files | ||
| 43 | install -d ${D}${systemd_system_unitdir} | ||
| 44 | install -m 0644 ${UNPACKDIR}/xinetd.service ${D}${systemd_system_unitdir} | ||
| 45 | sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
| 46 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 47 | ${D}${systemd_system_unitdir}/xinetd.service | ||
| 48 | } | ||
| 49 | |||
| 50 | # Script for converting inetd.conf files into xinetd.conf files | ||
| 51 | PACKAGES =+ "${PN}-xconv" | ||
| 52 | FILES:${PN}-xconv = "${bindir}/xconv.pl" | ||
| 53 | RDEPENDS:${PN}-xconv += "perl" | ||
diff --git a/meta/recipes-extended/xz/xz/run-ptest b/meta/recipes-extended/xz/xz/run-ptest deleted file mode 100644 index cc8ba92016..0000000000 --- a/meta/recipes-extended/xz/xz/run-ptest +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | #!/bin/bash | ||
| 2 | |||
| 3 | ptestdir=$(dirname "$(readlink -f "$0")") | ||
| 4 | cd "$ptestdir"/tests || exit | ||
| 5 | |||
| 6 | # executables test cases | ||
| 7 | tests_exec=$(file $(ls test_*) | grep "ELF" | awk -F: '{print $1}') | ||
| 8 | for i in ${tests_exec}; do | ||
| 9 | ./$i | ||
| 10 | done | ||
| 11 | |||
| 12 | # POSIX shell script test cases | ||
| 13 | export srcdir=${ptestdir}/tests | ||
| 14 | test_shell="test_files.sh test_scripts.sh test_compress.sh" | ||
| 15 | for j in ${test_shell}; do | ||
| 16 | if [ $j == "test_compress.sh" ]; then | ||
| 17 | ./$j create_compress_files | ||
| 18 | else | ||
| 19 | ./$j | ||
| 20 | fi | ||
| 21 | if [ $? -eq 0 ]; then | ||
| 22 | echo "PASS: $j" | ||
| 23 | else | ||
| 24 | echo "FAIL: $j" | ||
| 25 | fi | ||
| 26 | done | ||
diff --git a/meta/recipes-extended/xz/xz_5.8.1.bb b/meta/recipes-extended/xz/xz_5.8.1.bb deleted file mode 100644 index 406ecbbec4..0000000000 --- a/meta/recipes-extended/xz/xz_5.8.1.bb +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | SUMMARY = "Utilities for managing LZMA compressed files" | ||
| 2 | HOMEPAGE = "https://tukaani.org/xz/" | ||
| 3 | DESCRIPTION = "XZ Utils is free general-purpose data compression software with a high compression ratio. XZ Utils were written for POSIX-like systems, but also work on some not-so-POSIX systems. XZ Utils are the successor to LZMA Utils." | ||
| 4 | SECTION = "base" | ||
| 5 | |||
| 6 | # The source includes bits of 0BSD, GPL-2.0, GPL-3.0, LGPL-2.1-or-later, but the | ||
| 7 | # only file which is GPL-3.0 is an m4 macro which isn't shipped in any of our | ||
| 8 | # packages, and the LGPL bits are under lib/, which appears to be used for | ||
| 9 | # libgnu, which appears to be used for DOS builds. So we're left with | ||
| 10 | # GPL-2.0-or-later and 0BSD. | ||
| 11 | LICENSE = "GPL-2.0-or-later & GPL-3.0-with-autoconf-exception & LGPL-2.1-or-later & 0BSD" | ||
| 12 | LICENSE:${PN} = "0BSD & GPL-2.0-or-later" | ||
| 13 | LICENSE:${PN}-dev = "0BSD & GPL-2.0-or-later" | ||
| 14 | LICENSE:${PN}-staticdev = "GPL-2.0-or-later" | ||
| 15 | LICENSE:${PN}-doc = "0BSD & GPL-2.0-or-later" | ||
| 16 | LICENSE:${PN}-dbg = "GPL-2.0-or-later" | ||
| 17 | LICENSE:${PN}-locale = "GPL-2.0-or-later" | ||
| 18 | LICENSE:liblzma = "0BSD" | ||
| 19 | |||
| 20 | LIC_FILES_CHKSUM = "file://COPYING;md5=d38d562f6112174de93a9677682231b2 \ | ||
| 21 | file://COPYING.0BSD;md5=0672c210ce80c83444339b9aa31fee2f \ | ||
| 22 | file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 23 | file://COPYING.GPLv3;md5=1ebbd3e34237af26da5dc08a4e440464 \ | ||
| 24 | file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \ | ||
| 25 | file://lib/getopt.c;endline=23;md5=3f33e207287bf72834f3ae8c247dfb6a \ | ||
| 26 | " | ||
| 27 | |||
| 28 | SRC_URI = "https://github.com/tukaani-project/xz/releases/download/v${PV}/xz-${PV}.tar.gz \ | ||
| 29 | file://run-ptest \ | ||
| 30 | " | ||
| 31 | SRC_URI[sha256sum] = "507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543" | ||
| 32 | UPSTREAM_CHECK_REGEX = "releases/tag/v(?P<pver>\d+(\.\d+)+)" | ||
| 33 | UPSTREAM_CHECK_URI = "https://github.com/tukaani-project/xz/releases/" | ||
| 34 | |||
| 35 | CACHED_CONFIGUREVARS += "gl_cv_posix_shell=/bin/sh" | ||
| 36 | |||
| 37 | inherit autotools gettext ptest | ||
| 38 | |||
| 39 | PACKAGECONFIG[landlock] = "--enable-sandbox=landlock,--enable-sandbox=no" | ||
| 40 | |||
| 41 | PACKAGES =+ "liblzma" | ||
| 42 | |||
| 43 | FILES:liblzma = "${libdir}/liblzma*${SOLIBS}" | ||
| 44 | |||
| 45 | inherit update-alternatives | ||
| 46 | ALTERNATIVE_PRIORITY = "100" | ||
| 47 | ALTERNATIVE:${PN} = "xz xzcat unxz \ | ||
| 48 | lzma lzcat unlzma" | ||
| 49 | |||
| 50 | BBCLASSEXTEND = "native nativesdk" | ||
| 51 | |||
| 52 | RDEPENDS:${PN}-ptest += "bash file" | ||
| 53 | |||
| 54 | do_compile_ptest() { | ||
| 55 | oe_runmake check TESTS= | ||
| 56 | } | ||
| 57 | |||
| 58 | do_install_ptest () { | ||
| 59 | install -d ${D}${PTEST_PATH}/tests | ||
| 60 | find ${B}/tests/.libs -type f -executable -exec cp {} ${D}${PTEST_PATH}/tests \; | ||
| 61 | cp ${B}/config.h ${D}${PTEST_PATH} | ||
| 62 | for i in files xzgrep_expected_output test_files.sh test_scripts.sh test_compress.sh; do | ||
| 63 | cp -r ${S}/tests/$i ${D}${PTEST_PATH}/tests | ||
| 64 | done | ||
| 65 | mkdir -p ${D}${PTEST_PATH}/src/xz | ||
| 66 | ln -s ${bindir}/xz ${D}${PTEST_PATH}/src/xz/xz | ||
| 67 | mkdir -p ${D}${PTEST_PATH}/src/xzdec | ||
| 68 | ln -s ${bindir}/xzdec ${D}${PTEST_PATH}/src/xzdec/xzdec | ||
| 69 | mkdir -p ${D}${PTEST_PATH}/src/scripts | ||
| 70 | ln -s ${bindir}/xzdiff ${D}${PTEST_PATH}/src/scripts/xzdiff | ||
| 71 | ln -s ${bindir}/xzgrep ${D}${PTEST_PATH}/src/scripts/xzgrep | ||
| 72 | } | ||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch b/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch deleted file mode 100644 index 0d3af37ded..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch +++ /dev/null | |||
| @@ -1,45 +0,0 @@ | |||
| 1 | From 9db2f8cdbbc0dfb359d3b4e5dfe48c18652ce531 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 8 May 2024 19:02:46 -0700 | ||
| 4 | Subject: [PATCH] configure: Include dirent.h for closedir/opendir APIs | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | GCC-14 is strict about function prototypes and since the | ||
| 10 | testcase tries to compile/link opendir/closedir functions | ||
| 11 | without including signatures, it fails to build the test | ||
| 12 | due to missing signatures which come from dirent.h | ||
| 13 | |||
| 14 | Therefore include the needed system header and make it more | ||
| 15 | robust. | ||
| 16 | |||
| 17 | Fixes | ||
| 18 | a.c:2:21: error: implicit declaration of function ‘closedir’ [-Wimplicit-function-declaration] | ||
| 19 | 2 | int main() { return closedir(opendir(".")); } | ||
| 20 | | ^~~~~~~~ | ||
| 21 | a.c:2:30: error: implicit declaration of function ‘opendir’ [-Wimplicit-function-declaration] | ||
| 22 | 2 | int main() { return closedir(opendir(".")); } | ||
| 23 | | ^~~~~~~ | ||
| 24 | |||
| 25 | Upstream-Status: Inactive-Upstream | ||
| 26 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 27 | --- | ||
| 28 | unix/configure | 1 + | ||
| 29 | 1 file changed, 1 insertion(+) | ||
| 30 | |||
| 31 | diff --git a/unix/configure b/unix/configure | ||
| 32 | index f917086..1dd98c6 100644 | ||
| 33 | --- a/unix/configure | ||
| 34 | +++ b/unix/configure | ||
| 35 | @@ -591,6 +591,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null | ||
| 36 | |||
| 37 | echo Check for directory libraries | ||
| 38 | cat > conftest.c << _EOF_ | ||
| 39 | +#include <dirent.h> | ||
| 40 | int main() { return closedir(opendir(".")); } | ||
| 41 | _EOF_ | ||
| 42 | |||
| 43 | -- | ||
| 44 | 2.45.0 | ||
| 45 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-configure-Specify-correct-function-signatures-and-de.patch b/meta/recipes-extended/zip/zip-3.0/0001-configure-Specify-correct-function-signatures-and-de.patch deleted file mode 100644 index a4f8382625..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-configure-Specify-correct-function-signatures-and-de.patch +++ /dev/null | |||
| @@ -1,134 +0,0 @@ | |||
| 1 | From 8810f2643c9372a8083272dc1fc157427646d961 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 10 Aug 2022 17:16:23 -0700 | ||
| 4 | Subject: [PATCH 1/2] configure: Specify correct function signatures and | ||
| 5 | declarations | ||
| 6 | |||
| 7 | Include needed system headers in configure tests, this is needed because | ||
| 8 | newer compilers are getting stricter about the C99 specs and turning | ||
| 9 | -Wimplicit-function-declaration into hard error e.g. clang-15+ | ||
| 10 | |||
| 11 | Upstream-Status: Inactive-Upstream | ||
| 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 13 | --- | ||
| 14 | unix/configure | 79 +++++++++++++++++++++++++++++++++++++++++--------- | ||
| 15 | 1 file changed, 66 insertions(+), 13 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/unix/configure b/unix/configure | ||
| 18 | index 1d9a9bb..f2b3d02 100644 | ||
| 19 | --- a/unix/configure | ||
| 20 | +++ b/unix/configure | ||
| 21 | @@ -513,21 +513,70 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null | ||
| 22 | # Check for missing functions | ||
| 23 | # add NO_'function_name' to flags if missing | ||
| 24 | |||
| 25 | -for func in rmdir strchr strrchr rename mktemp mktime mkstemp | ||
| 26 | -do | ||
| 27 | - echo Check for $func | ||
| 28 | - echo "int main(){ $func(); return 0; }" > conftest.c | ||
| 29 | - $CC $CFLAGS $LDFLAGS $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 30 | - [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" | ||
| 31 | -done | ||
| 32 | +echo Check for rmdir | ||
| 33 | +cat > conftest.c << _EOF_ | ||
| 34 | +#include <unistd.h> | ||
| 35 | +int main(){ rmdir(NULL); return 0; } | ||
| 36 | +_EOF_ | ||
| 37 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 38 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_RMDIR" | ||
| 39 | + | ||
| 40 | +echo Check for strchr | ||
| 41 | +cat > conftest.c << _EOF_ | ||
| 42 | +#include <string.h> | ||
| 43 | +int main(){ strchr(NULL,0); return 0; } | ||
| 44 | +_EOF_ | ||
| 45 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 46 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_STRCHR" | ||
| 47 | |||
| 48 | +echo Check for strrchr | ||
| 49 | +cat > conftest.c << _EOF_ | ||
| 50 | +#include <string.h> | ||
| 51 | +int main(){ strrchr(NULL,0); return 0; } | ||
| 52 | +_EOF_ | ||
| 53 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 54 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_STRRCHR" | ||
| 55 | + | ||
| 56 | +echo Check for rename | ||
| 57 | +cat > conftest.c << _EOF_ | ||
| 58 | +#include <stdio.h> | ||
| 59 | +int main(){ rename(NULL,NULL); return 0; } | ||
| 60 | +_EOF_ | ||
| 61 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 62 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_RENAME" | ||
| 63 | + | ||
| 64 | +echo Check for mktemp | ||
| 65 | +cat > conftest.c << _EOF_ | ||
| 66 | +#include <stdlib.h> | ||
| 67 | +int main(){ mktemp(NULL); return 0; } | ||
| 68 | +_EOF_ | ||
| 69 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 70 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_MKTEMP" | ||
| 71 | + | ||
| 72 | +echo Check for mktime | ||
| 73 | +cat > conftest.c << _EOF_ | ||
| 74 | +#include <time.h> | ||
| 75 | +int main(){ mktime(NULL); return 0; } | ||
| 76 | +_EOF_ | ||
| 77 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 78 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_MKTIME" | ||
| 79 | + | ||
| 80 | +echo Check for mkstemp | ||
| 81 | +cat > conftest.c << _EOF_ | ||
| 82 | +#include <stdlib.h> | ||
| 83 | +int main(){ return mkstemp(NULL); } | ||
| 84 | +_EOF_ | ||
| 85 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 86 | +[ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_MKSTEMP" | ||
| 87 | |||
| 88 | echo Check for memset | ||
| 89 | -echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c | ||
| 90 | +cat > conftest.c << _EOF_ | ||
| 91 | +#include <string.h> | ||
| 92 | +int main(){ char k; memset(&k,0,0); return 0; } | ||
| 93 | +_EOF_ | ||
| 94 | $CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 95 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM" | ||
| 96 | |||
| 97 | - | ||
| 98 | echo Check for memmove | ||
| 99 | cat > conftest.c << _EOF_ | ||
| 100 | #include <string.h> | ||
| 101 | @@ -548,7 +597,7 @@ $CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 102 | echo Check for errno declaration | ||
| 103 | cat > conftest.c << _EOF_ | ||
| 104 | #include <errno.h> | ||
| 105 | -main() | ||
| 106 | +int main() | ||
| 107 | { | ||
| 108 | errno = 0; | ||
| 109 | return 0; | ||
| 110 | @@ -625,14 +674,18 @@ CFLAGS="${CFLAGS} ${OPT}" | ||
| 111 | |||
| 112 | echo Check for valloc | ||
| 113 | cat > conftest.c << _EOF_ | ||
| 114 | -main() | ||
| 115 | +#include <stdlib.h> | ||
| 116 | +int main() | ||
| 117 | { | ||
| 118 | #ifdef MMAP | ||
| 119 | - valloc(); | ||
| 120 | + valloc(0); | ||
| 121 | #endif | ||
| 122 | + return 0; | ||
| 123 | } | ||
| 124 | _EOF_ | ||
| 125 | -$CC ${CFLAGS} -c conftest.c > /dev/null 2>/dev/null | ||
| 126 | +#$CC ${CFLAGS} -c conftest.c > /dev/null 2>/dev/null | ||
| 127 | +$CC ${CFLAGS} -c conftest.c | ||
| 128 | +echo "===========================================" | ||
| 129 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_VALLOC" | ||
| 130 | |||
| 131 | |||
| 132 | -- | ||
| 133 | 2.37.1 | ||
| 134 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-configure-Use-CFLAGS-and-LDFLAGS-when-doing-link-tes.patch b/meta/recipes-extended/zip/zip-3.0/0001-configure-Use-CFLAGS-and-LDFLAGS-when-doing-link-tes.patch deleted file mode 100644 index 92d0d5db58..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-configure-Use-CFLAGS-and-LDFLAGS-when-doing-link-tes.patch +++ /dev/null | |||
| @@ -1,88 +0,0 @@ | |||
| 1 | From ab5df4826c4a532da78828b72a2751c899e27ef2 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 8 Mar 2022 22:31:21 -0800 | ||
| 4 | Subject: [PATCH] configure: Use CFLAGS and LDFLAGS when doing link tests | ||
| 5 | |||
| 6 | Some case link flags contain important flags which are required during | ||
| 7 | linking, link fails otherwise without them, which can result in | ||
| 8 | configure detection go wrong, ensure these flags are used along with CC | ||
| 9 | when tests involve linking | ||
| 10 | |||
| 11 | Upstream-Status: Inactive-Upstream | ||
| 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 13 | --- | ||
| 14 | unix/configure | 16 ++++++++-------- | ||
| 15 | 1 file changed, 8 insertions(+), 8 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/unix/configure b/unix/configure | ||
| 18 | index 1bc698b..1d9a9bb 100644 | ||
| 19 | --- a/unix/configure | ||
| 20 | +++ b/unix/configure | ||
| 21 | @@ -517,14 +517,14 @@ for func in rmdir strchr strrchr rename mktemp mktime mkstemp | ||
| 22 | do | ||
| 23 | echo Check for $func | ||
| 24 | echo "int main(){ $func(); return 0; }" > conftest.c | ||
| 25 | - $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 26 | + $CC $CFLAGS $LDFLAGS $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 27 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`" | ||
| 28 | done | ||
| 29 | |||
| 30 | |||
| 31 | echo Check for memset | ||
| 32 | echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c | ||
| 33 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 34 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 35 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM" | ||
| 36 | |||
| 37 | |||
| 38 | @@ -533,7 +533,7 @@ cat > conftest.c << _EOF_ | ||
| 39 | #include <string.h> | ||
| 40 | int main() { int a; int b = 0; memmove( &a, &b, sizeof( a)); return a; } | ||
| 41 | _EOF_ | ||
| 42 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 43 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 44 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_MEMMOVE" | ||
| 45 | |||
| 46 | |||
| 47 | @@ -542,7 +542,7 @@ cat > conftest.c << _EOF_ | ||
| 48 | #include <string.h> | ||
| 49 | int main() { strerror( 0); return 0; } | ||
| 50 | _EOF_ | ||
| 51 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 52 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 53 | [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_STRERROR" | ||
| 54 | |||
| 55 | echo Check for errno declaration | ||
| 56 | @@ -563,7 +563,7 @@ cat > conftest.c << _EOF_ | ||
| 57 | int main() { return closedir(opendir(".")); } | ||
| 58 | _EOF_ | ||
| 59 | |||
| 60 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 61 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 62 | if [ $? -ne 0 ]; then | ||
| 63 | OPT="" | ||
| 64 | for lib in ndir dir ucb bsd BSD PW x dirent | ||
| 65 | @@ -583,9 +583,9 @@ fi | ||
| 66 | |||
| 67 | echo Check for readlink | ||
| 68 | echo "int main(){ return readlink(); }" > conftest.c | ||
| 69 | -$CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 70 | +$CC $CFLAGS $LDFLAGS -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 71 | if [ $? -ne 0 ]; then | ||
| 72 | - $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null | ||
| 73 | + $CC $CFLAGS $LDFLAGS -o conftest conftest.c -lseq >/dev/null 2>/dev/null | ||
| 74 | [ $? -eq 0 ] && LFLAGS2="${LFLAGS2} -lseq" | ||
| 75 | fi | ||
| 76 | |||
| 77 | @@ -661,7 +661,7 @@ elif [ -f /xenix ]; then | ||
| 78 | elif uname -X >/dev/null 2>/dev/null; then | ||
| 79 | # SCO shared library check | ||
| 80 | echo "int main() { return 0;}" > conftest.c | ||
| 81 | - $CC -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null | ||
| 82 | + $CC $CFLAGS $LDFLAGS -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null | ||
| 83 | [ $? -eq 0 ] && LFLAGS2="-lc_s -nointl" | ||
| 84 | else | ||
| 85 | SYSTEM=`uname -s 2>/dev/null` || SYSTEM="unknown" | ||
| 86 | -- | ||
| 87 | 2.35.1 | ||
| 88 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-configure-use-correct-CPP.patch b/meta/recipes-extended/zip/zip-3.0/0001-configure-use-correct-CPP.patch deleted file mode 100644 index 02253f968c..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-configure-use-correct-CPP.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | From 7a2729ee7f5d9b9d4a0d9b83fe641a2ab03c4ee0 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joe Slater <joe.slater@windriver.com> | ||
| 3 | Date: Thu, 24 Feb 2022 17:36:59 -0800 | ||
| 4 | Subject: [PATCH 1/2] configure: use correct CPP | ||
| 5 | |||
| 6 | configure uses CPP to test that two assembler routines | ||
| 7 | can be built. Unfortunately, it will use /usr/bin/cpp | ||
| 8 | if it exists, invalidating the tests. We use the $CC | ||
| 9 | passed to configure. | ||
| 10 | |||
| 11 | Upstream-Status: Inappropriate [openembedded specific] | ||
| 12 | |||
| 13 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
| 14 | --- | ||
| 15 | unix/configure | 15 +++++++++------ | ||
| 16 | 1 file changed, 9 insertions(+), 6 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/unix/configure b/unix/configure | ||
| 19 | index 73ba803..7e21070 100644 | ||
| 20 | --- a/unix/configure | ||
| 21 | +++ b/unix/configure | ||
| 22 | @@ -220,13 +220,16 @@ fi | ||
| 23 | echo Check for the C preprocessor | ||
| 24 | # on SVR4, cc -E does not produce correct assembler files. Need /lib/cpp. | ||
| 25 | CPP="${CC} -E" | ||
| 26 | + | ||
| 27 | +# We should not change CPP for yocto builds. | ||
| 28 | +# | ||
| 29 | # solaris as(1) needs -P, maybe others as well ? | ||
| 30 | -[ -f /usr/ccs/lib/cpp ] && CPP="/usr/ccs/lib/cpp -P" | ||
| 31 | -[ -f /usr/lib/cpp ] && CPP=/usr/lib/cpp | ||
| 32 | -[ -f /lib/cpp ] && CPP=/lib/cpp | ||
| 33 | -[ -f /usr/bin/cpp ] && CPP=/usr/bin/cpp | ||
| 34 | -[ -f /xenix ] && CPP="${CC} -E" | ||
| 35 | -[ -f /lynx.os ] && CPP="${CC} -E" | ||
| 36 | +# [ -f /usr/ccs/lib/cpp ] && CPP="/usr/ccs/lib/cpp -P" | ||
| 37 | +# [ -f /usr/lib/cpp ] && CPP=/usr/lib/cpp | ||
| 38 | +# [ -f /lib/cpp ] && CPP=/lib/cpp | ||
| 39 | +# [ -f /usr/bin/cpp ] && CPP=/usr/bin/cpp | ||
| 40 | +# [ -f /xenix ] && CPP="${CC} -E" | ||
| 41 | +# [ -f /lynx.os ] && CPP="${CC} -E" | ||
| 42 | |||
| 43 | echo "#include <stdio.h>" > conftest.c | ||
| 44 | $CPP conftest.c >/dev/null 2>/dev/null || CPP="${CC} -E" | ||
| 45 | -- | ||
| 46 | 2.24.1 | ||
| 47 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-fileio.c-fix-a-buffer-overflow-detected-issue.patch b/meta/recipes-extended/zip/zip-3.0/0001-fileio.c-fix-a-buffer-overflow-detected-issue.patch deleted file mode 100644 index d760dfcec5..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-fileio.c-fix-a-buffer-overflow-detected-issue.patch +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | From 23b4ed82bff20c737fe2e95d5b035e92a9522ca2 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ming Liu <liu.ming50@gmail.com> | ||
| 3 | Date: Thu, 15 May 2025 13:58:45 +0200 | ||
| 4 | Subject: [PATCH] fileio.c: fix a buffer overflow detected issue | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | Fix a following issue: | ||
| 10 | | *** buffer overflow detected ***: terminated | ||
| 11 | | | ||
| 12 | | zip error: Interrupted (aborting) | ||
| 13 | |||
| 14 | Reference: https://bugzilla.redhat.com/show_bug.cgi?id=2165653 | ||
| 15 | |||
| 16 | Upstream-Status: Inactive-Upstream [the fix is from Redhat but not the official project] | ||
| 17 | |||
| 18 | Signed-off-by: Ming Liu <liu.ming50@gmail.com> | ||
| 19 | --- | ||
| 20 | fileio.c | 2 +- | ||
| 21 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 22 | |||
| 23 | diff --git a/fileio.c b/fileio.c | ||
| 24 | index 1847e62..5a2959d 100644 | ||
| 25 | --- a/fileio.c | ||
| 26 | +++ b/fileio.c | ||
| 27 | @@ -3502,7 +3502,7 @@ zwchar *local_to_wide_string(local_string) | ||
| 28 | if ((wc_string = (wchar_t *)malloc((wsize + 1) * sizeof(wchar_t))) == NULL) { | ||
| 29 | ZIPERR(ZE_MEM, "local_to_wide_string"); | ||
| 30 | } | ||
| 31 | - wsize = mbstowcs(wc_string, local_string, strlen(local_string) + 1); | ||
| 32 | + wsize = mbstowcs(wc_string, local_string, wsize + 1); | ||
| 33 | wc_string[wsize] = (wchar_t) 0; | ||
| 34 | |||
| 35 | /* in case wchar_t is not zwchar */ | ||
| 36 | -- | ||
| 37 | 2.43.0 | ||
| 38 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-unix-configure-use-_Static_assert-to-do-correct-dete.patch b/meta/recipes-extended/zip/zip-3.0/0001-unix-configure-use-_Static_assert-to-do-correct-dete.patch deleted file mode 100644 index 106f246a7c..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0001-unix-configure-use-_Static_assert-to-do-correct-dete.patch +++ /dev/null | |||
| @@ -1,96 +0,0 @@ | |||
| 1 | From 9916fc6f1f93f3e092e3c6937c30dc8137c26d34 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chen Qi <Qi.Chen@windriver.com> | ||
| 3 | Date: Thu, 15 Jun 2023 18:31:26 +0800 | ||
| 4 | Subject: [PATCH] unix/configure: use _Static_assert to do correct detection | ||
| 5 | |||
| 6 | We're doing cross compilation, running a cross-compiled problem | ||
| 7 | on host to detemine feature is not correct. Use _Static_assert | ||
| 8 | to do the detection correctly. | ||
| 9 | |||
| 10 | Upstream-Status: Inactive-Upstream | ||
| 11 | |||
| 12 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
| 13 | --- | ||
| 14 | unix/configure | 42 ++++++++++++------------------------------ | ||
| 15 | 1 file changed, 12 insertions(+), 30 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/unix/configure b/unix/configure | ||
| 18 | index f2b3d02..f917086 100644 | ||
| 19 | --- a/unix/configure | ||
| 20 | +++ b/unix/configure | ||
| 21 | @@ -361,6 +361,10 @@ cat > conftest.c << _EOF_ | ||
| 22 | #include <sys/stat.h> | ||
| 23 | #include <unistd.h> | ||
| 24 | #include <stdio.h> | ||
| 25 | + | ||
| 26 | +_Static_assert(sizeof((struct stat){0}.st_uid) == 2, "sizeof st_uid is not 16 bit"); | ||
| 27 | +_Static_assert(sizeof((struct stat){0}.st_gid) == 2, "sizeof st_gid is not 16 bit"); | ||
| 28 | + | ||
| 29 | int main() | ||
| 30 | { | ||
| 31 | struct stat s; | ||
| 32 | @@ -385,21 +389,7 @@ if [ $? -ne 0 ]; then | ||
| 33 | echo -- UID/GID test failed on compile - disabling old 16-bit UID/GID support | ||
| 34 | CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" | ||
| 35 | else | ||
| 36 | -# run it | ||
| 37 | - ./conftest | ||
| 38 | - r=$? | ||
| 39 | - if [ $r -eq 1 ]; then | ||
| 40 | - echo -- UID not 2 bytes - disabling old 16-bit UID/GID support | ||
| 41 | - CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" | ||
| 42 | - elif [ $r -eq 2 ]; then | ||
| 43 | - echo -- GID not 2 bytes - disabling old 16-bit UID/GID support | ||
| 44 | - CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" | ||
| 45 | - elif [ $r -eq 3 ]; then | ||
| 46 | - echo -- 16-bit UIDs and GIDs - keeping old 16-bit UID/GID support | ||
| 47 | - else | ||
| 48 | - echo -- test failed - conftest returned $r - disabling old 16-bit UID/GID support | ||
| 49 | - CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" | ||
| 50 | - fi | ||
| 51 | + echo -- 16-bit UIDs and GIDs - keeping old 16-bit UID/GID support | ||
| 52 | fi | ||
| 53 | |||
| 54 | |||
| 55 | @@ -417,6 +407,10 @@ cat > conftest.c << _EOF_ | ||
| 56 | #include <sys/stat.h> | ||
| 57 | #include <unistd.h> | ||
| 58 | #include <stdio.h> | ||
| 59 | + | ||
| 60 | +_Static_assert(sizeof(off_t) < 8, "sizeof off_t < 8 failed"); | ||
| 61 | +_Static_assert(sizeof((struct stat){0}.st_size) < 8, "sizeof st_size < 8 failed"); | ||
| 62 | + | ||
| 63 | int main() | ||
| 64 | { | ||
| 65 | off_t offset; | ||
| 66 | @@ -436,24 +430,12 @@ _EOF_ | ||
| 67 | # compile it | ||
| 68 | $CC -o conftest conftest.c >/dev/null 2>/dev/null | ||
| 69 | if [ $? -ne 0 ]; then | ||
| 70 | - echo -- no Large File Support | ||
| 71 | + echo -- yes we have Large File Support! | ||
| 72 | + CFLAGS="${CFLAGS} -DLARGE_FILE_SUPPORT" | ||
| 73 | else | ||
| 74 | -# run it | ||
| 75 | - ./conftest | ||
| 76 | - r=$? | ||
| 77 | - if [ $r -eq 1 ]; then | ||
| 78 | - echo -- no Large File Support - no 64-bit off_t | ||
| 79 | - elif [ $r -eq 2 ]; then | ||
| 80 | - echo -- no Large File Support - no 64-bit stat | ||
| 81 | - elif [ $r -eq 3 ]; then | ||
| 82 | - echo -- yes we have Large File Support! | ||
| 83 | - CFLAGS="${CFLAGS} -DLARGE_FILE_SUPPORT" | ||
| 84 | - else | ||
| 85 | - echo -- no Large File Support - conftest returned $r | ||
| 86 | - fi | ||
| 87 | + echo -- no Large File Support | ||
| 88 | fi | ||
| 89 | |||
| 90 | - | ||
| 91 | # Check for wide char for Unicode support | ||
| 92 | # Added 11/24/2005 EG | ||
| 93 | |||
| 94 | -- | ||
| 95 | 2.34.1 | ||
| 96 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/0002-configure-support-PIC-code-build.patch b/meta/recipes-extended/zip/zip-3.0/0002-configure-support-PIC-code-build.patch deleted file mode 100644 index 6e0879616a..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/0002-configure-support-PIC-code-build.patch +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | From b0492506d2c28581193906e9d260d4f0451e2c39 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Joe Slater <joe.slater@windriver.com> | ||
| 3 | Date: Thu, 24 Feb 2022 17:46:03 -0800 | ||
| 4 | Subject: [PATCH 2/2] configure: support PIC code build | ||
| 5 | |||
| 6 | Disable building match.S. The code requires | ||
| 7 | relocation in .text. | ||
| 8 | |||
| 9 | Upstream-Status: Inappropriate [openembedded specific] | ||
| 10 | |||
| 11 | Signed-off-by: Joe Slater <joe.slater@windriver.com> | ||
| 12 | --- | ||
| 13 | unix/configure | 5 +++-- | ||
| 14 | 1 file changed, 3 insertions(+), 2 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/unix/configure b/unix/configure | ||
| 17 | index 7e21070..1bc698b 100644 | ||
| 18 | --- a/unix/configure | ||
| 19 | +++ b/unix/configure | ||
| 20 | @@ -242,8 +242,9 @@ if eval "$CPP match.S > _match.s 2>/dev/null"; then | ||
| 21 | if test ! -s _match.s || grep error < _match.s > /dev/null; then | ||
| 22 | : | ||
| 23 | elif eval "$CC -c _match.s >/dev/null 2>/dev/null" && [ -f _match.o ]; then | ||
| 24 | - CFLAGS="${CFLAGS} -DASMV" | ||
| 25 | - OBJA="match.o" | ||
| 26 | + # disable match.S for PIC code | ||
| 27 | + # CFLAGS="${CFLAGS} -DASMV" | ||
| 28 | + # OBJA="match.o" | ||
| 29 | echo "int foo() { return 0;}" > conftest.c | ||
| 30 | $CC -c conftest.c >/dev/null 2>/dev/null | ||
| 31 | echo Check if compiler generates underlines | ||
| 32 | -- | ||
| 33 | 2.24.1 | ||
| 34 | |||
diff --git a/meta/recipes-extended/zip/zip-3.0/10-remove-build-date.patch b/meta/recipes-extended/zip/zip-3.0/10-remove-build-date.patch deleted file mode 100644 index 6fd04df1c6..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/10-remove-build-date.patch +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | From: Santiago Vila <sanvila@debian.org> | ||
| 2 | Subject: Remove (optional) build date to make the build reproducible | ||
| 3 | Bug-Debian: http://bugs.debian.org/779042 | ||
| 4 | |||
| 5 | Upstream-Status: Inactive-Upstream [no upstream] | ||
| 6 | |||
| 7 | Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> | ||
| 8 | |||
| 9 | --- a/unix/unix.c | ||
| 10 | +++ b/unix/unix.c | ||
| 11 | @@ -1020,7 +1020,7 @@ | ||
| 12 | |||
| 13 | |||
| 14 | /* Define the compile date string */ | ||
| 15 | -#ifdef __DATE__ | ||
| 16 | +#if 0 | ||
| 17 | # define COMPILE_DATE " on " __DATE__ | ||
| 18 | #else | ||
| 19 | # define COMPILE_DATE "" | ||
diff --git a/meta/recipes-extended/zip/zip-3.0/fix-security-format.patch b/meta/recipes-extended/zip/zip-3.0/fix-security-format.patch deleted file mode 100644 index f85fddbc60..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/fix-security-format.patch +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | zip: Fixing security formatting issues | ||
| 2 | |||
| 3 | Fix security formatting issues related to printing without NULL argument | ||
| 4 | |||
| 5 | zip.c: In function 'help_extended': | ||
| 6 | zip.c:1031:5: error: format not a string literal and no format arguments [-Werror=format-security] | ||
| 7 | printf(text[i]); | ||
| 8 | ^ | ||
| 9 | zip.c: In function 'version_info': | ||
| 10 | zip.c:1228:5: error: format not a string literal and no format arguments [-Werror=format-security] | ||
| 11 | printf(cryptnote[i]); | ||
| 12 | ^ | ||
| 13 | |||
| 14 | [YOCTO #9552] | ||
| 15 | [https://bugzilla.yoctoproject.org/show_bug.cgi?id=9552] | ||
| 16 | |||
| 17 | Upstream-Status: Inactive-Upstream [need a new release] | ||
| 18 | |||
| 19 | Signed-off-by: Edwin Plauchu <edwin.plauchu.camacho@intel.com> | ||
| 20 | |||
| 21 | diff --git a/zip.c b/zip.c | ||
| 22 | index 439821f..d7da768 100644 | ||
| 23 | --- a/zip.c | ||
| 24 | +++ b/zip.c | ||
| 25 | @@ -1028,7 +1028,7 @@ local void help_extended() | ||
| 26 | |||
| 27 | for (i = 0; i < sizeof(text)/sizeof(char *); i++) | ||
| 28 | { | ||
| 29 | - printf(text[i]); | ||
| 30 | + fputs(text[i],stdout); | ||
| 31 | putchar('\n'); | ||
| 32 | } | ||
| 33 | #ifdef DOS | ||
| 34 | @@ -1225,7 +1225,7 @@ local void version_info() | ||
| 35 | CR_MAJORVER, CR_MINORVER, CR_BETA_VER, CR_VERSION_DATE); | ||
| 36 | for (i = 0; i < sizeof(cryptnote)/sizeof(char *); i++) | ||
| 37 | { | ||
| 38 | - printf(cryptnote[i]); | ||
| 39 | + fputs(cryptnote[i],stdout); | ||
| 40 | putchar('\n'); | ||
| 41 | } | ||
| 42 | ++i; /* crypt support means there IS at least one compilation option */ | ||
diff --git a/meta/recipes-extended/zip/zip-3.0/zipnote-crashes-with-segfault.patch b/meta/recipes-extended/zip/zip-3.0/zipnote-crashes-with-segfault.patch deleted file mode 100644 index 77ade40a04..0000000000 --- a/meta/recipes-extended/zip/zip-3.0/zipnote-crashes-with-segfault.patch +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | Close the correct file descriptor | ||
| 2 | |||
| 3 | https://bugs.archlinux.org/task/47713 | ||
| 4 | |||
| 5 | Signed-off-by: Jate Sujjavanich <jatedev@gmail.com> | ||
| 6 | |||
| 7 | Upstream-Status: Inactive-Upstream [no upstream] | ||
| 8 | |||
| 9 | diff --git a/zipnote.c b/zipnote.c | ||
| 10 | index 5e02cb6..996f012 100644 | ||
| 11 | --- a/zipnote.c | ||
| 12 | +++ b/zipnote.c | ||
| 13 | @@ -661,7 +661,7 @@ char **argv; /* command line tokens */ | ||
| 14 | if ((r = zipcopy(z)) != ZE_OK) | ||
| 15 | ziperr(r, "was copying an entry"); | ||
| 16 | } | ||
| 17 | - fclose(x); | ||
| 18 | + fclose(in_file); | ||
| 19 | |||
| 20 | /* Write central directory and end of central directory with new comments */ | ||
| 21 | if ((c = zftello(y)) == (zoff_t)-1) /* get start of central */ | ||
| 22 | |||
diff --git a/meta/recipes-extended/zip/zip_3.0.bb b/meta/recipes-extended/zip/zip_3.0.bb deleted file mode 100644 index d1092551f7..0000000000 --- a/meta/recipes-extended/zip/zip_3.0.bb +++ /dev/null | |||
| @@ -1,54 +0,0 @@ | |||
| 1 | SUMMARY = "Compressor/archiver for creating and modifying .zip files" | ||
| 2 | HOMEPAGE = "http://www.info-zip.org" | ||
| 3 | DESCRIPTION = "Info-ZIP's purpose is to provide free, portable, high-quality versions of the Zip and UnZip compressor-archiver utilities that are compatible with the DOS-based PKZIP by PKWARE, Inc." | ||
| 4 | SECTION = "console/utils" | ||
| 5 | |||
| 6 | LICENSE = "Info-ZIP" | ||
| 7 | LIC_FILES_CHKSUM = "file://LICENSE;md5=04d43c5d70b496c032308106e26ae17d" | ||
| 8 | |||
| 9 | S = "${UNPACKDIR}/zip30" | ||
| 10 | |||
| 11 | SRC_URI = "${SOURCEFORGE_MIRROR}/infozip/Zip%203.x%20%28latest%29/3.0/zip30.tar.gz \ | ||
| 12 | file://fix-security-format.patch \ | ||
| 13 | file://10-remove-build-date.patch \ | ||
| 14 | file://zipnote-crashes-with-segfault.patch \ | ||
| 15 | file://0001-configure-use-correct-CPP.patch \ | ||
| 16 | file://0002-configure-support-PIC-code-build.patch \ | ||
| 17 | file://0001-configure-Use-CFLAGS-and-LDFLAGS-when-doing-link-tes.patch \ | ||
| 18 | file://0001-configure-Specify-correct-function-signatures-and-de.patch \ | ||
| 19 | file://0001-unix-configure-use-_Static_assert-to-do-correct-dete.patch \ | ||
| 20 | file://0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch \ | ||
| 21 | file://0001-fileio.c-fix-a-buffer-overflow-detected-issue.patch \ | ||
| 22 | " | ||
| 23 | UPSTREAM_VERSION_UNKNOWN = "1" | ||
| 24 | |||
| 25 | SRC_URI[sha256sum] = "f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369" | ||
| 26 | |||
| 27 | CVE_STATUS[CVE-2018-13410] = "disputed: Disputed and also Debian doesn't consider a vulnerability" | ||
| 28 | CVE_STATUS[CVE-2018-13684] = "cpe-incorrect: Not for zip but for smart contract implementation for it" | ||
| 29 | |||
| 30 | # zip.inc sets CFLAGS, but what Makefile actually uses is | ||
| 31 | # CFLAGS_NOOPT. It will also force -O3 optimization, overriding | ||
| 32 | # whatever we set. | ||
| 33 | EXTRA_OEMAKE = "'CC=${CC}' 'BIND=${CC}' 'AS=${CC} -c' 'CPP=${CPP}' \ | ||
| 34 | 'CFLAGS=-I. -DUNIX ${CFLAGS}' \ | ||
| 35 | 'CFLAGS_NOOPT=-I. -DUNIX ${CFLAGS}' \ | ||
| 36 | 'INSTALL=install' 'INSTALL_D=install -d' \ | ||
| 37 | 'BINFLAGS=0755'" | ||
| 38 | |||
| 39 | do_compile() { | ||
| 40 | oe_runmake -f unix/Makefile flags IZ_BZIP2=no_such_directory | ||
| 41 | sed -i 's#LFLAGS1=""#LFLAGS1="${LDFLAGS}"#' flags | ||
| 42 | oe_runmake -f unix/Makefile generic IZ_BZIP2=no_such_directory | ||
| 43 | } | ||
| 44 | |||
| 45 | do_install() { | ||
| 46 | oe_runmake -f unix/Makefile prefix=${D}${prefix} \ | ||
| 47 | BINDIR=${D}${bindir} MANDIR=${D}${mandir}/man1 \ | ||
| 48 | install | ||
| 49 | } | ||
| 50 | |||
| 51 | BBCLASSEXTEND = "native" | ||
| 52 | |||
| 53 | # exclude version 2.3.2 which triggers a false positive | ||
| 54 | UPSTREAM_CHECK_REGEX = "^zip(?P<pver>(?!232).+)\.tgz" | ||
diff --git a/meta/recipes-extended/zstd/zstd_1.5.7.bb b/meta/recipes-extended/zstd/zstd_1.5.7.bb deleted file mode 100644 index 0e872b95aa..0000000000 --- a/meta/recipes-extended/zstd/zstd_1.5.7.bb +++ /dev/null | |||
| @@ -1,44 +0,0 @@ | |||
| 1 | SUMMARY = "Zstandard - Fast real-time compression algorithm" | ||
| 2 | DESCRIPTION = "Zstandard is a fast lossless compression algorithm, targeting \ | ||
| 3 | real-time compression scenarios at zlib-level and better compression ratios. \ | ||
| 4 | It's backed by a very fast entropy stage, provided by Huff0 and FSE library." | ||
| 5 | HOMEPAGE = "http://www.zstd.net/" | ||
| 6 | SECTION = "console/utils" | ||
| 7 | |||
| 8 | LICENSE = "BSD-3-Clause | GPL-2.0-only" | ||
| 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=0822a32f7acdbe013606746641746ee8 \ | ||
| 10 | file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0 \ | ||
| 11 | " | ||
| 12 | |||
| 13 | SRC_URI = "git://github.com/facebook/zstd.git;branch=release;protocol=https" | ||
| 14 | |||
| 15 | SRCREV = "f8745da6ff1ad1e7bab384bd1f9d742439278e99" | ||
| 16 | UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" | ||
| 17 | |||
| 18 | CVE_PRODUCT = "zstandard" | ||
| 19 | |||
| 20 | PACKAGECONFIG ??= "" | ||
| 21 | PACKAGECONFIG[lz4] = "HAVE_LZ4=1,HAVE_LZ4=0,lz4" | ||
| 22 | PACKAGECONFIG[lzma] = "HAVE_LZMA=1,HAVE_LZMA=0,xz" | ||
| 23 | PACKAGECONFIG[zlib] = "HAVE_ZLIB=1,HAVE_ZLIB=0,zlib" | ||
| 24 | |||
| 25 | # See programs/README.md for how to use this | ||
| 26 | ZSTD_LEGACY_SUPPORT ??= "4" | ||
| 27 | |||
| 28 | EXTRA_OEMAKE += "V=1" | ||
| 29 | |||
| 30 | do_compile () { | ||
| 31 | oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT} | ||
| 32 | oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT} -C contrib/pzstd | ||
| 33 | } | ||
| 34 | |||
| 35 | do_install () { | ||
| 36 | oe_runmake install 'DESTDIR=${D}' | ||
| 37 | oe_runmake install 'DESTDIR=${D}' PREFIX=${prefix} -C contrib/pzstd | ||
| 38 | } | ||
| 39 | |||
| 40 | PACKAGE_BEFORE_PN = "libzstd" | ||
| 41 | |||
| 42 | FILES:libzstd = "${libdir}/libzstd${SOLIBS}" | ||
| 43 | |||
| 44 | BBCLASSEXTEND = "native nativesdk" | ||
