move smap/nospam into the mime module.
[apps/madmutt.git] / mutt.h
diff --git a/mutt.h b/mutt.h
index 0e2b285..28f8287 100644 (file)
--- a/mutt.h
+++ b/mutt.h
 #ifndef _MUTT_H
 #define _MUTT_H
 
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <stdio.h>
-#include <limits.h>
-#include <signal.h>
-
-#ifndef _POSIX_PATH_MAX
-#include <posix1_lim.h>
-#endif
-
-#include <lib-lib/buffer.h>
-#include <lib-lib/hash.h>
-#include <lib-lib/list.h>
-#include <lib-lib/rx.h>
-
+#include <lib-lib/lib-lib.h>
 #include <lib-mime/mime.h>
+#include <lib-lua/lib-lua.h>
 
 #define MUTT_VERSION (VERSION)
 
@@ -46,34 +31,21 @@ typedef struct {
   int op;                       /* function op */
 } event_t;
 
-/* flags for mutt_FormatString() */
-typedef enum {
-  M_FORMAT_FORCESUBJ = (1 << 0),        /* print the subject even if unchanged */
-  M_FORMAT_TREE = (1 << 1),     /* draw the thread tree */
-  M_FORMAT_MAKEPRINT = (1 << 2),        /* make sure that all chars are printable */
-  M_FORMAT_OPTIONAL = (1 << 3),
-  M_FORMAT_STAT_FILE = (1 << 4),        /* used by mutt_attach_fmt */
-  M_FORMAT_ARROWCURSOR = (1 << 5),      /* reserve space for arrow_cursor */
-  M_FORMAT_INDEX = (1 << 6)     /* this is a main index entry */
-} format_flag;
-
 /* types for mutt_add_hook() */
 #define M_FOLDERHOOK   1
 #define M_MBOXHOOK     (1<<1)
 #define M_SENDHOOK     (1<<2)
 #define M_FCCHOOK      (1<<3)
 #define M_SAVEHOOK     (1<<4)
-#define M_CHARSETHOOK  (1<<5)
-#define M_ICONVHOOK    (1<<6)
-#define M_MESSAGEHOOK  (1<<7)
-#define M_CRYPTHOOK    (1<<8)
-#define M_ACCOUNTHOOK  (1<<9)
-#define M_REPLYHOOK    (1<<10)
-#define M_SEND2HOOK     (1<<11)
-
-#define M_OPENHOOK     (1<<12)
-#define M_APPENDHOOK   (1<<13)
-#define M_CLOSEHOOK    (1<<14)
+#define M_MESSAGEHOOK  (1<<5)
+#define M_CRYPTHOOK    (1<<6)
+#define M_ACCOUNTHOOK  (1<<7)
+#define M_REPLYHOOK    (1<<8)
+#define M_SEND2HOOK     (1<<9)
+
+#define M_OPENHOOK     (1<<10)
+#define M_APPENDHOOK   (1<<11)
+#define M_CLOSEHOOK    (1<<12)
 
 /* tree characters for linearize_tree and print_enriched_string */
 #define M_TREE_LLCORNER                1
@@ -180,14 +152,6 @@ enum {
   M_SAVE_OVERWRITE
 };
 
