*/
#include <lib-lib/lib-lib.h>
+#include <lib-mx/mx.h>
#include "mutt.h"
-#include "mx.h"
#include "pop.h"
-#if defined (USE_SSL) || defined (USE_GNUTLS)
-# include <lib-sys/mutt_ssl.h>
-#endif
/* given an POP mailbox name, return host, port, username and password */
int pop_parse_path (const char *path, ACCOUNT * act)
static int fetch_auth (char *line, void *data)
{
POP_DATA *pop_data = (POP_DATA *) data;
+ ssize_t auth_list_len;
if (!pop_data->auth_list) {
- pop_data->auth_list = p_new(char, strlen(line) + 1);
+ auth_list_len = m_strlen(line) + 1;
+ pop_data->auth_list = p_new(char, auth_list_len);
} else {
- p_realloc(&pop_data->auth_list,
- strlen(pop_data->auth_list) + strlen(line) + 2);
- strcat (pop_data->auth_list, " "); /* __STRCAT_CHECKED__ */
+ auth_list_len = m_strlen(pop_data->auth_list) + m_strlen(line) + 2;
+ p_realloc(&pop_data->auth_list, auth_list_len);
+ m_strcat(pop_data->auth_list, auth_list_len, " ");
}
- strcat (pop_data->auth_list, line); /* __STRCAT_CHECKED__ */
+ m_strcat(pop_data->auth_list, auth_list_len, line);
return 0;
}
return PQ_ERR;
}
-#if (defined(USE_SSL) || defined(USE_GNUTLS))
/* Attempt STLS if available and desired. */
- if (!pop_data->conn->ssf && (pop_data->cmd_stls || option(OPTSSLFORCETLS))) {
- if (option (OPTSSLFORCETLS))
+ if (!pop_data->conn->ssf && (pop_data->cmd_stls || mod_ssl.force_tls)) {
+ if (mod_ssl.force_tls)
pop_data->use_stls = 2;
if (pop_data->use_stls == 0) {
- ret = query_quadoption (OPT_SSLSTARTTLS,
- _("Secure connection with TLS?"));
- if (ret == -1)
- return PQ_ERR;
pop_data->use_stls = 1;
- if (ret == M_YES)
+ if (mod_ssl.starttls)
pop_data->use_stls = 2;
}
if (pop_data->use_stls == 2) {
mutt_error ("%s", pop_data->err_msg);
mutt_sleep (2);
}
-#if defined (USE_SSL) || defined (USE_GNUTLS)
else if (mutt_ssl_starttls (pop_data->conn))
-#endif
{
mutt_error (_("Could not negotiate TLS connection"));
mutt_sleep (2);
}
}
- if (option(OPTSSLFORCETLS) && !pop_data->conn->ssf) {
+ if (mod_ssl.force_tls && !pop_data->conn->ssf) {
mutt_error _("Encrypted connection unavailable");
mutt_sleep (1);
return -2;
}
-#endif
ret = pop_authenticate (pop_data);
if (ret == PQ_NOT_CONNECTED)