On 2006-03-02 at 15:23 +0100, Felix Brack wrote: > I understand that exim gets the command "AUTH LOGIN" and then sends > the prompt "Username:" ("VXNlcm5hbWU6" base64 encoded); this is fine > and exactly what exim should do. The next thing exim does is send the > message "501 Invalid base64 data". In between those two last > statements in the log there should be the username sent from the > client; is it possible to enable some debugging option that will show > the username and password sent by the client?
As a generic answer: tcpdump(8)? And if you haven't tried it for protocol analysis yet, the GUI program ethereal to dissect packets (as long as you're careful to keep up with ethereal security holes). Get a log: tcpdump -s1500 -w filename.log -npi <interface> port 25 and feed it to ethereal (menus or as cmdline parameter). > the username and password sent by the client? And: What is the message > "501 Invalid base64 data" related to? To the username exim received > from the client or to something else? Yes, the client data. It means that Exim's auth_b64decode() routine rejected the data, which means that it contained bad characters. Looking at the decode routine, my suspicion is that the client data has a trailing NUL character after the base64 string (not part of the data wrapped by base64, but in the outside text stream, just after the base64 data). That's only suspicion, though. -- I am keeping international relations on a peaceable footing. You are biding your time before acting. He is coddling tyrants. -- Roger BW on topic of verb conjugation -- ## List details at http://www.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://www.exim.org/eximwiki/