added my Recipes
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
From fa8371d348f6a8b0799b2e6c38247dd1399d85e3 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sat, 8 Apr 2017 08:49:48 -0700
|
||||
Subject: [PATCH] Fix build with clang
|
||||
|
||||
ATTRIBUTE_FORMAT_ARG macro gets computed to be empty with clang
|
||||
whereas it does support format attribute, we hard code it
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/shar-opts.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/shar-opts.h b/src/shar-opts.h
|
||||
index a287046..172676f 100644
|
||||
--- a/src/shar-opts.h
|
||||
+++ b/src/shar-opts.h
|
||||
@@ -377,7 +377,7 @@ extern tOptions sharOptions;
|
||||
# define ATTRIBUTE_FORMAT_ARG(_a)
|
||||
# endif
|
||||
|
||||
-static inline char* aoGetsText(char const* pz) ATTRIBUTE_FORMAT_ARG(1);
|
||||
+static inline char* aoGetsText(char const* pz) __attribute__ ((format_arg(1)));
|
||||
static inline char* aoGetsText(char const* pz) {
|
||||
if (pz == NULL) return NULL;
|
||||
return (char*)gettext(pz);
|
||||
--
|
||||
2.12.2
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
From 7a2fe915dded27630a345762628cdd542ea5d58a Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Fri, 20 Dec 2019 13:56:16 +0100
|
||||
Subject: [PATCH] Fix build with recent gettext
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
---
|
||||
Makefile.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 03d1131..65609e7 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -17,5 +17,5 @@
|
||||
## Process this file with automake to produce Makefile.in.
|
||||
|
||||
EXTRA_DIST = config.rpath m4 $(DIST_ALPHA)
|
||||
-SUBDIRS = intl lib libopts src doc po tests
|
||||
+SUBDIRS = lib libopts src doc po tests
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
@@ -0,0 +1,98 @@
|
||||
From b7dd97708b9d0ed09d8d7ac435f8b25eadbf6487 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=83=C2=ADsa=C3=85=E2=84=A2?= <address@hidden>
|
||||
Date: Thu, 13 Aug 2020 11:20:38 -0700
|
||||
Subject: [PATCH 1/2] Fix building with GCC 10
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
GCC 10 defaults to -fno-common that results into errors on multiple
|
||||
global variable definitions:
|
||||
|
||||
/usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld:
|
||||
shar-opts.o:(.data.rel.ro.local+0x0): multiple definition of
|
||||
`program_name'; shar.o:(.rodata+0x10): first defined here
|
||||
|
||||
This patch fixes it by changing the definitions in header files into extern
|
||||
declarations.
|
||||
|
||||
<https://lists.gnu.org/archive/html/bug-gnu-utils/2020-01/msg00001.html>
|
||||
|
||||
Signed-off-by: Petr PÃsaÅ™ <address@hidden>
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/shar-opts.h | 2 +-
|
||||
src/shar-std.def | 2 +-
|
||||
src/unshar-opts.h | 2 +-
|
||||
src/uudecode-opts.h | 2 +-
|
||||
src/uuencode-opts.h | 2 +-
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/shar-opts.h b/src/shar-opts.h
|
||||
index 172676f..f6e4e79 100644
|
||||
--- a/src/shar-opts.h
|
||||
+++ b/src/shar-opts.h
|
||||
@@ -352,7 +352,7 @@ extern "C" {
|
||||
* global exported definitions
|
||||
*/
|
||||
#include "local.h"
|
||||
-char const * const program_name;
|
||||
+extern char const * const program_name;
|
||||
|
||||
extern bool initialization_done;
|
||||
extern int optidx;
|
||||
diff --git a/src/shar-std.def b/src/shar-std.def
|
||||
index ed06b77..a28f61c 100644
|
||||
--- a/src/shar-std.def
|
||||
+++ b/src/shar-std.def
|
||||
@@ -41,7 +41,7 @@ no-misuse-usage;
|
||||
usage-message;
|
||||
die-code;
|
||||
|
||||
-export = '#include "local.h"'"\nchar const * const program_name;";
|
||||
+export = '#include "local.h"'"\nextern char const * const program_name;";
|
||||
|
||||
#shell
|
||||
echo "include = 'char const * const program_name = \"${progname}\";';"
|
||||
diff --git a/src/unshar-opts.h b/src/unshar-opts.h
|
||||
index 568ffca..aa85833 100644
|
||||
--- a/src/unshar-opts.h
|
||||
+++ b/src/unshar-opts.h
|
||||
@@ -192,7 +192,7 @@ extern "C" {
|
||||
extern size_t separator_str_len;
|
||||
|
||||
#include "local.h"
|
||||
-char const * const program_name;
|
||||
+extern char const * const program_name;
|
||||
|
||||
|
||||
/* * * * * *
|
||||
diff --git a/src/uudecode-opts.h b/src/uudecode-opts.h
|
||||
index 5b74419..289a366 100644
|
||||
--- a/src/uudecode-opts.h
|
||||
+++ b/src/uudecode-opts.h
|
||||
@@ -170,7 +170,7 @@ extern "C" {
|
||||
* global exported definitions
|
||||
*/
|
||||
#include "local.h"
|
||||
-char const * const program_name;
|
||||
+extern char const * const program_name;
|
||||
|
||||
|
||||
/* * * * * *
|
||||
diff --git a/src/uuencode-opts.h b/src/uuencode-opts.h
|
||||
index 1a5b7bc..f2df0a8 100644
|
||||
--- a/src/uuencode-opts.h
|
||||
+++ b/src/uuencode-opts.h
|
||||
@@ -166,7 +166,7 @@ extern "C" {
|
||||
* global exported definitions
|
||||
*/
|
||||
#include "local.h"
|
||||
-char const * const program_name;
|
||||
+extern char const * const program_name;
|
||||
|
||||
|
||||
/* * * * * *
|
||||
--
|
||||
2.28.0
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
From ab981e1a973e83edb6ea19e6e84102f43ded0dcb Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Thu, 13 Aug 2020 11:22:40 -0700
|
||||
Subject: [PATCH 2/2] Do not include lib/md5.c into src/shar.c
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
ib/md5.o is part of libgnu.a that is linked to shar. There is no
|
||||
point in linking md5.o twice into shar executable. Moreover SuSE
|
||||
reports that this triggers a linking error with GCC 10:
|
||||
|
||||
/usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld:
|
||||
../lib/libgnu.a(md5.o): in function `md5_stream':
|
||||
[ 30s] md5.c:(.text+0x15d): multiple definition of `md5_stream';
|
||||
shar.o:shar.c:(.text+0x28): first defined here
|
||||
|
||||
<https://lists.gnu.org/archive/html/bug-gnu-utils/2020-01/msg00001.html>
|
||||
|
||||
Signed-off-by: Petr PÃsaÅ™ <address@hidden>
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/shar.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/src/shar.c b/src/shar.c
|
||||
index 11cbada..6d7ed1d 100644
|
||||
--- a/src/shar.c
|
||||
+++ b/src/shar.c
|
||||
@@ -53,7 +53,6 @@ static const char cright_years_z[] =
|
||||
|
||||
#include "inttostr.h"
|
||||
#include "liballoca.h"
|
||||
-#include "md5.c"
|
||||
#include "md5.h"
|
||||
#include "quotearg.h"
|
||||
#include "xalloc.h"
|
||||
--
|
||||
2.28.0
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
From bd68ae1271598e8fdc72f2adb457e6882604582d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Thu, 22 Feb 2018 16:39:43 +0100
|
||||
Subject: [PATCH] Fix a heap-buffer-overflow in find_archive()
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
rw_buffer has allocated rw_base_size bytes. But subsequend fgets() in
|
||||
find_archive() reads up-to BUFSIZ bytes.
|
||||
|
||||
On my system, BUFSIZ is 8192. rw_base_size is usually equaled to
|
||||
a memory page size, 4096 on my system. Thus find_archive() can write
|
||||
beyonded allocated memmory for rw_buffer array:
|
||||
|
||||
$ valgrind -- ./unshar /tmp/id\:000000\,sig\:06\,src\:000005+000030\,op\:splice\,rep\:4
|
||||
==30582== Memcheck, a memory error detector
|
||||
==30582== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
|
||||
==30582== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
|
||||
==30582== Command: ./unshar /tmp/id:000000,sig:06,src:000005+000030,op:splice,rep:4
|
||||
==30582==
|
||||
==30582== Invalid write of size 1
|
||||
==30582== at 0x4EAB480: _IO_getline_info (in /usr/lib64/libc-2.27.so)
|
||||
==30582== by 0x4EB47C2: fgets_unlocked (in /usr/lib64/libc-2.27.so)
|
||||
==30582== by 0x10BF60: fgets_unlocked (stdio2.h:320)
|
||||
==30582== by 0x10BF60: find_archive (unshar.c:243)
|
||||
==30582== by 0x10BF60: unshar_file (unshar.c:379)
|
||||
==30582== by 0x10BCCC: validate_fname (unshar-opts.c:604)
|
||||
==30582== by 0x10BCCC: main (unshar-opts.c:639)
|
||||
==30582== Address 0x523a790 is 0 bytes after a block of size 4,096 alloc'd
|
||||
==30582== at 0x4C2DBBB: malloc (vg_replace_malloc.c:299)
|
||||
==30582== by 0x10C670: init_unshar (unshar.c:450)
|
||||
==30582== by 0x10BC55: main (unshar-opts.c:630)
|
||||
|
||||
This was reported in
|
||||
<http://lists.gnu.org/archive/html/bug-gnu-utils/2018-02/msg00004.html>.
|
||||
|
||||
CVE: CVE-2018-1000097
|
||||
Upstream-Status: Inappropriate [no upstream]
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
Signed-off-by: Sinan Kaya <okaya@kernel.org>
|
||||
---
|
||||
src/unshar.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/unshar.c b/src/unshar.c
|
||||
index 80bc3a9..0fc3773 100644
|
||||
--- a/src/unshar.c
|
||||
+++ b/src/unshar.c
|
||||
@@ -240,7 +240,7 @@ find_archive (char const * name, FILE * file, off_t start)
|
||||
off_t position = ftello (file);
|
||||
|
||||
/* Read next line, fail if no more and no previous process. */
|
||||
- if (!fgets (rw_buffer, BUFSIZ, file))
|
||||
+ if (!fgets (rw_buffer, rw_base_size, file))
|
||||
{
|
||||
if (!start)
|
||||
error (0, 0, _("Found no shell commands in %s"), name);
|
||||
--
|
||||
2.19.0
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
SUMMARY = "This is the set of GNU shar utilities."
|
||||
HOMEPAGE = "http://www.gnu.org/software/sharutils/"
|
||||
SECTION = "console/utils"
|
||||
LICENSE="GPL-3.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
inherit gettext autotools update-alternatives
|
||||
|
||||
SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \
|
||||
file://0001-Fix-build-with-clang.patch \
|
||||
file://CVE-2018-1000097.patch \
|
||||
file://0001-Fix-build-with-recent-gettext.patch \
|
||||
file://0001-Fix-building-with-GCC-10.patch \
|
||||
file://0002-Do-not-include-lib-md5.c-into-src-shar.c.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "32a51b23e25ad5e6af4b89f228be1800"
|
||||
SRC_URI[sha256sum] = "ee336e68549664e7a19b117adf02edfdeac6307f22e5ba78baca457116914637"
|
||||
|
||||
do_install:append() {
|
||||
if [ -e ${D}${libdir}/charset.alias ]
|
||||
then
|
||||
rm -rf ${D}${libdir}/charset.alias
|
||||
rmdir --ignore-fail-on-non-empty ${D}${libdir}
|
||||
fi
|
||||
}
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
ALTERNATIVE:${PN} = "uudecode uuencode"
|
||||
ALTERNATIVE_LINK_NAME[uudecode] = "${bindir}/uudecode"
|
||||
ALTERNATIVE_LINK_NAME[uuencode] = "${bindir}/uuencode"
|
||||
Reference in New Issue
Block a user