Blob
1 #include <u.h>2 #include <libc.h>3 #include <fcall.h>4 #include <9pclient.h>5 #include <ctype.h>7 CFsys*8 nsmount(char *name, char *aname)9 {10 char *addr, *ns;11 int fd;12 CFsys *fs;14 ns = getns();15 if(ns == nil)16 return nil;18 addr = smprint("unix!%s/%s", ns, name);19 free(ns);20 if(addr == nil)21 return nil;23 fd = dial(addr, 0, 0, 0);24 if(fd < 0){25 werrstr("dial %s: %r", addr);26 free(addr);27 return nil;28 }29 free(addr);31 fcntl(fd, F_SETFL, FD_CLOEXEC);33 fs = fsmount(fd, aname);34 if(fs == nil){35 close(fd);36 return nil;37 }39 return fs;40 }