Update to 0.11.7 (#1742611)
parent
3bd54ea9c0
commit
adbc8d9363
@ -1,12 +1,2 @@
|
||||
libbsd-0.2.0.tar.gz
|
||||
/libbsd-0.3.0.tar.gz
|
||||
/libbsd-0.4.1.tar.gz
|
||||
/libbsd-0.4.2.tar.gz
|
||||
/libbsd-0.5.1.tar.xz
|
||||
/libbsd-0.5.2.tar.xz
|
||||
/libbsd-0.6.0.tar.xz
|
||||
/libbsd-0.7.0.tar.xz
|
||||
/libbsd-0.8.3.tar.xz
|
||||
/libbsd-0.8.6.tar.xz
|
||||
/libbsd-0.9.1.tar.xz
|
||||
/libbsd-0.10.0.tar.xz
|
||||
/libbsd-*.tar.xz
|
||||
/libbsd-*.tar.xz.asc
|
||||
|
@ -0,0 +1,63 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
=Gi+y
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
@ -0,0 +1,83 @@
|
||||
From d5865759f8698f1c75339451a26fa3ae00276a51 Mon Sep 17 00:00:00 2001
|
||||
From: Guillem Jover <guillem@hadrons.org>
|
||||
Date: Thu, 25 Aug 2022 00:52:43 +0200
|
||||
Subject: [PATCH] test: Fix explicit_bzero() test on the Hurd
|
||||
|
||||
On the Hurd a small read(3) might end up (indirectly) copying the data
|
||||
on the stack, which we will end up finding even when we have cleared
|
||||
the buffer.
|
||||
|
||||
To avoid these side effects, we add a new function, that we force not
|
||||
to be inlined, so that we can reuse the same stack space, that will
|
||||
blank any possible stack side effects. This should be portable
|
||||
regardless of stack growing up or down.
|
||||
|
||||
Diagnosis-by: Samuel Thibault <sthibault@debian.org>
|
||||
---
|
||||
COPYING | 2 +-
|
||||
test/explicit_bzero.c | 15 +++++++++++++++
|
||||
2 files changed, 16 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/COPYING b/COPYING
|
||||
index 67223d4..cf43edd 100644
|
||||
--- a/COPYING
|
||||
+++ b/COPYING
|
||||
@@ -369,7 +369,7 @@ Copyright:
|
||||
Copyright © 2014 Theo de Raadt <deraadt@openbsd.org>
|
||||
Copyright © 2014 Google Inc.
|
||||
Copyright © 2015 Michael Felt <aixtools@gmail.com>
|
||||
- Copyright © 2015 Guillem Jover <guillem@hadrons.org>
|
||||
+ Copyright © 2015, 2022 Guillem Jover <guillem@hadrons.org>
|
||||
License: ISC
|
||||
Permission to use, copy, modify, and distribute this software for any
|
||||
purpose with or without fee is hereby granted, provided that the above
|
||||
diff --git a/test/explicit_bzero.c b/test/explicit_bzero.c
|
||||
index 74993c2..bee29de 100644
|
||||
--- a/test/explicit_bzero.c
|
||||
+++ b/test/explicit_bzero.c
|
||||
@@ -1,6 +1,7 @@
|
||||
/* $OpenBSD: explicit_bzero.c,v 1.7 2021/03/27 11:17:58 bcook Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2014 Google Inc.
|
||||
+ * Copyright (c) 2022 Guillem Jover <guillem@hadrons.org>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -123,6 +124,18 @@ populate_secret(char *buf, ssize_t len)
|
||||
ASSERT_EQ(0, close(fds[0]));
|
||||
}
|
||||
|
||||
+static void __attribute__((__noinline__))
|
||||
+blank_stack_side_effects(char *buf, size_t len)
|
||||
+{
|
||||
+ char scratch[SECRETBYTES * 4];
|
||||
+
|
||||
+ /* If the read(3) in populate_secret() wrote into the stack, as it
|
||||
+ * might happen on the Hurd for small data, then we might incorrectly
|
||||
+ * detect the wrong secret on the stack. */
|
||||
+ memset(scratch, 0xFF, sizeof(scratch));
|
||||
+ ASSERT_EQ(NULL, memmem(scratch, sizeof(scratch), buf, len));
|
||||
+}
|
||||
+
|
||||
static int
|
||||
count_secrets(const char *buf)
|
||||
{
|
||||
@@ -143,6 +156,7 @@ test_without_bzero(void)
|
||||
char *res;
|
||||
assert_on_stack();
|
||||
populate_secret(buf, sizeof(buf));
|
||||
+ blank_stack_side_effects(buf, sizeof(buf));
|
||||
res = memmem(altstack, ALTSTACK_SIZE, buf, sizeof(buf));
|
||||
ASSERT_NE(NULL, res);
|
||||
return (res);
|
||||
@@ -155,6 +169,7 @@ test_with_bzero(void)
|
||||
char *res;
|
||||
assert_on_stack();
|
||||
populate_secret(buf, sizeof(buf));
|
||||
+ blank_stack_side_effects(buf, sizeof(buf));
|
||||
res = memmem(altstack, ALTSTACK_SIZE, buf, sizeof(buf));
|
||||
ASSERT_NE(NULL, res);
|
||||
explicit_bzero(buf, sizeof(buf));
|
||||
--
|
||||
GitLab
|
||||
|
@ -1,28 +0,0 @@
|
||||
diff -up libbsd-0.8.3/include/bsd/stdio.h~ libbsd-0.8.3/include/bsd/stdio.h
|
||||
--- libbsd-0.8.3/include/bsd/stdio.h~ 2015-09-22 23:59:34.000000000 -0600
|
||||
+++ libbsd-0.8.3/include/bsd/stdio.h 2016-12-23 00:47:24.464930157 -0700
|
||||
@@ -41,15 +41,21 @@
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
+#if (__GNUC__ < 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ < 5))
|
||||
+#define DEPRECATED(x) __attribute__((deprecated))
|
||||
+#else
|
||||
+#define DEPRECATED(x) __attribute__((deprecated(x)))
|
||||
+#endif
|
||||
+
|
||||
__BEGIN_DECLS
|
||||
const char *fmtcheck(const char *, const char *);
|
||||
|
||||
/* XXX: The function requires cooperation from the system libc to store the
|
||||
* line buffer in the FILE struct itself. */
|
||||
char *fgetln(FILE *fp, size_t *lenp)
|
||||
- __attribute__((deprecated("This functions cannot be safely ported, "
|
||||
- "use getline(3) instead, as it is supported "
|
||||
- "by GNU and POSIX.1-2008.")));
|
||||
+ DEPRECATED("This functions cannot be safely ported, "
|
||||
+ "use getline(3) instead, as it is supported "
|
||||
+ "by GNU and POSIX.1-2008.");
|
||||
|
||||
/*
|
||||
* Note: We diverge from the FreeBSD, OpenBSD and DragonFlyBSD declarations,
|
@ -1,18 +0,0 @@
|
||||
diff -up libbsd-0.8.6/src/explicit_bzero.c.compat libbsd-0.8.6/src/explicit_bzero.c
|
||||
--- libbsd-0.8.6/src/explicit_bzero.c.compat 2018-05-22 16:06:09.926108522 -0600
|
||||
+++ libbsd-0.8.6/src/explicit_bzero.c 2018-05-22 16:06:43.102873673 -0600
|
||||
@@ -17,3 +17,5 @@ explicit_bzero(void *buf, size_t len)
|
||||
memset(buf, 0, len);
|
||||
__explicit_bzero_hook(buf, len);
|
||||
}
|
||||
+
|
||||
+asm(".symver explicit_bzero,explicit_bzero@LIBBSD_0.8");
|
||||
diff -up libbsd-0.8.6/src/reallocarray.c.compat libbsd-0.8.6/src/reallocarray.c
|
||||
--- libbsd-0.8.6/src/reallocarray.c.compat 2018-05-22 16:07:32.247007073 -0600
|
||||
+++ libbsd-0.8.6/src/reallocarray.c 2018-05-22 16:08:10.687893640 -0600
|
||||
@@ -36,3 +36,5 @@ reallocarray(void *optr, size_t nmemb, s
|
||||
}
|
||||
return realloc(optr, size * nmemb);
|
||||
}
|
||||
+
|
||||
+asm(".symver reallocarray,reallocarray@LIBBSD_0.8");
|
@ -1,167 +0,0 @@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6e9496d..abf891e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -96,7 +96,7 @@ AC_CACHE_CHECK(
|
||||
[[
|
||||
static int rc = 1;
|
||||
static void init(int argc) { if (argc == 1) rc = 0; }
|
||||
-void (*init_func)(int argc) __attribute__((__section__(".init_array"))) = init;
|
||||
+__attribute__ ((used)) void (*init_func)(int argc) __attribute__((__section__(".init_array"))) = init;
|
||||
int main() { return rc; }
|
||||
]]
|
||||
)],
|
||||
@@ -183,4 +183,13 @@ AC_CONFIG_FILES([
|
||||
test/Makefile
|
||||
])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
+
|
||||
+# GCC tries to be "helpful" and only issue a warning for unrecognized
|
||||
+# attributes. So we compile the test with Werror, so that if the
|
||||
+# attribute is not recognized the compilation fails
|
||||
+AC_LANG(C)
|
||||
+AC_LANG_WERROR
|
||||
+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[__attribute__ ((symver ("foo@foo_1"))) void frob (void) { }]])],
|
||||
+ [AC_DEFINE([HAVE_ATTRIBUTE_SYMVER], [1], [Checking for symver attribute])], [])
|
||||
+
|
||||
AC_OUTPUT
|
||||
diff --git a/src/local-link.h b/src/local-link.h
|
||||
index 0d4351a..5f98656 100644
|
||||
--- a/src/local-link.h
|
||||
+++ b/src/local-link.h
|
||||
@@ -32,16 +32,22 @@
|
||||
__attribute__((__used__,__section__(".gnu.warning." #symbol))) = msg;
|
||||
|
||||
#ifdef __ELF__
|
||||
-#define libbsd_symver_default(alias, symbol, version) \
|
||||
- __asm__(".symver " #symbol "," #alias "@@" #version)
|
||||
-
|
||||
-#define libbsd_symver_variant(alias, symbol, version) \
|
||||
- __asm__(".symver " #symbol "," #alias "@" #version)
|
||||
+# if HAVE_ATTRIBUTE_SYMVER
|
||||
+# define libbsd_symver_default(alias, symbol, version) \
|
||||
+ __attribute__ ((symver (#alias "@@" #version)))
|
||||
+# define libbsd_symver_variant(alias, symbol, version) \
|
||||
+ __attribute__ ((symver (#alias "@" #version)))
|
||||
+# else
|
||||
+# define libbsd_symver_default(alias, symbol, version) \
|
||||
+ __asm__(".symver " #symbol "," #alias "@@" #version);
|
||||
+# define libbsd_symver_variant(alias, symbol, version) \
|
||||
+ __asm__(".symver " #symbol "," #alias "@" #version);
|
||||
+# endif
|
||||
#else
|
||||
-#define libbsd_symver_default(alias, symbol, version) \
|
||||
+# define libbsd_symver_default(alias, symbol, version) \
|
||||
extern __typeof(symbol) alias __attribute__((__alias__(#symbol)))
|
||||
|
||||
-#define libbsd_symver_variant(alias, symbol, version)
|
||||
+# define libbsd_symver_variant(alias, symbol, version)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
diff --git a/src/setproctitle.c b/src/setproctitle.c
|
||||
index ff32aa3..f8ede26 100644
|
||||
--- a/src/setproctitle.c
|
||||
+++ b/src/setproctitle.c
|
||||
@@ -222,6 +222,7 @@ setproctitle_init(int argc, char *argv[], char *envp[])
|
||||
#define SPT_MAXTITLE 255
|
||||
#endif
|
||||
|
||||
+libbsd_symver_default(setproctitle, setproctitle_impl, LIBBSD_0.5)
|
||||
void
|
||||
setproctitle_impl(const char *fmt, ...)
|
||||
{
|
||||
@@ -281,7 +282,6 @@ setproctitle_impl(const char *fmt, ...)
|
||||
*++nul = '\0';
|
||||
}
|
||||
}
|
||||
-libbsd_symver_default(setproctitle, setproctitle_impl, LIBBSD_0.5);
|
||||
|
||||
/* The original function introduced in 0.2 was a stub, it only got implemented
|
||||
* in 0.5, make the implementation available in the old version as an alias
|
||||
@@ -289,11 +289,12 @@ libbsd_symver_default(setproctitle, setproctitle_impl, LIBBSD_0.5);
|
||||
* new version, so that new code depends on the implemented version. */
|
||||
#ifdef HAVE_TYPEOF
|
||||
extern __typeof__(setproctitle_impl)
|
||||
+libbsd_symver_variant(setproctitle, setproctitle_stub, LIBBSD_0.2)
|
||||
setproctitle_stub
|
||||
__attribute__((__alias__("setproctitle_impl")));
|
||||
#else
|
||||
void
|
||||
+libbsd_symver_variant(setproctitle, setproctitle_stub, LIBBSD_0.2)
|
||||
setproctitle_stub(const char *fmt, ...)
|
||||
__attribute__((__alias__("setproctitle_impl")));
|
||||
#endif
|
||||
-libbsd_symver_variant(setproctitle, setproctitle_stub, LIBBSD_0.2);
|
||||
diff --git a/src/unvis.c b/src/unvis.c
|
||||
index 166421a..218ec47 100644
|
||||
--- a/src/unvis.c
|
||||
+++ b/src/unvis.c
|
||||
@@ -563,16 +563,16 @@ strunvis(char *dst, const char *src)
|
||||
* OpenBSD, 2001: strnunvis(char *dst, const char *src, size_t dlen);
|
||||
* NetBSD: 2012, strnunvis(char *dst, size_t dlen, const char *src);
|
||||
*/
|
||||
+libbsd_symver_default(strnunvis, strnunvis_openbsd, LIBBSD_0.2)
|
||||
ssize_t
|
||||
strnunvis_openbsd(char *dst, const char *src, size_t dlen)
|
||||
{
|
||||
return strnunvisx(dst, dlen, src, 0);
|
||||
}
|
||||
-libbsd_symver_default(strnunvis, strnunvis_openbsd, LIBBSD_0.2);
|
||||
|
||||
+libbsd_symver_variant(strnunvis, strnunvis_netbsd, LIBBSD_0.9.1)
|
||||
int
|
||||
strnunvis_netbsd(char *dst, size_t dlen, const char *src)
|
||||
{
|
||||
return strnunvisx(dst, dlen, src, 0);
|
||||
}
|
||||
-libbsd_symver_variant(strnunvis, strnunvis_netbsd, LIBBSD_0.9.1);
|
||||
diff --git a/src/vis.c b/src/vis.c
|
||||
index c8e5ae8..254f209 100644
|
||||
--- a/src/vis.c
|
||||
+++ b/src/vis.c
|
||||
@@ -732,19 +732,19 @@ strvis(char *mbdst, const char *mbsrc, int flags)
|
||||
* OpenBSD, 2001: strnvis(char *dst, const char *src, size_t dlen, int flag);
|
||||
* NetBSD: 2012, strnvis(char *dst, size_t dlen, const char *src, int flag);
|
||||
*/
|
||||
+libbsd_symver_default(strnvis, strnvis_openbsd, LIBBSD_0.2)
|
||||
int
|
||||
strnvis_openbsd(char *mbdst, const char *mbsrc, size_t dlen, int flags)
|
||||
{
|
||||
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
|
||||
}
|
||||
-libbsd_symver_default(strnvis, strnvis_openbsd, LIBBSD_0.2);
|
||||
|
||||
+libbsd_symver_variant(strnvis, strnvis_netbsd, LIBBSD_0.9.1)
|
||||
int
|
||||
strnvis_netbsd(char *mbdst, size_t dlen, const char *mbsrc, int flags)
|
||||
{
|
||||
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
|
||||
}
|
||||
-libbsd_symver_variant(strnvis, strnvis_netbsd, LIBBSD_0.9.1);
|
||||
|
||||
int
|
||||
stravis(char **mbdstp, const char *mbsrc, int flags)
|
||||
diff --git a/test/nlist.c b/test/nlist.c
|
||||
index 82e24e9..0bfdb46 100644
|
||||
--- a/test/nlist.c
|
||||
+++ b/test/nlist.c
|
||||
@@ -38,14 +38,15 @@ extern int data_pub_init;
|
||||
extern int data_pub_uninit[2048];
|
||||
extern int *data_pub_ptr;
|
||||
|
||||
-int *data_pub_ptr = &data_prv_init;
|
||||
-int data_pub_init = 10;
|
||||
-int data_pub_uninit[2048];
|
||||
+__attribute__ ((used)) int *data_pub_ptr = &data_prv_init;
|
||||
+__attribute__ ((used)) int data_pub_init = 10;
|
||||
+__attribute__ ((used)) int data_pub_uninit[2048];
|
||||
|
||||
extern int
|
||||
func_pub(void);
|
||||
|
||||
int
|
||||
+__attribute__ ((used))
|
||||
func_pub(void)
|
||||
{
|
||||
return 42;
|
@ -1 +1,2 @@
|
||||
SHA512 (libbsd-0.10.0.tar.xz) = b75529785b16c93d31401187f8a58258fbebe565dac071c8311775c913af989f62cd29d5ce2651af3ea6221cffd31cf04826577d3e546ab9ca14340f297777b9
|
||||
SHA512 (libbsd-0.11.7.tar.xz) = 51fda4724f41dd8a4628afd58c21236a7588d9045e337e06eeabf83805a9aaaa53705441ca901ad11f1c65f18e881523bdc97721a7d3d6a5cced27f2450d09a2
|
||||
SHA512 (libbsd-0.11.7.tar.xz.asc) = bdcce69ee261039900896c5be48659f1b6b809f3a6e8a5220aac30a6687926ac29e478a3ea737727d077d6575ee11b86eed896932568fdd261a9aaeb46d695b6
|
||||
|
Loading…
Reference in new issue