upas/fs: more cleanup...
This commit is contained in:
parent
4b08ef2c55
commit
c8d9390070
3 changed files with 2 additions and 82 deletions
|
@ -362,7 +362,6 @@ top:
|
||||||
void
|
void
|
||||||
cachehash(Mailbox *mb, Message *m)
|
cachehash(Mailbox *mb, Message *m)
|
||||||
{
|
{
|
||||||
// fprint(2, "cachehash %P\n", mpair(mb, m));
|
|
||||||
if(m->whole == m->whole->whole)
|
if(m->whole == m->whole->whole)
|
||||||
henter(PATH(mb->id, Qmbox), m->name,
|
henter(PATH(mb->id, Qmbox), m->name,
|
||||||
(Qid){PATH(m->id, Qdir), 0, QTDIR}, m, mb);
|
(Qid){PATH(m->id, Qdir), 0, QTDIR}, m, mb);
|
||||||
|
|
|
@ -184,18 +184,9 @@ struct Mailbox {
|
||||||
void *aux; /* private to Mailbox implementation */
|
void *aux; /* private to Mailbox implementation */
|
||||||
};
|
};
|
||||||
|
|
||||||
/* print argument tango; can't varargck 2 types. should fix compiler */
|
|
||||||
typedef struct Mpair Mpair;
|
|
||||||
struct Mpair {
|
|
||||||
Mailbox *mb;
|
|
||||||
Message *m;
|
|
||||||
};
|
|
||||||
Mpair mpair(Mailbox*, Message*);
|
|
||||||
|
|
||||||
typedef char *Mailboxinit(Mailbox*, char*);
|
typedef char *Mailboxinit(Mailbox*, char*);
|
||||||
|
|
||||||
Mailboxinit plan9mbox;
|
Mailboxinit plan9mbox;
|
||||||
Mailboxinit planbmbox;
|
|
||||||
Mailboxinit pop3mbox;
|
Mailboxinit pop3mbox;
|
||||||
Mailboxinit imap4mbox;
|
Mailboxinit imap4mbox;
|
||||||
Mailboxinit mdirmbox;
|
Mailboxinit mdirmbox;
|
||||||
|
@ -226,7 +217,6 @@ char* delmessages(int, char**);
|
||||||
char *flagmessages(int, char**);
|
char *flagmessages(int, char**);
|
||||||
void digestmessage(Mailbox*, Message*);
|
void digestmessage(Mailbox*, Message*);
|
||||||
|
|
||||||
uintptr absbos(void);
|
|
||||||
void eprint(char*, ...);
|
void eprint(char*, ...);
|
||||||
void iprint(char *, ...);
|
void iprint(char *, ...);
|
||||||
int newid(void);
|
int newid(void);
|
||||||
|
@ -250,9 +240,6 @@ void parse(Mailbox*, Message*, int, int);
|
||||||
void parseheaders(Mailbox*, Message*, int, int);
|
void parseheaders(Mailbox*, Message*, int, int);
|
||||||
void parsebody(Message*, Mailbox*);
|
void parsebody(Message*, Mailbox*);
|
||||||
char* date822tounix(Message*, char*);
|
char* date822tounix(Message*, char*);
|
||||||
int fidmboxrefs(Mailbox*);
|
|
||||||
int hashmboxrefs(Mailbox*);
|
|
||||||
void checkmboxrefs(void);
|
|
||||||
int strtotm(char*, Tm*);
|
int strtotm(char*, Tm*);
|
||||||
char* lowercase(char*);
|
char* lowercase(char*);
|
||||||
|
|
||||||
|
@ -375,7 +362,6 @@ extern Refs *rtab;
|
||||||
#define Topmsg(mb, m) (m->whole == mb->root)
|
#define Topmsg(mb, m) (m->whole == mb->root)
|
||||||
#pragma varargck type "A" uchar*
|
#pragma varargck type "A" uchar*
|
||||||
#pragma varargck type "D" uvlong
|
#pragma varargck type "D" uvlong
|
||||||
#pragma varargck type "P" Mpair
|
|
||||||
#pragma varargck type "Δ" uvlong
|
#pragma varargck type "Δ" uvlong
|
||||||
#pragma varargck argpos eprint 1
|
#pragma varargck argpos eprint 1
|
||||||
#pragma varargck argpos iprint 1
|
#pragma varargck argpos iprint 1
|
||||||
|
|
|
@ -211,51 +211,6 @@ Dfmt(Fmt *f)
|
||||||
return fmtstrcpy(f, buf);
|
return fmtstrcpy(f, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
Mpair
|
|
||||||
mpair(Mailbox *mb, Message *m)
|
|
||||||
{
|
|
||||||
Mpair mp;
|
|
||||||
|
|
||||||
mp.mb = mb;
|
|
||||||
mp.m = m;
|
|
||||||
return mp;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
Pfmt(Fmt *f)
|
|
||||||
{
|
|
||||||
char buf[128], *p, *e;
|
|
||||||
int i, dots;
|
|
||||||
Mailbox *mb;
|
|
||||||
Message *t[32], *m;
|
|
||||||
Mpair mp;
|
|
||||||
|
|
||||||
mp = va_arg(f->args, Mpair);
|
|
||||||
mb = mp.mb;
|
|
||||||
m = mp.m;
|
|
||||||
if(m == nil || mb == nil)
|
|
||||||
return fmtstrcpy(f, "<P nil>");
|
|
||||||
i = 0;
|
|
||||||
for(; !Topmsg(mb, m); m = m->whole){
|
|
||||||
t[i++] = m;
|
|
||||||
if(i == nelem(t)-1)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
t[i++] = m;
|
|
||||||
dots = 0;
|
|
||||||
if(i == nelem(t))
|
|
||||||
dots = 1;
|
|
||||||
e = buf + sizeof buf;
|
|
||||||
p = buf;
|
|
||||||
if(dots)
|
|
||||||
p = seprint(p, e, ".../");
|
|
||||||
while(--i >= 1)
|
|
||||||
p = seprint(p, e, "%s/", t[i]->name);
|
|
||||||
if(i == 0)
|
|
||||||
seprint(p, e, "%s", t[0]->name);
|
|
||||||
return fmtstrcpy(f, buf);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
usage(void)
|
usage(void)
|
||||||
{
|
{
|
||||||
|
@ -375,7 +330,6 @@ main(int argc, char *argv[])
|
||||||
fmtinstall(L'Δ', Δfmt);
|
fmtinstall(L'Δ', Δfmt);
|
||||||
fmtinstall('F', fcallfmt);
|
fmtinstall('F', fcallfmt);
|
||||||
fmtinstall('H', encodefmt); /* forces tls stuff */
|
fmtinstall('H', encodefmt); /* forces tls stuff */
|
||||||
fmtinstall('P', Pfmt);
|
|
||||||
quotefmtinstall();
|
quotefmtinstall();
|
||||||
if(pipe(p) < 0)
|
if(pipe(p) < 0)
|
||||||
error("pipe failed");
|
error("pipe failed");
|
||||||
|
@ -833,9 +787,8 @@ doclone(Fid *f, int nfid)
|
||||||
if(nf->mtop = f->mtop)
|
if(nf->mtop = f->mtop)
|
||||||
msgincref(nf->mtop);
|
msgincref(nf->mtop);
|
||||||
nf->qid = f->qid;
|
nf->qid = f->qid;
|
||||||
if(nf->mb){
|
if(nf->mb)
|
||||||
qunlock(nf->mb);
|
qunlock(nf->mb);
|
||||||
}
|
|
||||||
return nf;
|
return nf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1413,9 +1366,8 @@ rclunk(Fid *f)
|
||||||
f->fid = -1;
|
f->fid = -1;
|
||||||
f->open = 0;
|
f->open = 0;
|
||||||
mb = f->mb;
|
mb = f->mb;
|
||||||
if(mb){
|
if(mb)
|
||||||
qlock(mb);
|
qlock(mb);
|
||||||
}
|
|
||||||
if(f->mtop)
|
if(f->mtop)
|
||||||
msgdecref(mb, f->mtop);
|
msgdecref(mb, f->mtop);
|
||||||
if(f->m)
|
if(f->m)
|
||||||
|
@ -1749,7 +1701,6 @@ henter(ulong ppath, char *name, Qid qid, Message *m, Mailbox *mb)
|
||||||
int h;
|
int h;
|
||||||
Hash *hp, **l;
|
Hash *hp, **l;
|
||||||
|
|
||||||
//if(m)sanemsg(m);
|
|
||||||
qlock(&hashlock);
|
qlock(&hashlock);
|
||||||
h = hash(ppath, name);
|
h = hash(ppath, name);
|
||||||
for(l = &htab[h]; *l != nil; l = &(*l)->next){
|
for(l = &htab[h]; *l != nil; l = &(*l)->next){
|
||||||
|
@ -1792,22 +1743,6 @@ hfree(ulong ppath, char *name)
|
||||||
qunlock(&hashlock);
|
qunlock(&hashlock);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
hashmboxrefs(Mailbox *mb)
|
|
||||||
{
|
|
||||||
int h;
|
|
||||||
Hash *hp;
|
|
||||||
int refs = 0;
|
|
||||||
|
|
||||||
qlock(&hashlock);
|
|
||||||
for(h = 0; h < Hsize; h++)
|
|
||||||
for(hp = htab[h]; hp != nil; hp = hp->next)
|
|
||||||
if(hp->mb == mb)
|
|
||||||
refs++;
|
|
||||||
qunlock(&hashlock);
|
|
||||||
return refs;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
post(char *name, char *envname, int srvfd)
|
post(char *name, char *envname, int srvfd)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue