diff options
Diffstat (limited to 'usr/src/lib/libast/common/string/strerror.c')
-rw-r--r-- | usr/src/lib/libast/common/string/strerror.c | 148 |
1 files changed, 0 insertions, 148 deletions
diff --git a/usr/src/lib/libast/common/string/strerror.c b/usr/src/lib/libast/common/string/strerror.c deleted file mode 100644 index 2541efd847..0000000000 --- a/usr/src/lib/libast/common/string/strerror.c +++ /dev/null @@ -1,148 +0,0 @@ -/*********************************************************************** -* * -* This software is part of the ast package * -* Copyright (c) 1985-2010 AT&T Intellectual Property * -* and is licensed under the * -* Common Public License, Version 1.0 * -* by AT&T Intellectual Property * -* * -* A copy of the License is available at * -* http://www.opensource.org/licenses/cpl1.0.txt * -* (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * -* * -* Glenn Fowler <gsf@research.att.com> * -* David Korn <dgk@research.att.com> * -* Phong Vo <kpv@research.att.com> * -* * -***********************************************************************/ -#pragma prototyped - -/* - * Glenn Fowler - * AT&T Research - * - * return error message string given errno - */ - -#include "lclib.h" - -#include "FEATURE/errno" - -#undef strerror - -#if !defined(sys_errlist) && !_def_errno_sys_errlist -#if _dat_sys_errlist -extern char* sys_errlist[]; -#else -#undef _dat_sys_nerr -char* sys_errlist[] = { 0 }; -#endif -#endif - -#if !defined(sys_nerr) && !_def_errno_sys_nerr -#if _dat_sys_nerr -extern int sys_nerr; -#else -#undef _dat_sys_nerr -int sys_nerr = 0; -#endif -#endif - -#if _lib_strerror -extern char* strerror(int); -#endif - -#if _PACKAGE_astsa - -#define fmtbuf(n) ((n),tmp) - -static char tmp[32]; - -#endif - -char* -_ast_strerror(int err) -{ - char* msg; - int z; - -#if _lib_strerror - z = errno; - msg = strerror(err); - errno = z; -#else - if (err > 0 && err <= sys_nerr) - msg = (char*)sys_errlist[err]; - else - msg = 0; -#endif - if (msg) - { -#if !_PACKAGE_astsa - if (ERROR_translating()) - { -#if _lib_strerror - static int sys; - - if (!sys) - { - char* s; - char* t; - char* p; - -#if _lib_strerror - /* - * stash the pending strerror() msg - */ - - msg = strcpy(fmtbuf(strlen(msg) + 1), msg); -#endif - - /* - * make sure that strerror() translates - */ - - if (!(s = strerror(1))) - sys = -1; - else - { - t = fmtbuf(z = strlen(s) + 1); - strcpy(t, s); - ast.locale.set |= AST_LC_internal; - p = setlocale(LC_MESSAGES, NiL); - setlocale(LC_MESSAGES, "C"); - sys = (s = strerror(1)) && strcmp(s, t) ? 1 : -1; - setlocale(LC_MESSAGES, p); - ast.locale.set &= ~AST_LC_internal; - } - } - if (sys > 0) - return msg; -#endif - return ERROR_translate(NiL, NiL, "errlist", msg); - } -#endif - return msg; - } - msg = fmtbuf(z = 32); - sfsprintf(msg, z, ERROR_translate(NiL, NiL, "errlist", "Error %d"), err); - return msg; -} - -#if !_lib_strerror - -#if defined(__EXPORT__) -#define extern __EXPORT__ -#endif - -extern char* -strerror(int err) -{ - return _ast_strerror(err); -} - -#endif |