summaryrefslogtreecommitdiff
path: root/module/dial.m
blob: 1871317a82a6b16d07d2900bf9fb8405762ebca4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Dial: module
{
	PATH: con "/dis/lib/dial.dis";

	Connection: adt
	{
		dfd:	ref Sys->FD;
		cfd:	ref Sys->FD;
		dir:	string;
	};

	Conninfo: adt
	{
		dir:	string;
		root:	string;
		spec:	string;
		lsys:	string;
		lserv:	string;
		rsys:	string;
		rserv:	string;
		laddr:	string;
		raddr:	string;
	};

	announce:	fn(addr: string): ref Connection;
	dial:	fn(addr, local: string): ref Connection;
	listen:	fn(c: ref Connection): ref Connection;
	accept:	fn(c: ref Connection): ref Sys->FD;
	reject:	fn(c: ref Connection, why: string): int;
#	parse:	fn(addr: string): (string, string, string);

	netmkaddr:	fn(addr, net, svc: string): string;
	netinfo:	fn(c: ref Connection): ref Conninfo;
};