Fixed not recognizing cert errors

pull/172/head
M66B 6 years ago
parent 0bb4282e5c
commit df59723f08

@ -59,7 +59,6 @@ import javax.mail.Session;
import javax.mail.Store;
import javax.mail.event.StoreListener;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLHandshakeException;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
@ -379,11 +378,14 @@ public class MailService implements AutoCloseable {
} else
throw new NoSuchProviderException(protocol);
} catch (MessagingException ex) {
if (factory != null &&
ex.getCause() instanceof SSLHandshakeException &&
ex.getCause().getCause() instanceof CertificateException)
if (factory != null) {
Throwable ce = ex;
while (ce != null) {
if (ce instanceof CertificateException)
throw new UntrustedException(factory.getFingerPrint(), ex);
else
ce = ce.getCause();
}
}
throw ex;
}
}

Loading…
Cancel
Save