version 1.16, 2007/07/17 11:34:53 |
version 1.16.4.2, 2008/01/09 02:02:17 |
|
|
usage(void) |
usage(void) |
{ |
{ |
|
|
errx(1, "usage: %s [-o mntopts] [-p port] [-u user] [-s] server mount", |
fprintf(stderr, "usage: %s [-s] [-o mntopts] [-p port] " |
getprogname()); |
"[user@]server[:path] mountpoint\n", getprogname()); |
|
exit(1); |
} |
} |
|
|
/* |
/* |
Line 104 main(int argc, char *argv[]) |
|
Line 105 main(int argc, char *argv[]) |
|
const char *user, *srvhost, *srvpath; |
const char *user, *srvhost, *srvpath; |
char *p; |
char *p; |
unsigned short port; |
unsigned short port; |
int mntflags, pflags, lflags, ch; |
int mntflags, pflags, ch; |
int detach; |
int detach; |
|
|
setprogname(argv[0]); |
setprogname(argv[0]); |
Line 112 main(int argc, char *argv[]) |
|
Line 113 main(int argc, char *argv[]) |
|
if (argc < 2) |
if (argc < 2) |
usage(); |
usage(); |
|
|
mntflags = pflags = lflags = 0; |
mntflags = pflags = 0; |
detach = 1; |
detach = 1; |
port = DEFPORT_9P; |
port = DEFPORT_9P; |
|
|
Line 128 main(int argc, char *argv[]) |
|
Line 129 main(int argc, char *argv[]) |
|
port = atoi(optarg); |
port = atoi(optarg); |
break; |
break; |
case 's': |
case 's': |
lflags |= PUFFSLOOP_NODAEMON; |
detach = 0; |
break; |
break; |
default: |
default: |
usage(); |
usage(); |
Line 142 main(int argc, char *argv[]) |
|
Line 143 main(int argc, char *argv[]) |
|
usage(); |
usage(); |
|
|
if (pflags & PUFFS_FLAG_OPDUMP) |
if (pflags & PUFFS_FLAG_OPDUMP) |
lflags |= PUFFSLOOP_NODAEMON; |
detach = 0; |
pflags |= PUFFS_KFLAG_WTCACHE | PUFFS_KFLAG_IAONDEMAND; |
pflags |= PUFFS_KFLAG_WTCACHE | PUFFS_KFLAG_IAONDEMAND; |
|
|
PUFFSOP_INIT(pops); |
PUFFSOP_INIT(pops); |
Line 208 main(int argc, char *argv[]) |
|
Line 209 main(int argc, char *argv[]) |
|
exit(1); |
exit(1); |
} |
} |
|
|
if (puffs_setblockingmode(pu, PUFFSDEV_NONBLOCK) == -1) |
puffs_framev_init(pu, p9pbuf_read, p9pbuf_write, p9pbuf_cmp, NULL, |
err(1, "setblockingmode"); |
|
|
|
puffs_framev_init(pu, p9pbuf_read, p9pbuf_write, p9pbuf_cmp, |
|
puffs_framev_unmountonclose); |
puffs_framev_unmountonclose); |
if (puffs_framev_addfd(pu, p9p.servsock, |
if (puffs_framev_addfd(pu, p9p.servsock, |
PUFFS_FBIO_READ | PUFFS_FBIO_WRITE) == -1) |
PUFFS_FBIO_READ | PUFFS_FBIO_WRITE) == -1) |
err(1, "puffs_framebuf_addfd"); |
err(1, "puffs_framebuf_addfd"); |
|
|
|
if (detach) |
|
if (puffs_daemon(pu, 1, 1) == -1) |
|
err(1, "puffs_daemon"); |
|
|
if (puffs_mount(pu, argv[1], mntflags, pn_root) == -1) |
if (puffs_mount(pu, argv[1], mntflags, pn_root) == -1) |
err(1, "puffs_mount"); |
err(1, "puffs_mount"); |
|
if (puffs_setblockingmode(pu, PUFFSDEV_NONBLOCK) == -1) |
|
err(1, "setblockingmode"); |
|
|
|
if (puffs_mainloop(pu) == -1) |
|
err(1, "mainloop"); |
|
|
return puffs_mainloop(pu, lflags); |
return 0; |
} |
} |