]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/cmd/exportfs/exportfs.c
exportfs: revert e524e8d65a7573c46d7beb49e77bfc2d55a5563d
[plan9front.git] / sys / src / cmd / exportfs / exportfs.c
index 86680e1f602016dc7d049a76cc283573b4359816..b17cec499a83136420d1bd9426331db6253bdc90 100644 (file)
@@ -10,16 +10,18 @@ int readonly;
 void
 usage(void)
 {
-       fprint(2, "usage: %s [-dsR] [-m msize] [-r root] "
-               "[-P patternfile] [-S srvfile]\n", argv0);
+       fprint(2, "usage: %s [-dsR] [-f dbgfile] [-m msize] [-r root] "
+               "[-S srvfile] [-P exclusion-file]\n", argv0);
        fatal("usage");
 }
 
 void
 main(int argc, char **argv)
 {
-       char *srv, *srvfdfile;
+       char *dbfile, *srv, *srvfdfile;
+       int n;
 
+       dbfile = "/tmp/exportdb";
        srv = nil;
        srvfd = -1;
        srvfdfile = nil;
@@ -29,6 +31,10 @@ main(int argc, char **argv)
                dbg++;
                break;
 
+       case 'f':
+               dbfile = EARGF(usage());
+               break;
+
        case 'm':
                messagesize = strtoul(EARGF(usage()), nil, 0);
                break;
@@ -76,7 +82,13 @@ main(int argc, char **argv)
 
        exclusions();
 
-       DEBUG(2, "exportfs: started\n");
+       if(dbg) {
+               n = create(dbfile, OWRITE|OTRUNC, 0666);
+               dup(n, DFD);
+               close(n);
+       }
+
+       DEBUG(DFD, "exportfs: started\n");
 
        rfork(RFNOTEG|RFREND);
 
@@ -94,13 +106,13 @@ main(int argc, char **argv)
                        char ebuf[ERRMAX];
                        ebuf[0] = '\0';
                        errstr(ebuf, sizeof ebuf);
-                       DEBUG(2, "chdir(\"%s\"): %s\n", srv, ebuf);
+                       DEBUG(DFD, "chdir(\"%s\"): %s\n", srv, ebuf);
                        mounterror(ebuf);
                }
-               DEBUG(2, "invoked as server for %s", srv);
+               DEBUG(DFD, "invoked as server for %s", srv);
        }
 
-       DEBUG(2, "\niniting root\n");
+       DEBUG(DFD, "\niniting root\n");
        initroot();
        io();
 }