/* Misc support routines for unter style error management. Stolen from mjr. Modded to scribble on stderr, for now. Andrew Molitor, amolitor@eagle.wesleyan.edu */ #include "udb_defs.h" #include <stdio.h> #include <errno.h> #include <varargs.h> #ifdef VMS noshare extern char *sys_errlist[]; #endif extern int errno; extern char *sys_errlist[]; /* print a series of warnings - do not exit */ /* VARARGS */ void logf(va_alist) va_dcl { char *p; va_list ap; va_start(ap); while(1) { p = va_arg(ap,char *); if(p == (char *)0) break; if(p == (char *)-1) p = sys_errlist[errno]; (void)fprintf(stderr,"%s",p); } va_end(ap); (void)fflush(stderr); } /* print a series of warnings - exit */ /* VARARGS */ void fatal(va_alist) va_dcl { char *p; va_list ap; va_start(ap); while(1) { p = va_arg(ap,char *); if(p == (char *)0) break; if(p == (char *)-1) p = sys_errlist[errno]; (void)fprintf(stderr,"%s",p); } va_end(ap); (void)fflush(stderr); exit(1); }