8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / cmd / sendmail / libsm / strerror.c
blobf58f6626b2502e3a1d1fe9bb659af54438acbedc
1 /*
2 * Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
4 * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
5 * Copyright (c) 1988, 1993
6 * The Regents of the University of California. All rights reserved.
8 * By using this file, you agree to the terms and conditions set
9 * forth in the LICENSE file which can be found at the top level of
10 * the sendmail distribution.
14 #pragma ident "%Z%%M% %I% %E% SMI"
16 #include <sm/gen.h>
17 SM_RCSID("@(#)$Id: strerror.c,v 1.21 2001/06/17 21:31:41 ca Exp $")
20 ** define strerror for platforms that lack it.
23 #include <errno.h>
24 #include <stdio.h> /* sys_errlist, on some platforms */
26 #include <sm/io.h> /* sm_snprintf */
27 #include <sm/string.h>
28 #include <sm/conf.h>
29 #include <sm/errstring.h>
31 #if !defined(ERRLIST_PREDEFINED)
32 extern char *sys_errlist[];
33 extern int sys_nerr;
34 #endif /* !defined(ERRLIST_PREDEFINED) */
36 #if !HASSTRERROR
39 ** STRERROR -- return error message string corresponding to an error number.
41 ** Parameters:
42 ** err -- error number.
44 ** Returns:
45 ** Error string (might be pointer to static buffer).
48 char *
49 strerror(err)
50 int err;
52 static char buf[64];
54 if (err >= 0 && err < sys_nerr)
55 return (char *) sys_errlist[err];
56 else
58 (void) sm_snprintf(buf, sizeof(buf), "Error %d", err);
59 return buf;
62 #endif /* !HASSTRERROR */