// SPDX-License-Identifier: GPL-2.0+ | |
/* | |
* (C) Copyright 2000 | |
* Murray Jensen <Murray.Jensen@csiro.au> | |
*/ | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
#include <errno.h> | |
#include "error.h" | |
char *pname; | |
void | |
Warning(char *fmt, ...) | |
{ | |
va_list args; | |
fprintf(stderr, "%s: WARNING: ", pname); | |
va_start(args, fmt); | |
vfprintf(stderr, fmt, args); | |
va_end(args); | |
fprintf(stderr, "\n"); | |
} | |
void | |
Error(char *fmt, ...) | |
{ | |
va_list args; | |
fprintf(stderr, "%s: ERROR: ", pname); | |
va_start(args, fmt); | |
vfprintf(stderr, fmt, args); | |
va_end(args); | |
fprintf(stderr, "\n"); | |
exit(1); | |
} | |
void | |
Perror(char *fmt, ...) | |
{ | |
va_list args; | |
int e = errno; | |
char *p; | |
fprintf(stderr, "%s: ERROR: ", pname); | |
va_start(args, fmt); | |
vfprintf(stderr, fmt, args); | |
va_end(args); | |
if ((p = strerror(e)) == NULL || *p == '\0') | |
fprintf(stderr, ": Unknown Error (%d)\n", e); | |
else | |
fprintf(stderr, ": %s\n", p); | |
exit(1); | |
} |