xref: /plan9/sys/src/libventi/dial.c (revision 368c31ab13393dea083228fdd1c3445076f83a4b)
1*368c31abSDavid du Colombier #include <u.h>
2*368c31abSDavid du Colombier #include <libc.h>
3*368c31abSDavid du Colombier #include <venti.h>
4*368c31abSDavid du Colombier 
5*368c31abSDavid du Colombier VtConn*
vtdial(char * addr)6*368c31abSDavid du Colombier vtdial(char *addr)
7*368c31abSDavid du Colombier {
8*368c31abSDavid du Colombier 	char *na;
9*368c31abSDavid du Colombier 	int fd;
10*368c31abSDavid du Colombier 	VtConn *z;
11*368c31abSDavid du Colombier 
12*368c31abSDavid du Colombier 	if(addr == nil)
13*368c31abSDavid du Colombier 		addr = getenv("venti");
14*368c31abSDavid du Colombier 	if(addr == nil)
15*368c31abSDavid du Colombier 		addr = "$venti";
16*368c31abSDavid du Colombier 
17*368c31abSDavid du Colombier 	na = netmkaddr(addr, "tcp", "venti");
18*368c31abSDavid du Colombier 	if((fd = dial(na, nil, nil, nil)) < 0)
19*368c31abSDavid du Colombier 		return nil;
20*368c31abSDavid du Colombier 
21*368c31abSDavid du Colombier 	z = vtconn(fd, fd);
22*368c31abSDavid du Colombier 	if(z)
23*368c31abSDavid du Colombier 		strecpy(z->addr, z->addr+sizeof z->addr, na);
24*368c31abSDavid du Colombier 	return z;
25*368c31abSDavid du Colombier }
26