Use m_tempfile and better errors msg
[apps/madmutt.git] / globals.h
index b781d87..a115c19 100644 (file)
--- a/globals.h
+++ b/globals.h
@@ -1,20 +1,15 @@
 /*
+ * Copyright notice from original mutt:
  * Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>
- * 
- *     This program is free software; you can redistribute it and/or modify
- *     it under the terms of the GNU General Public License as published by
- *     the Free Software Foundation; either version 2 of the License, or
- *     (at your option) any later version.
- * 
- *     This program is distributed in the hope that it will be useful,
- *     but WITHOUT ANY WARRANTY; without even the implied warranty of
- *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *     GNU General Public License for more details.
- * 
- *     You should have received a copy of the GNU General Public License
- *     along with this program; if not, write to the Free Software
- *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- */ 
+ *
+ * This file is part of mutt-ng, see http://www.muttng.org/.
+ * It's licensed under the GNU General Public License,
+ * please see the file GPL in the top level source directory.
+ */
+#ifndef _GLOBALS_H
+#define _GLOBALS_H
+
+#include <lib-lib/lib-lib.h>
 
 WHERE void (*mutt_error) (const char *, ...);
 WHERE void (*mutt_message) (const char *, ...);
@@ -26,18 +21,15 @@ WHERE char AttachmentMarker[STRING];
 
 WHERE char Quotebuf[SHORT_STRING];
 
-#if defined(DL_STANDALONE) && defined(USE_DOTLOCK)
 WHERE char *MuttDotlock;
-#endif
 
-WHERE ADDRESS *From;
+WHERE address_t *EnvFrom;
+WHERE address_t *From;
 
-WHERE char *AliasFile;
-WHERE char *AliasFmt;
+WHERE char *AssumedCharset;
 WHERE char *AttachSep;
 WHERE char *Attribution;
 WHERE char *AttachFormat;
-WHERE char *Charset;
 WHERE char *ComposeFormat;
 WHERE char *ConfigCharset;
 WHERE char *ContentType;
@@ -47,40 +39,50 @@ WHERE char *DisplayFilter;
 WHERE char *DsnNotify;
 WHERE char *DsnReturn;
 WHERE char *Editor;
-WHERE char *EscChar;
+WHERE char *EditorHeaders;
+WHERE char *FileCharset;
 WHERE char *FolderFormat;
 WHERE char *ForwFmt;
 WHERE char *Fqdn;
 WHERE char *HdrFmt;
 WHERE char *Homedir;
 WHERE char *Hostname;
-#ifdef USE_IMAP
+
 WHERE char *ImapAuthenticators INITVAL (NULL);
 WHERE char *ImapDelimChars INITVAL (NULL);
 WHERE char *ImapHeaders;
 WHERE char *ImapHomeNamespace INITVAL (NULL);
+WHERE char *ImapLogin INITVAL (NULL);
 WHERE char *ImapPass INITVAL (NULL);
 WHERE char *ImapUser INITVAL (NULL);
-#endif
 WHERE char *Inbox;
 WHERE char *Ispell;
 WHERE char *Locale;
 WHERE char *MailcapPath;
 WHERE char *Maildir;
-#if USE_HCACHE
+
+#ifdef USE_HCACHE
 WHERE char *HeaderCache;
+#if defined(HAVE_GDBM) || defined(HAVE_DB4)
 WHERE char *HeaderCachePageSize;
-#endif
+#endif /* HAVE_GDBM || HAVE_DB4 */
+#endif /* USE_HCACHE */
 WHERE char *MhFlagged;
 WHERE char *MhReplied;
 WHERE char *MhUnseen;
 WHERE char *MsgFmt;
 WHERE char *MsgIdFormat;
 
-#ifdef USE_SOCKET
+WHERE rx_t AttachRemindRegexp;
+WHERE rx_t Mask;
+WHERE rx_t QuoteRegexp;
+WHERE rx_t ReplyRegexp;
+WHERE rx_t Smileys;
+WHERE rx_t StripWasRegexp;
+
 WHERE char *Preconnect INITVAL (NULL);
 WHERE char *Tunnel INITVAL (NULL);
-#endif /* USE_SOCKET */
+WHERE short NetInc;
 
 #ifdef MIXMASTER
 WHERE char *Mixmaster;
@@ -90,6 +92,7 @@ WHERE char *MixEntryFormat;
 WHERE char *OperatingSystem INITVAL (NULL);
 
 WHERE char *Muttrc INITVAL (NULL);
