static int CurRCLine = 0;
/* prototypes for checking for special vars */
-static int check_dsn_return (const char* option, unsigned long val,
- char* errbuf, ssize_t errlen);
-static int check_dsn_notify (const char* option, unsigned long val,
- char* errbuf, ssize_t errlen);
static int check_history (const char* option, unsigned long val,
char* errbuf, ssize_t errlen);
/* this checks that numbers are >= 0 */
int (*check) (const char* option, unsigned long val,
char* errbuf, ssize_t errlen);
} SpecialVars[] = {
- { "dsn_notify", check_dsn_notify },
- { "dsn_return", check_dsn_return },
#if defined (USE_LIBESMTP) && (defined (USE_SSL) || defined (USE_GNUTLS))
{ "smtp_use_tls", mutt_libesmtp_check_usetls },
#endif
set_option (OPTREDRAWTREE);
}
-/* check whether value for $dsn_return would be valid */
-static int check_dsn_return (const char* option __attribute__ ((unused)), unsigned long p,
- char* errbuf, ssize_t errlen) {
- char* val = (char*) p;
- if (val && *val && m_strncmp(val, "hdrs", 4) != 0 &&
- m_strncmp(val, "full", 4) != 0) {
- if (errbuf)
- snprintf (errbuf, errlen, _("'%s' is invalid for $%s"), val, "dsn_return");
- return (0);
- }
- return (1);
-}
-
-/* check whether value for $dsn_notify would be valid */
-static int
-check_dsn_notify (const char* option __attribute__ ((unused)),
- unsigned long val, char* errbuf, ssize_t errlen)
-{
- const char *p = (const char*)val;
-
- while (p && *p) {
- const char *q = m_strchrnul(p, ',');
- int len = q - p;
-
- if (!m_strncmp(p, "never", len) && !m_strncmp(p, "delay", len)
- && !m_strncmp(p, "failure", len) && !m_strncmp(p, "success", len))
- {
- if (errbuf)
- snprintf(errbuf, errlen, _("'%.*s' is invalid for $%s"),
- len, p, "dsn_notify");
- return 0;
- }
-
- p = q + 1;
- }
-
- return 1;
-}
-
static int check_num (const char* option, unsigned long p,
char* errbuf, ssize_t errlen) {
if ((int) p < 0) {