1219b2ee8SDavid du Colombier #include <u.h> 2219b2ee8SDavid du Colombier #include <libc.h> 3219b2ee8SDavid du Colombier #include <auth.h> 4219b2ee8SDavid du Colombier #include "authsrv.h" 5219b2ee8SDavid du Colombier 6219b2ee8SDavid du Colombier void 7219b2ee8SDavid du Colombier error(char *fmt, ...) 8219b2ee8SDavid du Colombier { 9219b2ee8SDavid du Colombier char buf[8192], *s; 10*7dd7cddfSDavid du Colombier va_list arg; 11219b2ee8SDavid du Colombier 12219b2ee8SDavid du Colombier s = buf; 13219b2ee8SDavid du Colombier s += sprint(s, "%s: ", argv0); 14*7dd7cddfSDavid du Colombier va_start(arg, fmt); 15*7dd7cddfSDavid du Colombier s = doprint(s, buf + sizeof(buf), fmt, arg); 16*7dd7cddfSDavid du Colombier va_end(arg); 17219b2ee8SDavid du Colombier *s++ = '\n'; 18219b2ee8SDavid du Colombier write(2, buf, s - buf); 19219b2ee8SDavid du Colombier exits(buf); 20219b2ee8SDavid du Colombier } 21