+
 #ifdef USE_NNTP
 WHERE char *NewsCacheDir;
 WHERE char *GroupFormat;
@@ -103,13 +106,13 @@ WHERE char *Outbox;
 WHERE char *Pager;
 WHERE char *PagerFmt;
 WHERE char *PipeSep;
-#ifdef USE_POP
+
 WHERE char *PopAuthenticators INITVAL (NULL);
 WHERE short PopCheckTimeout;
 WHERE char *PopHost;
 WHERE char *PopPass INITVAL (NULL);
 WHERE char *PopUser INITVAL (NULL);
-#endif
+
 WHERE char *PostIndentString;
 WHERE char *Postponed;
 WHERE char *Prefix;
@@ -119,23 +122,33 @@ WHERE char *Realname;
 WHERE char *SendCharset;
 WHERE char *Sendmail;
 WHERE char *Shell;
+WHERE char *SidebarDelim;
+WHERE char *SidebarNumberFormat;
+WHERE char *SidebarBoundary;
 WHERE char *Signature;
+WHERE char *SignOffString;
 WHERE char *SimpleSearch;
+
 #if defined(USE_LIBESMTP)
 WHERE char *SmtpAuthUser;
 WHERE char *SmtpAuthPass;
 WHERE char *SmtpHost;
 WHERE unsigned short SmtpPort;
+WHERE char *SmtpUseTLS;
 #endif
 WHERE char *Spoolfile;
 WHERE char *SpamSep;
-#if defined(USE_SSL) || defined(USE_NSS) || defined(USE_GNUTLS)
+
+#if defined(USE_SSL) || defined(USE_GNUTLS)
 WHERE char *SslCertFile INITVAL (NULL);
 #endif
-#if defined(USE_SSL) || defined(USE_NSS)
+#if defined(USE_SSL)
 WHERE char *SslEntropyFile INITVAL (NULL);
 #endif
+#ifdef USE_SSL
 WHERE char *SslClientCert INITVAL (NULL);
+WHERE string_list_t *SslSessionCerts INITVAL (NULL);
+#endif
 #ifdef USE_GNUTLS
 WHERE short SslDHPrimeBits;
 WHERE char *SslCACertFile INITVAL (NULL);
@@ -146,41 +159,47 @@ WHERE char *Tempdir;
 WHERE char *Tochars;
 WHERE char *TrashPath;
 WHERE char *Username;
-WHERE char *Visual;
 WHERE char *XtermTitle;
+WHERE char *XtermLeave;
 WHERE char *XtermIcon;
 
+WHERE char *CurrentFolder;
 WHERE char *LastFolder;
 
-WHERE LIST *AutoViewList INITVAL(0);
-WHERE LIST *AlternativeOrderList INITVAL(0);
-WHERE LIST *HeaderOrderList INITVAL(0);
-WHERE LIST *Ignore INITVAL(0);
-WHERE LIST *MimeLookupList INITVAL(0);
-WHERE LIST *UnIgnore INITVAL(0);
-
-WHERE RX_LIST *Alternates INITVAL(0);
-WHERE RX_LIST *MailLists INITVAL(0);
-WHERE RX_LIST *SubscribedLists INITVAL(0);
-WHERE SPAM_LIST *SpamList INITVAL(0);
-WHERE RX_LIST *NoSpamList INITVAL(0);
+WHERE string_list_t *AutoViewList INITVAL (0);
+WHERE string_list_t *AlternativeOrderList INITVAL (0);
+WHERE string_list_t *AttachAllow INITVAL(0);
+WHERE string_list_t *AttachExclude INITVAL(0);
+WHERE string_list_t *InlineAllow INITVAL(0);
+WHERE string_list_t *InlineExclude INITVAL(0);
+WHERE string_list_t *HeaderOrderList INITVAL (0);
+WHERE string_list_t *Ignore INITVAL (0);
+WHERE string_list_t *MimeLookupList INITVAL (0);
+WHERE string_list_t *UnIgnore INITVAL (0);
+
+WHERE rx_t *Alternates INITVAL (0);
+WHERE rx_t *UnAlternates INITVAL (0);
+WHERE rx_t *MailLists INITVAL (0);
+WHERE rx_t *UnMailLists INITVAL (0);
+WHERE rx_t *SubscribedLists INITVAL (0);
+WHERE rx_t *UnSubscribedLists INITVAL (0);
+WHERE rx_t *SpamList INITVAL (0);
+WHERE rx_t *NoSpamList INITVAL (0);
 
 /* bit vector for boolean variables */
 #ifdef MAIN_C
