xref: /plan9/sys/src/cmd/awd.c (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1*219b2ee8SDavid du Colombier #include <u.h>
2*219b2ee8SDavid du Colombier #include <libc.h>
3*219b2ee8SDavid du Colombier 
4*219b2ee8SDavid du Colombier void
5*219b2ee8SDavid du Colombier main(int argc, char **argv)
6*219b2ee8SDavid du Colombier {
7*219b2ee8SDavid du Colombier 	int fd, n, m;
8*219b2ee8SDavid du Colombier 	char buf[1024], dir[512], *str;
9*219b2ee8SDavid du Colombier 
10*219b2ee8SDavid du Colombier 	fd = open("/dev/acme/ctl", OWRITE);
11*219b2ee8SDavid du Colombier 	if(fd < 0)
12*219b2ee8SDavid du Colombier 		exits(0);
13*219b2ee8SDavid du Colombier 	getwd(dir, 512);
14*219b2ee8SDavid du Colombier 	strcpy(buf, "name ");
15*219b2ee8SDavid du Colombier 	strcpy(buf+5, dir);
16*219b2ee8SDavid du Colombier 	n = strlen(buf);
17*219b2ee8SDavid du Colombier 	if(n>0 && buf[n-1]!='/')
18*219b2ee8SDavid du Colombier 		buf[n++] = '/';
19*219b2ee8SDavid du Colombier 	buf[n++] = '-';
20*219b2ee8SDavid du Colombier 	if(argc > 1)
21*219b2ee8SDavid du Colombier 		str = argv[1];
22*219b2ee8SDavid du Colombier 	else
23*219b2ee8SDavid du Colombier 		str = "rc";
24*219b2ee8SDavid du Colombier 	m = strlen(str);
25*219b2ee8SDavid du Colombier 	strcpy(buf+n, str);
26*219b2ee8SDavid du Colombier 	n += m;
27*219b2ee8SDavid du Colombier 	buf[n++] = '\n';
28*219b2ee8SDavid du Colombier 	write(fd, buf, n);
29*219b2ee8SDavid du Colombier 	strcpy(buf, "dumpdir ");
30*219b2ee8SDavid du Colombier 	strcpy(buf+8, dir);
31*219b2ee8SDavid du Colombier 	strcat(buf, "\n");
32*219b2ee8SDavid du Colombier 	write(fd, buf, strlen(buf));
33*219b2ee8SDavid du Colombier 	exits(0);
34*219b2ee8SDavid du Colombier }
35