Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Component/s: core
    • Labels:
      None
    • Environment:
      Platform: PC, OS: All

      Description

      I've tried to use my Exchange 2007 server as an SMTP server for Hudson, which
      requires SMTP authentication. I configured the standard authentication settings
      which have been confirmed to work on Outlook, Outlook Express as well as our
      office printer (which can sending scans by email). When sending a test email, or
      having emails sent after a build, I get the following:

      com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.1 Client was not
      authenticated

      See attachment for full stack trace.

      It would appear the problem is related to the way JavaMail is called in Hudson.
      The following FAQ entry describes the problem:

      http://java.sun.com/products/javamail/FAQ.html#smtpauth

      I checked hudson.tasks.Mailer in core/src/main/java/hudson/tasks and it seems
      indeed that JavaMail is being called using Transport.send(msg) instead of the
      method suggested in the FAQ above.

        Issue Links

          Activity

          Hide
          marcb marcb added a comment -

          Created an attachment (id=772)
          stack trace

          Show
          marcb marcb added a comment - Created an attachment (id=772) stack trace
          Hide
          mbaker000 mbaker000 added a comment -

          Triage begin 2/9/2011

          Is this issue still affecting you? SMTP authentication works for me in 1.396.

          Show
          mbaker000 mbaker000 added a comment - Triage begin 2/9/2011 Is this issue still affecting you? SMTP authentication works for me in 1.396.
          Hide
          marc_boscher Marc Boscher added a comment -

          We have since removed authentication requirements for internal emails, so we've worked around this issue.

          Not planning on re-testing this on the short term.

          Good luck with Jenkins!

          Show
          marc_boscher Marc Boscher added a comment - We have since removed authentication requirements for internal emails, so we've worked around this issue. Not planning on re-testing this on the short term. Good luck with Jenkins!
          Hide
          mbaker000 mbaker000 added a comment -

          Thanks for the quick response. I'm confident that it's working now, but I'll test it out a little bit at work tomorrow too to see if I can break it.

          Show
          mbaker000 mbaker000 added a comment - Thanks for the quick response. I'm confident that it's working now, but I'll test it out a little bit at work tomorrow too to see if I can break it.
          Hide
          mbaker000 mbaker000 added a comment -

          I was able to get Jenkins to send me emails through a GoDaddy SMTP relay requiring authentication without any issues, so I'm comfortable closing this as fixed. Does anyone else care to verify it for themselves before I close it out?

          Show
          mbaker000 mbaker000 added a comment - I was able to get Jenkins to send me emails through a GoDaddy SMTP relay requiring authentication without any issues, so I'm comfortable closing this as fixed. Does anyone else care to verify it for themselves before I close it out?
          Hide
          djchild duncan child added a comment -

          I can replicate the problem. My random comments are:

          1) I am running the standalone jenkins.war file
          2) The JVM is looking in jre/lib/ext where it is not going to find anything interesting
          3) The logs say isSSL false but in the Jenkins configuration I set it to true
          4) I am trying to use a MicroSoft mail server, not GoDaddy.
          5) The original reporter mentioned Transport.send(msg) which sounds like it could be relevant

          Here is the log output ...

          DEBUG: JavaMail version 1.4
          DEBUG: java.io.FileNotFoundException: /usr/bin/jdk1.6.0_27/jre/lib/javamail.providers (No such file or directory)
          DEBUG: !anyLoaded
          DEBUG: not loading resource: /META-INF/javamail.providers
          DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
          DEBUG: Tables of loaded providers
          DEBUG: Providers Listed By Class Name:

          {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]}

          DEBUG: Providers Listed By Protocol:

          {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]}

          DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
          DEBUG: !anyLoaded
          DEBUG: not loading resource: /META-INF/javamail.address.map
          DEBUG: java.io.FileNotFoundException: /usr/bin/jdk1.6.0_27/jre/lib/javamail.address.map (No such file or directory)
          DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
          DEBUG SMTP: useEhlo true, useAuth true
          DEBUG SMTP: useEhlo true, useAuth true
          DEBUG SMTP: trying to connect to host "Smtp.mail.microsoftonline.com", port 587, isSSL false
          DEBUG SMTP: exception reading response: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?

          Let me know if I can help test anything more.

          Show
          djchild duncan child added a comment - I can replicate the problem. My random comments are: 1) I am running the standalone jenkins.war file 2) The JVM is looking in jre/lib/ext where it is not going to find anything interesting 3) The logs say isSSL false but in the Jenkins configuration I set it to true 4) I am trying to use a MicroSoft mail server, not GoDaddy. 5) The original reporter mentioned Transport.send(msg) which sounds like it could be relevant Here is the log output ... DEBUG: JavaMail version 1.4 DEBUG: java.io.FileNotFoundException: /usr/bin/jdk1.6.0_27/jre/lib/javamail.providers (No such file or directory) DEBUG: !anyLoaded DEBUG: not loading resource: /META-INF/javamail.providers DEBUG: successfully loaded resource: /META-INF/javamail.default.providers DEBUG: Tables of loaded providers DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]} DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]} DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map DEBUG: !anyLoaded DEBUG: not loading resource: /META-INF/javamail.address.map DEBUG: java.io.FileNotFoundException: /usr/bin/jdk1.6.0_27/jre/lib/javamail.address.map (No such file or directory) DEBUG: getProvider() returning javax.mail.Provider [TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc] DEBUG SMTP: useEhlo true, useAuth true DEBUG SMTP: useEhlo true, useAuth true DEBUG SMTP: trying to connect to host "Smtp.mail.microsoftonline.com", port 587, isSSL false DEBUG SMTP: exception reading response: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? Let me know if I can help test anything more.
          Hide
          xusun Xun Sun added a comment -

          +1

          It seems only repros on Microsoft Exchange, not on other mail systems.

          In my environment, if I set to smtp.gmail.com, it just works fine, but not with any exchange servers.

          Show
          xusun Xun Sun added a comment - +1 It seems only repros on Microsoft Exchange, not on other mail systems. In my environment, if I set to smtp.gmail.com, it just works fine, but not with any exchange servers.
          Hide
          djchild duncan child added a comment -

          My colleague Alexander figured this out. The problem we had connecting to the MS server was resolved by setting -Dmail.smtp.starttls.enable="true" in the startup script.

          Show
          djchild duncan child added a comment - My colleague Alexander figured this out. The problem we had connecting to the MS server was resolved by setting -Dmail.smtp.starttls.enable="true" in the startup script.
          Hide
          kutzi kutzi added a comment -
          Show
          kutzi kutzi added a comment - Seems to be fixed in JavaMail 1.4.3 http://www.oracle.com/technetwork/java/javamail/javamail143-243221.html
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Christoph Kutzinski
          Path:
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/4afaf0bbc2c9f7298c45dc527269fb5c81cc710d
          Log:
          Update JavaMail dependency to 1.4.4. Should fix JENKINS-1152 and JENKINS-3983

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Christoph Kutzinski Path: core/pom.xml http://jenkins-ci.org/commit/jenkins/4afaf0bbc2c9f7298c45dc527269fb5c81cc710d Log: Update JavaMail dependency to 1.4.4. Should fix JENKINS-1152 and JENKINS-3983
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Christoph Kutzinski
          Path:
          changelog.html
          http://jenkins-ci.org/commit/jenkins/c4dd892ea3067be942d4a89778029ed1522512ff
          Log:
          Changelog for JENKINS-1152 and JENKINS-3983

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Christoph Kutzinski Path: changelog.html http://jenkins-ci.org/commit/jenkins/c4dd892ea3067be942d4a89778029ed1522512ff Log: Changelog for JENKINS-1152 and JENKINS-3983
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Christoph Kutzinski
          Path:
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/efce00a177bd4d6ac64cad481544729e90144358
          Log:
          Update JavaMail dependency to 1.4.4. Should fix JENKINS-1152 and JENKINS-3983(cherry picked from commit 4afaf0bbc2c9f7298c45dc527269fb5c81cc710d)

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Christoph Kutzinski Path: core/pom.xml http://jenkins-ci.org/commit/jenkins/efce00a177bd4d6ac64cad481544729e90144358 Log: Update JavaMail dependency to 1.4.4. Should fix JENKINS-1152 and JENKINS-3983 (cherry picked from commit 4afaf0bbc2c9f7298c45dc527269fb5c81cc710d)
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Christoph Kutzinski
          Path:
          changelog.html
          http://jenkins-ci.org/commit/jenkins/f481b1971d32141219e33aad5f449b45463a8e7c
          Log:
          Changelog for JENKINS-1152 and JENKINS-3983
          (cherry picked from commit c4dd892ea3067be942d4a89778029ed1522512ff)

          Conflicts:

          changelog.html

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Christoph Kutzinski Path: changelog.html http://jenkins-ci.org/commit/jenkins/f481b1971d32141219e33aad5f449b45463a8e7c Log: Changelog for JENKINS-1152 and JENKINS-3983 (cherry picked from commit c4dd892ea3067be942d4a89778029ed1522512ff) Conflicts: changelog.html

            People

            • Assignee:
              Unassigned
              Reporter:
              marcb marcb
            • Votes:
              3 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: