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 <u.h>
2
#include <libc.h>
3
#include <bio.h>
4
 
5
#include "modem.h"
6
 
7
static Modem modems[1];
8
 
9
static char *spool = "/mail/faxqueue";
10
static char *type = "default";
11
static char *receiverc = "/sys/lib/fax/receiverc";
12
 
13
static void
14
receivedone(Modem *m, int ok)
15
{
16
	char *argv[10], *p, time[16], pages[16];
17
	int argc;
18
 
19
	faxrlog(m, ok);
20
	if(ok != Eok)
21
		return;
22
 
23
	argc = 0;
24
	if(p = strrchr(receiverc, '/'))
25
		argv[argc++] = p+1;
26
	else
27
		argv[argc++] = receiverc;
28
	sprint(time, "%lud.%d", m->time, m->pid);
29
	argv[argc++] = time;
30
	argv[argc++] = "Y";
31
	sprint(pages, "%d", m->pageno-1);
32
	argv[argc++] = pages;
33
	if(m->valid & Vftsi)
34
		argv[argc++] = m->ftsi;
35
	argv[argc] = 0;
36
	exec(receiverc, argv);
37
	exits("can't exec");
38
}
39
 
40
static void
41
usage(void)
42
{
43
	fprint(2, "%s: usage: %s [-v] [-s dir]\n", argv0, argv0);
44
	exits("usage");
45
}
46
 
47
void
48
main(int argc, char *argv[])
49
{
50
	Modem *m;
51
 
52
	m = &modems[0];
53
 
54
	ARGBEGIN{
55
	case 'v':
56
		vflag = 1;
57
		break;
58
 
59
	case 's':
60
		spool = ARGF();
61
		break;
62
 
63
	default:
64
		usage();
65
		break;
66
 
67
	}ARGEND
68
 
69
	initmodem(m, 0, -1, type, 0);
70
	receivedone(m, faxreceive(m, spool));
71
 
72
	exits(0);
73
}