xref: /plan9/sys/src/cmd/ip/imap4d/fns.h (revision fed0fa9e146ce97377041b76bdecad7bcff8a240)
17dd7cddfSDavid du Colombier /*
27dd7cddfSDavid du Colombier  * sorted by 4,/^$/|sort -bd +1
37dd7cddfSDavid du Colombier  */
49a747e4fSDavid du Colombier int	fqid(int fd, Qid *qid);
57dd7cddfSDavid du Colombier int	BNList(Biobuf *b, NList *nl, char *sep);
67dd7cddfSDavid du Colombier int	BSList(Biobuf *b, SList *sl, char *sep);
77dd7cddfSDavid du Colombier int	BimapMimeParams(Biobuf *b, MimeHdr *mh);
87dd7cddfSDavid du Colombier int	Bimapaddr(Biobuf *b, MAddr *a);
97dd7cddfSDavid du Colombier int	Bimapdate(Biobuf *b, Tm *tm);
107dd7cddfSDavid du Colombier int	Bimapstr(Biobuf *b, char *s);
117dd7cddfSDavid du Colombier int	Brfc822date(Biobuf *b, Tm *tm);
127dd7cddfSDavid du Colombier int	appendSave(char *mbox, int flags, char *head, Biobuf *b, long n);
137dd7cddfSDavid du Colombier void	bye(char *fmt, ...);
147dd7cddfSDavid du Colombier int	cdCreate(char *dir, char *file, int mode, ulong perm);
159a747e4fSDavid du Colombier int	cdExists(char *dir, char *file);
169a747e4fSDavid du Colombier Dir	*cdDirstat(char *dir, char *file);
177dd7cddfSDavid du Colombier int	cdDirwstat(char *dir, char *file, Dir *d);
187dd7cddfSDavid du Colombier int	cdOpen(char *dir, char *file, int mode);
197dd7cddfSDavid du Colombier int	cdRemove(char *dir, char *file);
207dd7cddfSDavid du Colombier MbLock	*checkBox(Box *box, int imped);
217dd7cddfSDavid du Colombier int	ciisprefix(char *pre, char *s);
227dd7cddfSDavid du Colombier int	cistrcmp(char*, char*);
237dd7cddfSDavid du Colombier int	cistrncmp(char*, char*, int);
247dd7cddfSDavid du Colombier char	*cistrstr(char *s, char *sub);
257dd7cddfSDavid du Colombier void	closeBox(Box *box, int opened);
267dd7cddfSDavid du Colombier void	closeImp(Box *box, MbLock *ml);
277dd7cddfSDavid du Colombier int	copyBox(char *from, char *to, int doremove);
287dd7cddfSDavid du Colombier int	copyCheck(Box *box, Msg *m, int uids, void *v);
297dd7cddfSDavid du Colombier int	copySave(Box *box, Msg *m, int uids, void *vs);
307dd7cddfSDavid du Colombier char	*cramauth(void);
317dd7cddfSDavid du Colombier int	createBox(char *mbox, int dir);
327dd7cddfSDavid du Colombier Tm	*date2tm(Tm *tm, char *date);
337dd7cddfSDavid du Colombier int	decmutf7(char *out, int nout, char *in);
347dd7cddfSDavid du Colombier int	deleteMsgs(Box *box);
359a747e4fSDavid du Colombier void	debuglog(char *fmt, ...);
367dd7cddfSDavid du Colombier void	*emalloc(ulong);
377dd7cddfSDavid du Colombier int	emptyImp(char *mbox);
3880ee5cbfSDavid du Colombier void	enableForwarding(void);
397dd7cddfSDavid du Colombier int	encmutf7(char *out, int nout, char *in);
407dd7cddfSDavid du Colombier void	*erealloc(void*, ulong);
417dd7cddfSDavid du Colombier char	*estrdup(char*);
427dd7cddfSDavid du Colombier int	expungeMsgs(Box *box, int send);
437dd7cddfSDavid du Colombier void	*ezmalloc(ulong);
447dd7cddfSDavid du Colombier void	fetchBodyFill(ulong n);
457dd7cddfSDavid du Colombier void	fetchBody(Msg *m, Fetch *f);
467dd7cddfSDavid du Colombier Pair	fetchBodyPart(Fetch *f, ulong size);
477dd7cddfSDavid du Colombier void	fetchBodyStr(Fetch *f, char *buf, ulong size);
487dd7cddfSDavid du Colombier void	fetchBodyStruct(Msg *m, Header *h, int extensions);
497dd7cddfSDavid du Colombier void	fetchEnvelope(Msg *m);
507dd7cddfSDavid du Colombier int	fetchMsg(Box *box, Msg *m, int uids, void *fetch);
517dd7cddfSDavid du Colombier Msg	*fetchSect(Msg *m, Fetch *f);
527dd7cddfSDavid du Colombier int	fetchSeen(Box *box, Msg *m, int uids, void *vf);
537dd7cddfSDavid du Colombier void	fetchStructExt(Header *h);
547dd7cddfSDavid du Colombier Msg	*findMsgSect(Msg *m, NList *sect);
557dd7cddfSDavid du Colombier int	forMsgs(Box *box, MsgSet *ms, ulong max, int uids, int (*f)(Box*, Msg*, int, void*), void *rock);
567dd7cddfSDavid du Colombier void	freeMsg(Msg *m);
577dd7cddfSDavid du Colombier ulong	imap4DateTime(char *date);
587dd7cddfSDavid du Colombier int	imap4Date(Tm *tm, char *date);
597dd7cddfSDavid du Colombier int	imap4date(char *s, int n, Tm *tm);
607dd7cddfSDavid du Colombier int	imapTmp(void);
617dd7cddfSDavid du Colombier char	*impName(char *name);
627dd7cddfSDavid du Colombier int	infoIsNil(char *s);
637dd7cddfSDavid du Colombier int	isdotdot(char*);
647dd7cddfSDavid du Colombier int	isprefix(char *pre, char *s);
657dd7cddfSDavid du Colombier int	issuffix(char *suf, char *s);
667dd7cddfSDavid du Colombier int	listBoxes(char *cmd, char *ref, char *pat);
677dd7cddfSDavid du Colombier char	*loginauth(void);
687dd7cddfSDavid du Colombier int	lsubBoxes(char *cmd, char *ref, char *pat);
697dd7cddfSDavid du Colombier char	*maddrStr(MAddr *a);
707dd7cddfSDavid du Colombier ulong	mapFlag(char *name);
717dd7cddfSDavid du Colombier ulong	mapInt(NamedInt *map, char *name);
727dd7cddfSDavid du Colombier void	mbLockRefresh(MbLock *ml);
737dd7cddfSDavid du Colombier int	mbLocked(void);
747dd7cddfSDavid du Colombier MbLock	*mbLock(void);
757dd7cddfSDavid du Colombier void	mbUnlock(MbLock *ml);
767dd7cddfSDavid du Colombier char	*mboxName(char*);
777dd7cddfSDavid du Colombier Fetch	*mkFetch(int op, Fetch *next);
787dd7cddfSDavid du Colombier NList	*mkNList(ulong n, NList *next);
797dd7cddfSDavid du Colombier SList	*mkSList(char *s, SList *next);
807dd7cddfSDavid du Colombier Store	*mkStore(int sign, int op, int flags);
817dd7cddfSDavid du Colombier int	moveBox(char *from, char *to);
827dd7cddfSDavid du Colombier void	msgDead(Msg *m);
837dd7cddfSDavid du Colombier int	msgFile(Msg *m, char *f);
847dd7cddfSDavid du Colombier int	msgInfo(Msg *m);
857dd7cddfSDavid du Colombier int	msgIsMulti(Header *h);
867dd7cddfSDavid du Colombier int	msgIsRfc822(Header *h);
877dd7cddfSDavid du Colombier int	msgSeen(Box *box, Msg *m);
887dd7cddfSDavid du Colombier ulong	msgSize(Msg *m);
897dd7cddfSDavid du Colombier int	msgStruct(Msg *m, int top);
907dd7cddfSDavid du Colombier char	*mutf7str(char*);
917dd7cddfSDavid du Colombier int	myChdir(char *dir);
927dd7cddfSDavid du Colombier int	okMbox(char *mbox);
937dd7cddfSDavid du Colombier Box	*openBox(char *name, char *fsname, int writable);
947dd7cddfSDavid du Colombier int	openLocked(char *dir, char *file, int mode);
957dd7cddfSDavid du Colombier void	parseErr(char *msg);
969a747e4fSDavid du Colombier AuthInfo	*passLogin(char*, char*);
977dd7cddfSDavid du Colombier char	*readFile(int fd);
987dd7cddfSDavid du Colombier void	resetCurDir(void);
997dd7cddfSDavid du Colombier Fetch	*revFetch(Fetch *f);
1007dd7cddfSDavid du Colombier NList	*revNList(NList *s);
1017dd7cddfSDavid du Colombier SList	*revSList(SList *s);
1027dd7cddfSDavid du Colombier int	rfc822date(char *s, int n, Tm *tm);
1037dd7cddfSDavid du Colombier int	searchMsg(Msg *m, Search *s);
1047dd7cddfSDavid du Colombier long	selectFields(char *dst, long n, char *hdr, SList *fields, int matches);
1057dd7cddfSDavid du Colombier void	sendFlags(Box *box, int uids);
1067dd7cddfSDavid du Colombier void	setFlags(Box *box, Msg *m, int f);
1079a747e4fSDavid du Colombier void	setupuser(AuthInfo*);
1087dd7cddfSDavid du Colombier int	storeMsg(Box *box, Msg *m, int uids, void *fetch);
1097dd7cddfSDavid du Colombier char	*strmutf7(char*);
1107dd7cddfSDavid du Colombier void	strrev(char *s, char *e);
1117dd7cddfSDavid du Colombier int	subscribe(char *mbox, int how);
1127dd7cddfSDavid du Colombier void	wrImpFlags(char *buf, int flags, int killRecent);
1137dd7cddfSDavid du Colombier void	writeErr(void);
1147dd7cddfSDavid du Colombier void	writeFlags(Biobuf *b, Msg *m, int recentOk);
1157dd7cddfSDavid du Colombier 
116*fed0fa9eSDavid du Colombier #pragma	varargck argpos	bye		1
117*fed0fa9eSDavid du Colombier #pragma	varargck argpos	debuglog	1
118*fed0fa9eSDavid du Colombier 
1197dd7cddfSDavid du Colombier #define	MK(t)		((t*)emalloc(sizeof(t)))
1207dd7cddfSDavid du Colombier #define	MKZ(t)		((t*)ezmalloc(sizeof(t)))
1217dd7cddfSDavid du Colombier #define	MKN(t,n)	((t*)emalloc((n)*sizeof(t)))
1227dd7cddfSDavid du Colombier #define	MKNZ(t,n)	((t*)ezmalloc((n)*sizeof(t)))
1237dd7cddfSDavid du Colombier #define	MKNA(t,at,n)	((t*)emalloc(sizeof(t) + (n)*sizeof(at)))
1247dd7cddfSDavid du Colombier 
1257dd7cddfSDavid du Colombier #define STRLEN(cs)	(sizeof(cs)-1)
126