xref: /plan9-contrib/sys/src/libventi/dial.c (revision 6021a96baaeac9e871b46f21935cdb441d5129f6)
1368c31abSDavid du Colombier #include <u.h>
2368c31abSDavid du Colombier #include <libc.h>
3368c31abSDavid du Colombier #include <venti.h>
4368c31abSDavid du Colombier 
5368c31abSDavid du Colombier VtConn*
vtdial(char * addr)6368c31abSDavid du Colombier vtdial(char *addr)
7368c31abSDavid du Colombier {
8368c31abSDavid du Colombier 	char *na;
9368c31abSDavid du Colombier 	int fd;
10368c31abSDavid du Colombier 	VtConn *z;
11368c31abSDavid du Colombier 
12368c31abSDavid du Colombier 	if(addr == nil)
13368c31abSDavid du Colombier 		addr = getenv("venti");
14368c31abSDavid du Colombier 	if(addr == nil)
15368c31abSDavid du Colombier 		addr = "$venti";
16368c31abSDavid du Colombier 
17368c31abSDavid du Colombier 	na = netmkaddr(addr, "tcp", "venti");
18368c31abSDavid du Colombier 	if((fd = dial(na, nil, nil, nil)) < 0)
19368c31abSDavid du Colombier 		return nil;
20368c31abSDavid du Colombier 
21368c31abSDavid du Colombier 	z = vtconn(fd, fd);
22368c31abSDavid du Colombier 	if(z)
23368c31abSDavid du Colombier 		strecpy(z->addr, z->addr+sizeof z->addr, na);
24368c31abSDavid du Colombier 	return z;
25368c31abSDavid du Colombier }
26*6021a96bSDavid du Colombier 
27*6021a96bSDavid du Colombier int
vtredial(VtConn * z,char * addr)28*6021a96bSDavid du Colombier vtredial(VtConn *z, char *addr)
29*6021a96bSDavid du Colombier {
30*6021a96bSDavid du Colombier 	char *na;
31*6021a96bSDavid du Colombier 	int fd;
32*6021a96bSDavid du Colombier 
33*6021a96bSDavid du Colombier 	if(addr == nil)
34*6021a96bSDavid du Colombier 		addr = getenv("venti");
35*6021a96bSDavid du Colombier 	if(addr == nil)
36*6021a96bSDavid du Colombier 		addr = "$venti";
37*6021a96bSDavid du Colombier 
38*6021a96bSDavid du Colombier 	na = netmkaddr(addr, "tcp", "venti");
39*6021a96bSDavid du Colombier 	if((fd = dial(na, nil, nil, nil)) < 0)
40*6021a96bSDavid du Colombier 		return fd;
41*6021a96bSDavid du Colombier 
42*6021a96bSDavid du Colombier 	return vtreconn(z, fd, fd);
43*6021a96bSDavid du Colombier }
44