Well, it turns out all I had to do was comment out AUTH LOGIN and AUTH PLAIN
and it is all working well, so this now works from Thunderbird, Outlook Express
and Outlook 2003:
######################################################################
# AUTHENTICATION CONFIGURATION #
######################################################################
#plain:
# driver = plaintext
# public_name = PLAIN
# We should be able to do a dbm lookup in the sasldb2 database using
# a key composed by concatenating the username, domain name, and
# 'userPassword'. BUT cyrus-sasl puts NULs between the components
# and exim can't handle strings with embedded NULs... Hence the perl.
# server_condition = ${perl {checkPw} {$2} {$3} {mail} }
# server_set_id = $2
#login:
# driver = plaintext
# public_name = LOGIN
# server_prompts = <| Username: ; Password:
# server_condition = ${perl {getPw} {$1} {mail} }
# server_set_id = $1
# server_advertise_condition = 1
cram:
driver = cram_md5
public_name = CRAM-MD5
server_secret = ${perl {getPw} {$1} {mail}}
server_set_id = $1
#-------------------------------------------------------------------------
Peter Savitch wrote:
> Hello,
>
>
>>My session looks like this(names changed):
>>.
>>.
>>.
>>AUTH LOGIN
>>334 VXNlcm5hbWU6IDsgUGFasdfasdf6
>>cmFuZGFs
>>login authenticator:
>> $1 = randal
>>expanded string: myPassword
>>435 Unable to authenticate at present: myPassword
>>LOG: MAIN REJECT
>> login authenticator failed for (localhost) [127.0.0.1]: 435 Unable
>
> to
>
>>authenticate at present (set_id=randal): myPassword
>>
>>So it does some back with the correct password, but still fails
>>somehow...?
>
>
> 435 after the first prompt? What happened between `$1 = randal' and
> `expanded string: ...' ?
>
> Usually, 4xx codes mean temporary (internal) errors.
> You should first insure your Perl is operational and your script is a
> valid Perl script.
>
> Make string expansion tests using -be Exim option, test whatever you put
> into the authenticator in a stand-alone mode. What you've got?