* It's licensed under the GNU General Public License,
* please see the file GPL in the top level source directory.
*/
-#if HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <stdarg.h>
#include <lib-lib/lib-lib.h>
#include <lib-ui/enter.h>
+#include <lib-ui/curses.h>
#include "mutt.h"
-
+#include "mutt_libesmtp.h"
#if defined (USE_SSL) || (defined (USE_GNUTLS) && defined (HAVE_GNUTLS_OPENSSL_H))
#include <openssl/ssl.h>
#endif
-#include <errno.h>
-
#include <auth-client.h>
#include <libesmtp.h>
static int
_mutt_libesmtp_auth_interact (auth_client_request_t request,
- char **result, int fields, void *arg)
+ char **result, int fields,
+ void *arg __attribute__ ((unused)))
{
int i;
int octets;
if (*buf == NULL)
- *buf = malloc (BUFLEN);
+ *buf = xmalloc(BUFLEN);
if (len == NULL) {
rewind ((FILE *) arg);
char *p = strchr (*buf, '\0');
if (p[-1] == '\n' && p[-2] != '\r') {
- strcpy (p - 1, "\r\n");
+ m_strcpy(p - 1, (char *) *buf + BUFLEN - p + 1, "\r\n");
p++;
}
octets = p - (char *) *buf;
return 1; /* Accept the problem */
}
-static void event_cb (smtp_session_t session, int event_no, void *arg,...)
+static void event_cb (smtp_session_t session __attribute__ ((unused)),
+ int event_no, void *arg,...)
{
va_list alist;
int *ok;
int flags = Notify_NOTSET;
smtp_recipient_t self = NULL;
- if (!DsnNotify || !*DsnNotify || !message || !from || !*from ||
- strstr (DsnNotify, "never") != NULL)
+ if (m_strisempty(MTransport.dsn_notify) || !message || m_strisempty(from) ||
+ strstr (MTransport.dsn_notify, "never") != NULL)
return;
- if (strstr (DsnNotify, "failure") != NULL)
+ if (strstr (MTransport.dsn_notify, "failure") != NULL)
flags |= Notify_FAILURE;
- if (strstr (DsnNotify, "delay") != NULL)
+ if (strstr (MTransport.dsn_notify, "delay") != NULL)
flags |= Notify_DELAY;
- if (strstr (DsnNotify, "success") != NULL)
+ if (strstr (MTransport.dsn_notify, "success") != NULL)
flags |= Notify_SUCCESS;
if (flags != Notify_NOTSET) {
}
static void do_dsn_ret (smtp_message_t message) {
- if (!DsnReturn || !*DsnReturn || !message)
+ if (m_strisempty(MTransport.dsn_return) || !message)
return;
- if (ascii_strncasecmp (DsnReturn, "hdrs", 4) == 0)
+ if (ascii_strncasecmp (MTransport.dsn_return, "hdrs", 4) == 0)
smtp_dsn_set_ret (message, Ret_HDRS);
- else if (ascii_strncasecmp (DsnReturn, "full", 4) == 0)
+ else if (ascii_strncasecmp (MTransport.dsn_return, "full", 4) == 0)
smtp_dsn_set_ret (message, Ret_FULL);
}
#if defined (USE_LIBESMTP) && (defined (USE_SSL) || defined (USE_GNUTLS))
int mutt_libesmtp_check_usetls (const char* option, unsigned long p,
- char* errbuf, size_t errlen) {
+ char* errbuf, ssize_t errlen) {
char* val = (char*) p;
- if (!val || !*val)
+ if (m_strisempty(val))
return (1);
if (m_strncmp(val, "enabled", 7) != 0 &&
m_strncmp(val, "required", 8) != 0) {
SMTPFAIL ("smtp_add_message");
/* Initialize envelope sender */
- if (option (OPTENVFROM) && EnvFrom)
- envfrom = EnvFrom->mailbox;
+ if (MTransport.use_envelope_from && MTransport.envelope_from_address)
+ envfrom = MTransport.envelope_from_address->mailbox;
if (!smtp_set_reverse_path (message, envfrom))
SMTPFAIL ("smtp_set_reverse_path");
do_dsn_ret (message);
/* set up 8bitmime flag */
- if (eightbit && option (OPTUSE8BITMIME))
+ if (eightbit && MTransport.use_8bitmime)
smtp_8bitmime_set_body (message, E8bitmime_8BITMIME);
if ((fp = fopen (msg, "r")) == NULL)
}
Done:
- if (fp != NULL)
- fclose (fp);
+ m_fclose(&fp);
if (hostportstr != NULL)
p_delete(&hostportstr);
if (session != NULL)