xref: /plan9/sys/src/cmd/auth/lib/error.c (revision f54edc786b9c49b2c7ab1c0695cdc8c698b11f4d)
1219b2ee8SDavid du Colombier #include <u.h>
2219b2ee8SDavid du Colombier #include <libc.h>
35979f962SDavid du Colombier #include <bio.h>
49a747e4fSDavid du Colombier #include "authcmdlib.h"
5219b2ee8SDavid du Colombier 
6219b2ee8SDavid du Colombier void
error(char * fmt,...)7219b2ee8SDavid du Colombier error(char *fmt, ...)
8219b2ee8SDavid du Colombier {
9219b2ee8SDavid du Colombier 	char buf[8192], *s;
107dd7cddfSDavid du Colombier 	va_list arg;
11219b2ee8SDavid du Colombier 
12219b2ee8SDavid du Colombier 	s = buf;
13*f54edc78SDavid du Colombier 	s += snprint(s, sizeof buf, "%s: ", argv0);
147dd7cddfSDavid du Colombier 	va_start(arg, fmt);
159a747e4fSDavid du Colombier 	s = vseprint(s, buf + sizeof(buf), fmt, arg);
167dd7cddfSDavid 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