static char SccsId
[] = "@(#)err.c 2.2 1/10/81";
** SYSERR -- Print error message.
** Prints an error message via printf to the diagnostic
** output. If LOG is defined, it logs it also.
** f -- the format string
** a, b, c, d, e -- parameters
syserr(fmt
, a
, b
, c
, d
, e
)
static char errbuf
[MAXLINE
+1];
extern char *sys_errlist
[];
sprintf(errbuf
, fmt
, a
, b
, c
, d
, e
);
p
= &errbuf
[strlen(errbuf
)];
if (errno
< sys_nerr
&& errno
> 0)
sprintf(p
, ": %s", sys_errlist
[errno
]);
sprintf(p
, ": error %d", errno
);
printf("delivermail: %s\n", errbuf
);
/* determine exit status if not already set */
logmsg(LOG_ERR
, "%s->%s: %s", From
.q_paddr
, To
, errbuf
);
** USRERR -- Signal user error.
** This is much like syserr except it is for user errors.
** fmt, a, b, c, d -- printf strings
usrerr(fmt
, a
, b
, c
, d
, e
)
printf(fmt
, a
, b
, c
, d
, e
);