diff -ur fetchmail-6.0.0/fetchmail.h fetchmail-6.0.0-nologindisabled/fetchmail.h --- fetchmail-6.0.0/fetchmail.h Fri Sep 13 02:46:47 2002 +++ fetchmail-6.0.0-nologindisabled/fetchmail.h Fri Sep 20 02:51:39 2002 @@ -243,6 +243,7 @@ char *trueaddr; /* IP address of truename, as char */ struct hostdata *lead_server; /* ptr to lead query for this server */ int esmtp_options; + int ignore_login_disable; /* Ignore login disable capability */ }; struct query diff -ur fetchmail-6.0.0/imap.c fetchmail-6.0.0-nologindisabled/imap.c --- fetchmail-6.0.0/imap.c Mon Sep 9 04:04:26 2002 +++ fetchmail-6.0.0-nologindisabled/imap.c Fri Sep 20 02:56:14 2002 @@ -452,7 +452,8 @@ /* we're stuck with sending the password en clair */ if ((ctl->server.authenticate == A_ANY || ctl->server.authenticate == A_PASSWORD) - && !strstr (capabilities, "LOGINDISABLED")) + && ( ctl->server.ignore_login_disable + || !strstr (capabilities, "LOGINDISABLED"))) { /* these sizes guarantee no buffer overflow */ char remotename[NAMELEN*2+1], password[PASSWORDLEN*2+1]; diff -ur fetchmail-6.0.0/po/fetchmail.pot fetchmail-6.0.0-nologindisabled/po/fetchmail.pot --- fetchmail-6.0.0/po/fetchmail.pot Tue Sep 17 05:37:26 2002 +++ fetchmail-6.0.0-nologindisabled/po/fetchmail.pot Fri Sep 20 02:56:32 2002 @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2002-09-17 05:37-0400\n" +"POT-Creation-Date: 2002-09-20 02:56-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -347,7 +347,7 @@ msgid "%s at %s (folder %s)" msgstr "" -#: driver.c:1235 rcfile_y.y:395 +#: driver.c:1235 rcfile_y.y:397 #, c-format msgid "%s at %s" msgstr "" @@ -1395,7 +1395,7 @@ #. * This is a hack to help xgettext which cannot find strings in #. * macro definitions like the one for xalloca above. #. -#: fetchmail.h:568 fetchmail.h:574 +#: fetchmail.h:569 fetchmail.h:575 msgid "alloca failed" msgstr "" @@ -1494,38 +1494,38 @@ msgid "Required LOGIN capability not supported by server\n" msgstr "" -#: imap.c:533 imap.c:595 +#: imap.c:534 imap.c:596 msgid "expunge failed\n" msgstr "" -#: imap.c:551 imap.c:580 +#: imap.c:552 imap.c:581 msgid "re-poll failed\n" msgstr "" -#: imap.c:559 +#: imap.c:560 #, c-format msgid "%d messages waiting after re-poll\n" msgstr "" -#: imap.c:569 +#: imap.c:570 msgid "mailbox selection failed\n" msgstr "" -#: imap.c:573 +#: imap.c:574 #, c-format msgid "%d messages waiting after first poll\n" msgstr "" -#: imap.c:599 +#: imap.c:600 #, c-format msgid "%d messages waiting after expunge\n" msgstr "" -#: imap.c:620 +#: imap.c:621 msgid "search for unseen messages failed\n" msgstr "" -#: imap.c:644 +#: imap.c:645 #, c-format msgid "%u is unseen\n" msgstr "" @@ -2017,45 +2017,45 @@ msgid "SDPS not enabled." msgstr "" -#: rcfile_y.y:218 +#: rcfile_y.y:220 msgid "invalid security request" msgstr "" -#: rcfile_y.y:224 +#: rcfile_y.y:226 msgid "network-security support disabled" msgstr "" -#: rcfile_y.y:231 +#: rcfile_y.y:233 msgid "" "fetchmail: interface option is only supported under Linux (without IPv6) and " "FreeBSD\n" msgstr "" -#: rcfile_y.y:238 +#: rcfile_y.y:240 msgid "" "fetchmail: monitor option is only supported under Linux (without IPv6) and " "FreeBSD\n" msgstr "" -#: rcfile_y.y:350 +#: rcfile_y.y:352 msgid "SSL is not enabled" msgstr "" -#: rcfile_y.y:396 +#: rcfile_y.y:398 msgid "end of input" msgstr "" -#: rcfile_y.y:433 +#: rcfile_y.y:435 #, c-format msgid "File %s must not be a symbolic link.\n" msgstr "" -#: rcfile_y.y:440 +#: rcfile_y.y:442 #, c-format msgid "File %s must have no more than -rwx--x--- (0710) permissions.\n" msgstr "" -#: rcfile_y.y:452 +#: rcfile_y.y:454 #, c-format msgid "File %s must be owned by you.\n" msgstr "" diff -ur fetchmail-6.0.0/rcfile_l.l fetchmail-6.0.0-nologindisabled/rcfile_l.l --- fetchmail-6.0.0/rcfile_l.l Fri Sep 13 02:58:22 2002 +++ fetchmail-6.0.0-nologindisabled/rcfile_l.l Fri Sep 20 02:57:06 2002 @@ -148,6 +148,7 @@ nodropdelivered | nomimedec(ode)? | nospambounce | +nologindisabled? | noidle { yyless(2); return NO; @@ -176,6 +177,7 @@ sslcertpath { return SSLCERTPATH; } sslfingerprint { return SSLFINGERPRINT; } checkalias { return CHECKALIAS; } +logindisabled? { return LOGINDISABLED; } limit { return LIMIT; } diff -ur fetchmail-6.0.0/rcfile_y.y fetchmail-6.0.0-nologindisabled/rcfile_y.y --- fetchmail-6.0.0/rcfile_y.y Mon Sep 9 04:04:25 2002 +++ fetchmail-6.0.0-nologindisabled/rcfile_y.y Fri Sep 20 02:55:46 2002 @@ -78,7 +78,7 @@ %token DNS SERVICE PORT UIDL INTERVAL MIMEDECODE IDLE CHECKALIAS %token SSL SSLKEY SSLCERT SSLPROTO SSLCERTCK SSLCERTPATH SSLFINGERPRINT %token PRINCIPAL ESMTPNAME ESMTPPASSWORD -%token TRACEPOLLS +%token TRACEPOLLS LOGINDISABLED %% @@ -174,6 +174,8 @@ | NO UIDL {current.server.uidl = FLAG_FALSE;} | CHECKALIAS {current.server.checkalias = FLAG_TRUE;} | NO CHECKALIAS {current.server.checkalias = FLAG_FALSE;} + | LOGINDISABLED {current.server.ignore_login_disable = FLAG_FALSE; } + | NO LOGINDISABLED {current.server.ignore_login_disable = FLAG_TRUE; } | SERVICE STRING { #if INET6_ENABLE current.server.service = $2;