-/* possible arguments to set_quadoption() */
-enum {
-  M_NO,
-  M_YES,
-  M_ASKNO,
-  M_ASKYES
-};
-
 /* quad-option vars */
 enum {
   OPT_ABORT,
@@ -207,7 +171,6 @@ enum {
   OPT_POPRECONNECT,
   OPT_POSTPONE,
   OPT_PRINT,
-  OPT_QUIT,
   OPT_REPLYTO,
   OPT_RECALL,
 #if defined(USE_SSL) || defined(USE_GNUTLS)
@@ -243,10 +206,6 @@ enum {
 #define M_SEL_MULTI    (1<<1)
 #define M_SEL_FOLDER   (1<<2)
 
-/* flags for parse_spam_list */
-#define M_SPAM          1
-#define M_NOSPAM        2
-
 /* boolean vars */
 enum {
   OPTALLOW8BIT,
@@ -260,22 +219,18 @@ enum {
   OPTATTACHSPLIT,
   OPTAUTOEDIT,
   OPTAUTOTAG,
-  OPTBEEP,
-  OPTBEEPNEW,
   OPTBOUNCEDELIVERED,
   OPTBRAILLEFRIENDLY,
   OPTCHECKNEW,
   OPTCOLLAPSEUNREAD,
   OPTCONFIRMAPPEND,
   OPTCONFIRMCREATE,
-  OPTCOUNTATTACH,
   OPTDELETEUNTAG,
   OPTDELSP,
   OPTDIGESTCOLLAPSE,
   OPTDUPTHREADS,
   OPTEDITHDRS,
   OPTENCODEFROM,
-  OPTENVFROM,
   OPTFASTREPLY,
   OPTFCCATTACH,
   OPTFCCCLEAR,
@@ -348,7 +303,6 @@ enum {
   OPTREVALIAS,
   OPTREVNAME,
   OPTREVREAL,
-  OPTRFC2047PARAMS,
   OPTSAVEADDRESS,
   OPTSAVEEMPTY,
   OPTSAVENAME,
@@ -359,7 +313,6 @@ enum {
   OPTSPAMSEP,
   OPTSTATUSONTOP,
   OPTSTRICTMAILTO,
-  OPTSTRICTMIME,
   OPTSTRICTTHREADS,
   OPTSTRIPWAS,
   OPTSTUFFQUOTED,
@@ -369,8 +322,6 @@ enum {
   OPTTHREADRECEIVED,
   OPTTILDE,
   OPTUNCOLLAPSEJUMP,
-  OPTUSE8BITMIME,
-  OPTUSEDOMAIN,
   OPTUSEFROM,
   OPTUSEGPGAGENT,
 #ifdef HAVE_LIBIDN
@@ -407,9 +358,6 @@ enum {
   OPTPGPCHECKEXIT,
   OPTPGPLONGIDS,
   OPTPGPAUTODEC,
-#if 0
-  OPTPGPENCRYPTSELF,
-#endif
   OPTPGPRETAINABLESIG,
   OPTPGPSTRICTENC,
   OPTFORWDECRYPT,
@@ -431,7 +379,6 @@ enum {
 
   OPTAUXSORT,                   /* (pseudo) using auxillary sort function */
   OPTFORCEREFRESH,              /* (pseudo) refresh even during macros */
-  OPTLOCALES,                   /* (pseudo) set if user has valid locale definition */
   OPTNOCURSES,                  /* (pseudo) when sending in batch mode */
   OPTNEEDREDRAW,                /* (pseudo) to notify caller of a submenu */
   OPTSEARCHREVERSE,             /* (pseudo) used by ci_search_command */
@@ -479,19 +426,6 @@ enum {
 #define toggle_option(x) mutt_bit_toggle(Options,x)
 #define option(x) mutt_bit_isset(Options,x)
 
-typedef struct spam_list_t {
-  rx_t *rx;
-  int nmatch;
-  char *template;
-  struct spam_list_t *next;
-} SPAM_LIST;
-
-
-#define mutt_new_spam_list() p_new(SPAM_LIST, 1)
-void mutt_free_spam_list (SPAM_LIST **);
-
-int mutt_matches_ignore (const char *, string_list_t *);
-
 void mutt_init (int, string_list_t *);
 
 typedef struct thread {
@@ -511,26 +445,8 @@ typedef struct thread {
   HEADER *sort_key;
 } THREAD;
 
-
-/* flag to mutt_pattern_comp() */
-#define M_FULL_MSG      (1<<0)       /* enable body and header matching */
-
-typedef enum {
-  M_MATCH_FULL_ADDRESS = 1
-} pattern_exec_flag;
-
-typedef struct pattern_t {
-  short op;
-  unsigned int not : 1;
-  unsigned int alladdr : 1;
-  unsigned int stringmatch : 1;
-  int min;
-  int max;
-  struct pattern_t *next;
-  struct pattern_t *child;      /* arguments to logical op */
-  char* str;
-  regex_t *rx;
-} pattern_t;
+typedef struct compress_info compress_info;
+typedef struct pattern_t pattern_t;
 
 typedef struct {
   char *path;
@@ -544,9 +460,9 @@ typedef struct {
   HEADER **hdrs;
   HEADER *last_tag;             /* last tagged msg. used to link threads */
   THREAD *tree;                 /* top of thread tree */
-  HASH *id_hash;                /* hash table by msg id */
-  HASH *subj_hash;              /* hash table by subject */
-  HASH *thread_hash;            /* hash table for threading */
+  hash_t *id_hash;                /* hash table by msg id */
+  hash_t *subj_hash;              /* hash table by subject */
+  hash_t *thread_hash;            /* hash table for threading */
   int *v2r;                     /* mapping from virtual to real msgno */
   int hdrmax;                   /* number of pointers in hdrs */
   int msgcount;                 /* number of messages in the mailbox */
@@ -562,7 +478,7 @@ typedef struct {
 
   short magic;                  /* mailbox type */
 
-  void *compressinfo;           /* compressed mbox module private data */
+  compress_info *cinfo;         /* compressed mbox module private data */
   char *realpath;               /* path to compressed mailbox */
 
   unsigned int locked:1;        /* is the mailbox locked? */