Email.setMailSession() discards provided session if using authentication
------------------------------------------------------------------------

                 Key: EMAIL-70
                 URL: https://issues.apache.org/jira/browse/EMAIL-70
             Project: Commons Email
          Issue Type: Bug
         Environment: All
            Reporter: F. Andy Seidl
            Priority: Minor


The Email.setSession(Session aSession) method does NOT use the provided session 
value if the provided session is an authenticated session.  In that case, a new 
Session instance is created and used instead.  The newly created session uses a 
DefaultAuthenticator based on the username/password properties provided in the 
original session.

This is a problem because the original session may have been created with a 
valid authenticator but without placing the password in the session properties. 
 In this case, the newly constructed session will not work.  Or, the original 
session may have been created with a custom authenticator, so again, the newly 
constructed session will not work.

It seems to me that setSession() should simply set the provided session and not 
attempt to be smart about authentication.  However, for backward compatibility, 
an improvement would be to offer a setRawSession() that simply sets 
this.session.   Another improvement would be to also check for the presence of 
username and password properties before deciding to create a new session 
instance.  If either of those properties is missing, use the provided session 
as-is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to