X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-mime%2Fmime.cpkg;h=332bc1ff88d65e40362061c81837cb0260f2727e;hp=1e976131da5e9dae9bdd9f935acccd2eac3df60f;hb=58e0ddff3bd5e1b9455e8c3ebb1f4b9e7dd71920;hpb=11a177822f648694f442b3038fdc60a4e50e6edb diff --git a/lib-mime/mime.cpkg b/lib-mime/mime.cpkg index 1e97613..332bc1f 100644 --- a/lib-mime/mime.cpkg +++ b/lib-mime/mime.cpkg @@ -54,6 +54,15 @@ const char *BodyEncodings[] = { rx_t *SpamList = NULL, *NoSpamList = NULL; +static char *mailcap_init(void) +{ + /* Default search path from RFC1524 */ + const char *path = "~/.mailcap:" PKGDATADIR "/mailcap:" + SYSCONFDIR "/mailcap:/etc/mailcap:" + "/usr/etc/mailcap:/usr/local/etc/mailcap"; + return m_strdup(getenv("MAILCAPS") ?: path); +} + @package Mime { /* ** .pp @@ -65,9 +74,28 @@ rx_t *SpamList = NULL, *NoSpamList = NULL; */ string_t spam_separator = m_strdup(","); + /* + ** .pp + ** This variable specifies which files to consult when attempting to + ** display MIME bodies not directly supported by Madmutt. + */ + string_t mailcap_path = mailcap_init(); + + /* + ** .pp + ** If \fIset\fP, Madmutt will restrict possible characters in mailcap \fT%\fP expandos + ** to a well-defined set of safe characters. This is the safe setting, + ** but we are not sure it doesn't break some more advanced MIME stuff. + ** .pp + ** \fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE + ** DOING!\fP + */ + bool mailcap_sanitize = 1; + void spam(rx_t rx, const string_t tpl) { rx_set_template(rx, tpl); - rx_list_append(&SpamList, rx); + rx_list_remove(&NoSpamList, rx); + rx_list_add2(&SpamList, &rx); RETURN(); }; @@ -77,7 +105,8 @@ rx_t *SpamList = NULL, *NoSpamList = NULL; rx_list_wipe(&NoSpamList); rx_delete(&rx); } else { - rx_list_append(&NoSpamList, rx); + rx_list_remove(&SpamList, rx); + rx_list_add2(&NoSpamList, &rx); } RETURN(); };