Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include "awiki.h"
2
 
3
int debug;
4
int mapfd;
5
char *email;
6
char *dir;
7
 
8
void
9
usage(void)
10
{
11
	fprint(2, "usage: Wiki [-e email] [dir]\n");
12
	exits("usage");
13
}
14
 
15
void
16
threadmain(int argc, char **argv)
17
{
18
	char *s;
19
	Dir *d;
20
 
21
	rfork(RFNAMEG);
22
	ARGBEGIN{
23
	case 'D':
24
		debug++;
25
		break;
26
	case 'e':
27
		email = EARGF(usage());
28
		break;
29
	default:
30
		usage();
31
		break;
32
	}ARGEND
33
 
34
	if(argc > 1)
35
		usage();
36
	if(argc == 1)
37
		dir = argv[0];
38
	else
39
		dir = "/mnt/wiki";
40
 
41
	if(chdir(dir) < 0){
42
		fprint(2, "chdir(%s) fails: %r\n", dir);
43
		threadexitsall(nil);
44
	}
45
 
46
	if((mapfd = open("map", ORDWR)) < 0){
47
		fprint(2, "open(map): %r\n");
48
		threadexitsall(nil);
49
	}
50
 
51
	if((d = dirstat("1")) == nil){
52
		fprint(2, "dirstat(%s/1) fails: %r\n", dir);
53
		threadexitsall(nil);
54
	}
55
	s = emalloc(strlen(d->name)+2);
56
	strcpy(s, d->name);
57
	strcat(s, "/");
58
	wikiopen(s, nil);
59
	threadexits(nil);
60
}