maildir.h
上传用户:s81996212
上传日期:2007-01-04
资源大小:722k
文件大小:3k
源码类别:

WEB邮件程序

开发平台:

C/C++

  1. /*
  2. ** $Id: maildir.h,v 1.10 2000/02/23 02:42:28 mrsam Exp $
  3. */
  4. #ifndef maildir_h
  5. #define maildir_h
  6. /*
  7. ** Copyright 1998 - 1999 Double Precision, Inc.  See COPYING for
  8. ** distribution information.
  9. */
  10. #if HAVE_CONFIG_H
  11. #include "config.h"
  12. #endif
  13. #include <stdio.h>
  14. #include <stdlib.h>
  15. #include "folder.h"
  16. MSGINFO *maildir_ngetinfo(const char *);
  17. void maildir_nfreeinfo(MSGINFO *);
  18. extern void maildir_free(MSGINFO **, unsigned);
  19. extern void maildir_remcache(const char *);
  20. extern void maildir_reload(const char *);
  21. extern MSGINFO **maildir_read(const char *, unsigned,
  22. size_t *, int *, int *);
  23. extern void maildir_count(const char *, unsigned *, unsigned *);
  24. extern char *maildir_basename(const char *);
  25. extern char *maildir_find(const char *, const char *);
  26. extern char *maildir_posfind(const char *, size_t *);
  27. extern char maildirfile_type(const char *);
  28. extern void maildir_markread(const char *, size_t);
  29. extern void maildir_markreplied(const char *, const char *);
  30. extern void maildir_msgdeletefile(const char *, const char *, size_t);
  31. extern void maildir_msgpurge(const char *, size_t);
  32. extern void maildir_msgpurgefile(const char *, const char *);
  33. extern int maildir_msgmove(const char *, size_t, const char *);
  34. extern int maildir_msgmovefile(const char *, const char *, const char *, size_t);
  35. extern void maildir_autopurge();
  36. extern char *maildir_readheader(FILE *, char **, int);
  37. extern char *maildir_readheader_mimepart(FILE *, char **, int,
  38. off_t *, const off_t *);
  39. extern char *maildir_readline(FILE *);
  40. extern void maildir_readfolders(char ***);
  41. extern void maildir_freefolders(char ***);
  42. extern int maildir_create(const char *);
  43. extern int maildir_delete(const char *);
  44. extern int maildir_rename(const char *, const char *);
  45. extern int maildir_createmsg(const char *, const char *, char **);
  46. extern int maildir_recreatemsg(const char *, const char *, char **);
  47. extern void maildir_writemsg(int, const char *, size_t);
  48. extern void maildir_writemsgstr(int, const char *);
  49. extern int maildir_closemsg(int, const char *, const char *, int,
  50. unsigned long);
  51. /*
  52. ** Hack: to correctly set Content-Transfer-Encoding: header on sent mail,
  53. ** the message is written out with the header set to 7bit, but the file
  54. ** position of "7bit" is saved. writemsg notes if there were any 8bit
  55. ** characters, and, if necessary, we reseek and change the header in place!
  56. */
  57. extern off_t writebufpos; /* File position updated by writemsg */
  58. extern int writebuf8bit; /* 8 bit character flag */
  59. extern int maildir_writemsg_flush(int);
  60. extern void maildir_deletenewmsg(int n, const char *, const char *);
  61. extern unsigned maildir_countof(const char *);
  62. extern void maildir_savefoldermsgs(const char *);
  63. /*
  64. ** Cache kept in the Maildir directory of the sorted contents of the cur
  65. ** subdirectory.
  66. */
  67. #define MAILDIRCURCACHE "sqwebmail-curcache"
  68. /*
  69. ** Another cache file, but just of message counts in maildir/cur.
  70. */
  71. #define MAILDIRCOUNTCACHE "sqwebmail-curcnt"
  72. #endif