#include "config.h"
#ifdef POP2_ENABLE
+#include "fetchmail.h"
#include <stdio.h>
-#if defined(STDC_HEADERS)
#include <stdlib.h>
-#endif
-#ifdef HAVE_STRING_H
#include <string.h>
-#endif
-#include "fetchmail.h"
#include "socket.h"
#include "i18n.h"
int status;
(void)buf;
+
if (ctl->sslproto && !strcasecmp(ctl->sslproto, "tls1") && !ctl->use_ssl)
{
- report(stderr, GT_("POP2 does not support STARTTLS. Giving up.\n"));
+ report(stderr, GT_("POP2 does not support STLS. Giving up.\n"));
return PS_SOCKET;
}
+
+ if (ctl->server.authenticate != A_ANY && ctl->server.authenticate != A_PASSWORD)
+ {
+ report(stderr, GT_("POP2 only supports password authentication. Giving up.\n"));
+ return PS_AUTHFAIL;
+ }
+
strlcpy(shroud, ctl->password, sizeof(shroud));
status = gen_transact(sock,
"HELO %s %s",
ctl->remotename, ctl->password);
+ memset(shroud, 0x55, sizeof(shroud));
shroud[0] = '\0';
return status;
}
static int pop2_getrange(int sock, struct query *ctl, const char *folder,
- int *countp, int *newp, int *bytes)
+ int *countp, int *newp, unsigned long long *bytes)
/* get range of messages to be fetched */
{
(void)ctl;