1 fd04aace 2003-11-23 devnull #include <u.h>
2 fd04aace 2003-11-23 devnull #include <libc.h>
3 fd04aace 2003-11-23 devnull #include <ctype.h>
6 fd04aace 2003-11-23 devnull * make an address, add the defaults
9 fd04aace 2003-11-23 devnull netmkaddr(char *linear, char *defnet, char *defsrv)
11 fd04aace 2003-11-23 devnull static char addr[256];
12 fd04aace 2003-11-23 devnull char *cp;
15 fd04aace 2003-11-23 devnull * dump network name
17 fd04aace 2003-11-23 devnull cp = strchr(linear, '!');
18 fd04aace 2003-11-23 devnull if(cp == 0){
19 fd04aace 2003-11-23 devnull if(defnet==0){
20 fd04aace 2003-11-23 devnull if(defsrv)
21 fd04aace 2003-11-23 devnull snprint(addr, sizeof(addr), "net!%s!%s",
22 fd04aace 2003-11-23 devnull linear, defsrv);
24 fd04aace 2003-11-23 devnull snprint(addr, sizeof(addr), "net!%s", linear);
27 fd04aace 2003-11-23 devnull if(defsrv)
28 fd04aace 2003-11-23 devnull snprint(addr, sizeof(addr), "%s!%s!%s", defnet,
29 fd04aace 2003-11-23 devnull linear, defsrv);
31 fd04aace 2003-11-23 devnull snprint(addr, sizeof(addr), "%s!%s", defnet,
34 fd04aace 2003-11-23 devnull return addr;
38 fd04aace 2003-11-23 devnull * if there is already a service, use it
40 fd04aace 2003-11-23 devnull cp = strchr(cp+1, '!');
42 fd04aace 2003-11-23 devnull return linear;
45 fd04aace 2003-11-23 devnull * add default service
47 fd04aace 2003-11-23 devnull if(defsrv == 0)
48 fd04aace 2003-11-23 devnull return linear;
49 fd04aace 2003-11-23 devnull snprint(addr, sizeof(addr), "%s!%s", linear, defsrv);
51 fd04aace 2003-11-23 devnull return addr;