Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include <u.h>
2
#include <libc.h>
3
#include <fcall.h>
4
#include <thread.h>
5
#include <9p.h>
6
#include "dat.h"
7
#include "fns.h"
8
 
9
#define	SIZE	1024
10
#define	DOTDOT	(&fmt+1)
11
 
12
int	chatty;
13
 
14
void
15
chat(char *fmt, ...)
16
{
17
	char buf[SIZE], *out;
18
	va_list arg;
19
 
20
	if (!chatty)
21
		return;
22
 
23
	va_start(arg, fmt);
24
	out = vseprint(buf, buf+sizeof(buf), fmt, arg);
25
	va_end(arg);
26
	write(2, buf, (long)(out-buf));
27
}
28
 
29
void
30
mchat(char *fmt, ...)
31
{
32
	char buf[SIZE], *out;
33
	va_list arg;
34
 
35
	va_start(arg, fmt);
36
	out = vseprint(buf, buf+sizeof(buf), fmt, arg);
37
	va_end(arg);
38
	write(2, buf, (long)(out-buf));
39
}
40
void
41
panic(char *fmt, ...)
42
{
43
	char buf[SIZE];
44
	va_list arg;
45
	int n;
46
 
47
	n = sprint(buf, "%s %d: panic ", argv0, getpid());
48
	va_start(arg, fmt);
49
	vseprint(buf+n, buf+sizeof(buf)-n, fmt, arg);
50
	va_end(arg);
51
	fprint(2, "%s: %r\n", buf);
52
	exits("panic");
53
}