err.c revision 302408
1272445Sbrd/*
2272445Sbrd * Copyright (c) 2001 Proofpoint, Inc. and its suppliers.
3298107Sgjb *	All rights reserved.
4298107Sgjb *
5275658Sbrd * By using this file, you agree to the terms and conditions set
6275658Sbrd * forth in the LICENSE file which can be found at the top level of
7284135Sbapt * the sendmail distribution.
8285985Sbapt *
9275658Sbrd */
10275658Sbrd
11275658Sbrd#include <sendmail.h>
12275658Sbrd
13278475SbrdSM_RCSID("@(#)$Id: err.c,v 8.6 2013-11-22 20:51:50 ca Exp $")
14278475Sbrd
15272445Sbrd#include <ctype.h>
16275658Sbrd
17275658Sbrd/*VARARGS1*/
18275658Sbrdvoid
19274022Sngie#ifdef __STDC__
20299094Sngiemessage(const char *msg, ...)
21299094Sngie#else /* __STDC__ */
22299094Sngiemessage(msg, va_alist)
23299094Sngie	const char *msg;
24299094Sngie	va_dcl
25272445Sbrd#endif /* __STDC__ */
26272445Sbrd{
27	const char *m;
28	SM_VA_LOCAL_DECL
29
30	m = msg;
31	if (isascii(m[0]) && isdigit(m[0]) &&
32	    isascii(m[1]) && isdigit(m[1]) &&
33	    isascii(m[2]) && isdigit(m[2]) && m[3] == ' ')
34		m += 4;
35	SM_VA_START(ap, msg);
36	(void) vfprintf(stderr, m, ap);
37	SM_VA_END(ap);
38	(void) fprintf(stderr, "\n");
39}
40
41/*VARARGS1*/
42void
43#ifdef __STDC__
44syserr(const char *msg, ...)
45#else /* __STDC__ */
46syserr(msg, va_alist)
47	const char *msg;
48	va_dcl
49#endif /* __STDC__ */
50{
51	const char *m;
52	SM_VA_LOCAL_DECL
53
54	m = msg;
55	if (isascii(m[0]) && isdigit(m[0]) &&
56	    isascii(m[1]) && isdigit(m[1]) &&
57	    isascii(m[2]) && isdigit(m[2]) && m[3] == ' ')
58		m += 4;
59	SM_VA_START(ap, msg);
60	(void) vfprintf(stderr, m, ap);
61	SM_VA_END(ap);
62	(void) fprintf(stderr, "\n");
63}
64