xref: /plan9/sys/src/cmd/ip/imap4d/fns.h (revision fed0fa9e146ce97377041b76bdecad7bcff8a240)
1 /*
2  * sorted by 4,/^$/|sort -bd +1
3  */
4 int	fqid(int fd, Qid *qid);
5 int	BNList(Biobuf *b, NList *nl, char *sep);
6 int	BSList(Biobuf *b, SList *sl, char *sep);
7 int	BimapMimeParams(Biobuf *b, MimeHdr *mh);
8 int	Bimapaddr(Biobuf *b, MAddr *a);
9 int	Bimapdate(Biobuf *b, Tm *tm);
10 int	Bimapstr(Biobuf *b, char *s);
11 int	Brfc822date(Biobuf *b, Tm *tm);
12 int	appendSave(char *mbox, int flags, char *head, Biobuf *b, long n);
13 void	bye(char *fmt, ...);
14 int	cdCreate(char *dir, char *file, int mode, ulong perm);
15 int	cdExists(char *dir, char *file);
16 Dir	*cdDirstat(char *dir, char *file);
17 int	cdDirwstat(char *dir, char *file, Dir *d);
18 int	cdOpen(char *dir, char *file, int mode);
19 int	cdRemove(char *dir, char *file);
20 MbLock	*checkBox(Box *box, int imped);
21 int	ciisprefix(char *pre, char *s);
22 int	cistrcmp(char*, char*);
23 int	cistrncmp(char*, char*, int);
24 char	*cistrstr(char *s, char *sub);
25 void	closeBox(Box *box, int opened);
26 void	closeImp(Box *box, MbLock *ml);
27 int	copyBox(char *from, char *to, int doremove);
28 int	copyCheck(Box *box, Msg *m, int uids, void *v);
29 int	copySave(Box *box, Msg *m, int uids, void *vs);
30 char	*cramauth(void);
31 int	createBox(char *mbox, int dir);
32 Tm	*date2tm(Tm *tm, char *date);
33 int	decmutf7(char *out, int nout, char *in);
34 int	deleteMsgs(Box *box);
35 void	debuglog(char *fmt, ...);
36 void	*emalloc(ulong);
37 int	emptyImp(char *mbox);
38 void	enableForwarding(void);
39 int	encmutf7(char *out, int nout, char *in);
40 void	*erealloc(void*, ulong);
41 char	*estrdup(char*);
42 int	expungeMsgs(Box *box, int send);
43 void	*ezmalloc(ulong);
44 void	fetchBodyFill(ulong n);
45 void	fetchBody(Msg *m, Fetch *f);
46 Pair	fetchBodyPart(Fetch *f, ulong size);
47 void	fetchBodyStr(Fetch *f, char *buf, ulong size);
48 void	fetchBodyStruct(Msg *m, Header *h, int extensions);
49 void	fetchEnvelope(Msg *m);
50 int	fetchMsg(Box *box, Msg *m, int uids, void *fetch);
51 Msg	*fetchSect(Msg *m, Fetch *f);
52 int	fetchSeen(Box *box, Msg *m, int uids, void *vf);
53 void	fetchStructExt(Header *h);
54 Msg	*findMsgSect(Msg *m, NList *sect);
55 int	forMsgs(Box *box, MsgSet *ms, ulong max, int uids, int (*f)(Box*, Msg*, int, void*), void *rock);
56 void	freeMsg(Msg *m);
57 ulong	imap4DateTime(char *date);
58 int	imap4Date(Tm *tm, char *date);
59 int	imap4date(char *s, int n, Tm *tm);
60 int	imapTmp(void);
61 char	*impName(char *name);
62 int	infoIsNil(char *s);
63 int	isdotdot(char*);
64 int	isprefix(char *pre, char *s);
65 int	issuffix(char *suf, char *s);
66 int	listBoxes(char *cmd, char *ref, char *pat);
67 char	*loginauth(void);
68 int	lsubBoxes(char *cmd, char *ref, char *pat);
69 char	*maddrStr(MAddr *a);
70 ulong	mapFlag(char *name);
71 ulong	mapInt(NamedInt *map, char *name);
72 void	mbLockRefresh(MbLock *ml);
73 int	mbLocked(void);
74 MbLock	*mbLock(void);
75 void	mbUnlock(MbLock *ml);
76 char	*mboxName(char*);
77 Fetch	*mkFetch(int op, Fetch *next);
78 NList	*mkNList(ulong n, NList *next);
79 SList	*mkSList(char *s, SList *next);
80 Store	*mkStore(int sign, int op, int flags);
81 int	moveBox(char *from, char *to);
82 void	msgDead(Msg *m);
83 int	msgFile(Msg *m, char *f);
84 int	msgInfo(Msg *m);
85 int	msgIsMulti(Header *h);
86 int	msgIsRfc822(Header *h);
87 int	msgSeen(Box *box, Msg *m);
88 ulong	msgSize(Msg *m);
89 int	msgStruct(Msg *m, int top);
90 char	*mutf7str(char*);
91 int	myChdir(char *dir);
92 int	okMbox(char *mbox);
93 Box	*openBox(char *name, char *fsname, int writable);
94 int	openLocked(char *dir, char *file, int mode);
95 void	parseErr(char *msg);
96 AuthInfo	*passLogin(char*, char*);
97 char	*readFile(int fd);
98 void	resetCurDir(void);
99 Fetch	*revFetch(Fetch *f);
100 NList	*revNList(NList *s);
101 SList	*revSList(SList *s);
102 int	rfc822date(char *s, int n, Tm *tm);
103 int	searchMsg(Msg *m, Search *s);
104 long	selectFields(char *dst, long n, char *hdr, SList *fields, int matches);
105 void	sendFlags(Box *box, int uids);
106 void	setFlags(Box *box, Msg *m, int f);
107 void	setupuser(AuthInfo*);
108 int	storeMsg(Box *box, Msg *m, int uids, void *fetch);
109 char	*strmutf7(char*);
110 void	strrev(char *s, char *e);
111 int	subscribe(char *mbox, int how);
112 void	wrImpFlags(char *buf, int flags, int killRecent);
113 void	writeErr(void);
114 void	writeFlags(Biobuf *b, Msg *m, int recentOk);
115 
116 #pragma	varargck argpos	bye		1
117 #pragma	varargck argpos	debuglog	1
118 
119 #define	MK(t)		((t*)emalloc(sizeof(t)))
120 #define	MKZ(t)		((t*)ezmalloc(sizeof(t)))
121 #define	MKN(t,n)	((t*)emalloc((n)*sizeof(t)))
122 #define	MKNZ(t,n)	((t*)ezmalloc((n)*sizeof(t)))
123 #define	MKNA(t,at,n)	((t*)emalloc(sizeof(t) + (n)*sizeof(at)))
124 
125 #define STRLEN(cs)	(sizeof(cs)-1)
126