-unsigned char Options[(OPTMAX + 7)/8];
+unsigned char Options[(OPTMAX + 7) / 8];
 #else
 extern unsigned char Options[];
 #endif
 
 /* bit vector for the yes/no/ask variable type */
 #ifdef MAIN_C
-unsigned char QuadOptions[(OPT_MAX*2 + 7) / 8];
+unsigned char QuadOptions[(OPT_MAX * 2 + 7) / 8];
 #else
 extern unsigned char QuadOptions[];
 #endif
 
-WHERE unsigned short Counter INITVAL (0);
-
 #ifdef USE_NNTP
 WHERE short NewsPollTimeout;
 WHERE short NntpContext;
@@ -188,26 +207,28 @@ WHERE short NntpContext;
 
 WHERE short ConnectTimeout;
 WHERE short HistSize;
+WHERE short MenuContext;
 WHERE short PagerContext;
 WHERE short PagerIndexLines;
 WHERE short ReadInc;
 WHERE short SendmailWait;
 WHERE short SleepTime INITVAL (1);
 WHERE short Timeout;
-WHERE short Umask INITVAL(0077);
+WHERE short Umask INITVAL (0077);
 WHERE short WrapMargin;
 WHERE short WriteInc;
+WHERE short MaxDispRecips;
+WHERE short MaxLineLength;
 
 WHERE short ScoreThresholdDelete;
 WHERE short ScoreThresholdRead;
 WHERE short ScoreThresholdFlag;
 
-WHERE struct buffy_t *CurBuffy INITVAL(0);
-WHERE short DrawFullLine INITVAL(0);
+WHERE short DrawFullLine INITVAL (0);
 WHERE short SidebarWidth;
-#ifdef USE_IMAP
+
 WHERE short ImapKeepalive;
-#endif
+WHERE short ImapBuffyTimeout;
 
 /* flags for received signals */
 WHERE SIG_ATOMIC_VOLATILE_T SigAlrm INITVAL (0);
@@ -216,11 +237,10 @@ WHERE SIG_ATOMIC_VOLATILE_T SigWinch INITVAL (0);
 
 WHERE int CurrentMenu;
 
-WHERE ALIAS *Aliases INITVAL (0);
-WHERE LIST *UserHeader INITVAL (0);
+WHERE string_list_t *UserHeader INITVAL (0);
 
 /*-- formerly in pgp.h --*/
-WHERE REGEXP PgpGoodSign;
+WHERE rx_t PgpGoodSign;
 WHERE char *PgpSignAs;
 WHERE short PgpTimeout;
 WHERE char *PgpEntryFormat;
@@ -244,7 +264,6 @@ WHERE char *SmimeCryptAlg;
 WHERE short SmimeTimeout;
 WHERE char *SmimeCertificates;
 WHERE char *SmimeKeys;
-WHERE char *SmimeCryptAlg;
 WHERE char *SmimeCALocation;
 WHERE char *SmimeVerifyCommand;
 WHERE char *SmimeVerifyOpaqueCommand;
@@ -258,29 +277,14 @@ WHERE char *SmimeGetCertCommand;
 WHERE char *SmimeImportCertCommand;
 WHERE char *SmimeGetCertEmailCommand;
 
-
-
-#ifdef DEBUG
-WHERE FILE *debugfile INITVAL (0);
-WHERE int debuglevel INITVAL (0);
-#endif
-
 #ifdef MAIN_C
 const char *Weekdays[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-const char *Months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "ERR" };
-
-const char *BodyTypes[] = { "x-unknown", "audio", "application", "image", "message", "model", "multipart", "text", "video" };
-const char *BodyEncodings[] = { "x-unknown", "7bit", "8bit", "quoted-printable", "base64", "binary", "x-uuencoded" };
+const char *Months[] =
+  { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct",
+"Nov", "Dec", "ERR" };
 #else
 extern const char *Weekdays[];
 extern const char *Months[];
 #endif
 
-#ifdef MAIN_C
-/* so that global vars get included */ 
-#include "mx.h"
-#include "mutt_regex.h"
-#include "buffy.h"
-#include "sort.h"
-#include "mutt_crypt.h"
-#endif /* MAIN_C */
+#endif /* !_GLOBALS_H */