From 546626ef931a8053872c26e20dad7feab1cdee2e Mon Sep 17 00:00:00 2001 From: guenther <> Date: Sun, 6 Sep 2015 20:26:20 +0000 Subject: Fix aliasing of sys_errlist, sys_nerr, sys_siglist, and sys_signame to eliminate duplicate copies of the tables and get direct access internally ok kettenis@ deraadt@ --- src/lib/libc/include/namespace.h | 9 +-------- src/lib/libc/string/strerror_r.c | 10 +++------- 2 files changed, 4 insertions(+), 15 deletions(-) (limited to 'src/lib') diff --git a/src/lib/libc/include/namespace.h b/src/lib/libc/include/namespace.h index 381ccc35be..939515251e 100644 --- a/src/lib/libc/include/namespace.h +++ b/src/lib/libc/include/namespace.h @@ -1,15 +1,8 @@ -/* $OpenBSD: namespace.h,v 1.4 2015/09/05 11:25:30 guenther Exp $ */ +/* $OpenBSD: namespace.h,v 1.5 2015/09/06 20:26:20 guenther Exp $ */ #ifndef _LIBC_NAMESPACE_H_ #define _LIBC_NAMESPACE_H_ -/* These will be replaced with symbol renaming ala PROTO_NORMAL */ -#define strtoq _strtoq -#define strtouq _strtouq -#define sys_errlist _sys_errlist -#define sys_nerr _sys_nerr -#define sys_siglist _sys_siglist - /* * Copyright (c) 2015 Philip Guenther * diff --git a/src/lib/libc/string/strerror_r.c b/src/lib/libc/string/strerror_r.c index 2262cb512d..8a15ff1afc 100644 --- a/src/lib/libc/string/strerror_r.c +++ b/src/lib/libc/string/strerror_r.c @@ -1,14 +1,10 @@ -/* $OpenBSD: strerror_r.c,v 1.10 2015/09/05 11:25:30 guenther Exp $ */ +/* $OpenBSD: strerror_r.c,v 1.11 2015/09/06 20:26:20 guenther Exp $ */ /* Public Domain */ #ifdef NLS #include #endif -#define sys_errlist _sys_errlist -#define sys_nerr _sys_nerr -#define sys_siglist _sys_siglist - #include #include #include @@ -65,7 +61,7 @@ __itoa(int num, int sign, char *buffer, size_t start, size_t end) static int __num2string(int num, int sign, int setid, char *buf, size_t buflen, - char * list[], size_t max, const char *def) + const char * const list[], size_t max, const char *def) { int ret = 0; size_t len; @@ -129,7 +125,7 @@ DEF_WEAK(strerror_r); char * __strsignal(int num, char *buf) { - __num2string(num, 0, 2, buf, NL_TEXTMAX, (char **)sys_siglist, NSIG, + __num2string(num, 0, 2, buf, NL_TEXTMAX, sys_siglist, NSIG, USIGPREFIX); return buf; } -- cgit v1.2.3-55-g6feb