You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bu...@apache.org on 2002/02/26 12:31:00 UTC
DO NOT REPLY [Bug 6678] New: -
fix for SMTP AUTH for Mac clients
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6678>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6678
fix for SMTP AUTH for Mac clients
Summary: fix for SMTP AUTH for Mac clients
Product: James
Version: 2.0a2
Platform: All
OS/Version: All
Status: NEW
Severity: Normal
Priority: Other
Component: SMTPServer
AssignedTo: james-dev@jakarta.apache.org
ReportedBy: giles@leafinternet.com
SMTP AUTH on Mac clients (Outlook Express 5.0.2/5.0.3 and Mac OS X mail client)
doesn't currently work with James 2.0a2.
The following changes to SMTPHandler.java seem to fix the issue:
private void doHELO(String command,String argument,String argument1) {
if (state.containsKey(CURRENT_HELO_MODE)) {
out.println("250 " + state.get(SERVER_NAME)
+ " Duplicate HELO");
} else if (argument == null) {
out.println("501 domain address required: " + command);
} else {
state.put(CURRENT_HELO_MODE, command);
state.put(NAME_GIVEN, argument);
out.println( "250-" + state.get(SERVER_NAME) + " Hello "
+ argument + " (" + state.get(REMOTE_NAME)
+ " [" + state.get(REMOTE_IP) + "])");
if (authRequired) {
out.println("250 AUTH LOGIN PLAIN");
}
}
}
private void doEHLO(String command,String argument,String argument1) {
if (state.containsKey(CURRENT_HELO_MODE)) {
out.println("250 " + state.get(SERVER_NAME)
+ " Duplicate EHLO");
} else if (argument == null) {
out.println("501 domain address required: " + command);
} else {
state.put(CURRENT_HELO_MODE, command);
state.put(NAME_GIVEN, argument);
if (maxmessagesize > 0) {
out.println("250-SIZE " + maxmessagesize);
}
out.println( "250-" + state.get(SERVER_NAME) + " Hello "
+ argument + " (" + state.get(REMOTE_NAME)
+ " [" + state.get(REMOTE_IP) + "])");
if (authRequired) {
out.println("250 AUTH LOGIN PLAIN");
}
}
}
Basically, the Hello response from the server was coming after the 250 AUTH
message, and doHELO() wasn't doing the 250 AUTH message at all.
See also the challenge string fix I posted to a previous bug (necessary for
other clients).
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>