tremove factotum directory - plan9port - [fork] Plan 9 from user space
git clone git://src.adamsgaard.dk/plan9port
Log
Files
Refs
README
LICENSE
---
commit 49f498ae1193d4e2e867d809fd1dab774ff9f8b8
parent 783aadbdcd39e3850c61528c77fcf878448824f4
Author: rsc 
Date:   Fri, 11 Feb 2005 19:45:55 +0000

remove factotum directory

Diffstat:
  M src/cmd/factotum/dat.h              |       2 ++
  M src/cmd/factotum/fs.c               |      10 ++++++++--
  M src/cmd/factotum/main.c             |       4 ++++

3 files changed, 14 insertions(+), 2 deletions(-)
---
diff --git a/src/cmd/factotum/dat.h b/src/cmd/factotum/dat.h
t@@ -221,5 +221,7 @@ extern int                xiowrite(int, void*, int);
 extern int                xioasrdresp(int, void*, int);
 extern int                xioasgetticket(int, char*, char*);
 
+extern int                extrafactotumdir;
+
 int                havesecstore(void);
 int                secstorefetch(void);
diff --git a/src/cmd/factotum/fs.c b/src/cmd/factotum/fs.c
t@@ -15,6 +15,8 @@ enum
         Qconv,
 };
 
+static int qtop;
+
 Qid
 mkqid(int type, int path)
 {
t@@ -106,7 +108,7 @@ fswalk1(Fid *fid, char *name, Qid *qid)
                                 return nil;
                         }
                 if(strcmp(name, "..") == 0){
-                        *qid = mkqid(QTDIR, Qroot);
+                        *qid = mkqid(QTDIR, qtop);
                         fid->qid = *qid;
                         return nil;
                 }
t@@ -482,7 +484,7 @@ fsproc(void *v)
 static void
 fsattach(Req *r)
 {
-        r->fid->qid = mkqid(QTDIR, Qroot);
+        r->fid->qid = mkqid(QTDIR, qtop);
         r->ofcall.qid = r->fid->qid;
         respond(r, nil);
 }
t@@ -505,6 +507,10 @@ fsstart(Srv *s)
 {
         USED(s);
 
+        if(extrafactotumdir)
+                qtop = Qroot;
+        else
+                qtop = Qfactotum;
         creq = chancreate(sizeof(Req*), 0);
         cfid = chancreate(sizeof(Fid*), 0);
         cfidr = chancreate(sizeof(Fid*), 0);
diff --git a/src/cmd/factotum/main.c b/src/cmd/factotum/main.c
t@@ -1,6 +1,7 @@
 #include "std.h"
 #include "dat.h"
 
+int extrafactotumdir;
 int debug;
 int trysecstore = 1;
 char *factname = "factotum";
t@@ -57,6 +58,9 @@ threadmain(int argc, char *argv[])
         case 'n':
                 trysecstore = 0;
                 break;
+        case 'x':
+                extrafactotumdir = 1;
+                break;
         }ARGEND
 
         if(argc != 0)