xref: /plan9-contrib/sys/src/cmd/auth/lib/error.c (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
1219b2ee8SDavid du Colombier #include <u.h>
2219b2ee8SDavid du Colombier #include <libc.h>
3*9a747e4fSDavid du Colombier #include "authcmdlib.h"
4219b2ee8SDavid du Colombier 
5219b2ee8SDavid du Colombier void
6219b2ee8SDavid du Colombier error(char *fmt, ...)
7219b2ee8SDavid du Colombier {
8219b2ee8SDavid du Colombier 	char buf[8192], *s;
97dd7cddfSDavid du Colombier 	va_list arg;
10219b2ee8SDavid du Colombier 
11219b2ee8SDavid du Colombier 	s = buf;
12219b2ee8SDavid du Colombier 	s += sprint(s, "%s: ", argv0);
137dd7cddfSDavid du Colombier 	va_start(arg, fmt);
14*9a747e4fSDavid du Colombier 	s = vseprint(s, buf + sizeof(buf), fmt, arg);
157dd7cddfSDavid du Colombier 	va_end(arg);
16219b2ee8SDavid du Colombier 	*s++ = '\n';
17219b2ee8SDavid du Colombier 	write(2, buf, s - buf);
18219b2ee8SDavid du Colombier 	exits(buf);
19219b2ee8SDavid du Colombier }
20