#include <lib-lib/lib-lib.h>
-#include <lib-hash/hash.h>
+#include <sasl/sasl.h>
+#include <sasl/saslutil.h>
+
+#include <lib-mx/mx.h>
+#include "md5.h"
#include "mutt.h"
-#include "mx.h"
#include "pop.h"
-
-#ifdef USE_SASL
-#include <sasl/sasl.h>
-#include <sasl/saslutil.h>
#include "mutt_sasl.h"
-#endif
-#ifdef USE_SASL
/* SASL authenticator */
static pop_auth_res_t pop_auth_sasl (POP_DATA * pop_data, const char *method)
{
char inbuf[LONG_STRING];
const char *mech;
-#ifdef USE_SASL
const char *pc = NULL;
-#endif
unsigned int len, olen;
unsigned char client_start;
method = pop_data->auth_list;
for (;;) {
-#ifdef USE_SASL
- rc =
- sasl_client_start (saslconn, method, &interaction, &pc, &olen, &mech);
-#endif
+ rc = sasl_client_start (saslconn, method, &interaction, &pc, &olen,
+ &mech);
if (rc != SASL_INTERACT)
break;
mutt_sasl_interact (interaction);
if (rc != SASL_CONTINUE)
break;
-#ifdef USE_SASL
if (!m_strncmp(inbuf, "+ ", 2)
&& sasl_decode64 (inbuf, strlen (inbuf), buf, LONG_STRING - 1,
&len) != SASL_OK)
-#endif
{
goto bail;
}
/* sasl_client_st(art|ep) allocate pc with malloc, expect me to
* free it */
-#ifndef USE_SASL
- p_delete(&pc);
-#endif
+ p_delete((char **)&pc);
}
}
return POP_A_FAILURE;
}
-#endif
/* Get the server timestamp for APOP authentication */
void pop_apop_timestamp (POP_DATA * pop_data, char *buf)
}
static pop_auth_t pop_authenticators[] = {
-#ifdef USE_SASL
{pop_auth_sasl, NULL},
-#endif
{pop_auth_apop, "apop"},
{pop_auth_user, "user"},
{NULL, NULL}