mirror of
https://github.com/square/okhttp.git
synced 2026-01-14 07:22:20 +03:00
Test fix for cert names (#6398)
This commit is contained in:
@@ -30,9 +30,11 @@ import javax.security.auth.x500.X500Principal;
|
||||
import okhttp3.FakeSSLSession;
|
||||
import okhttp3.OkHttpClient;
|
||||
import okhttp3.internal.Util;
|
||||
import okhttp3.testing.PlatformRule;
|
||||
import okhttp3.tls.HeldCertificate;
|
||||
import okhttp3.tls.internal.TlsUtil;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
@@ -43,6 +45,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
*/
|
||||
public final class HostnameVerifierTest {
|
||||
private OkHostnameVerifier verifier = OkHostnameVerifier.INSTANCE;
|
||||
@RegisterExtension public PlatformRule platform = new PlatformRule();
|
||||
|
||||
@Test public void verify() {
|
||||
FakeSSLSession session = new FakeSSLSession();
|
||||
@@ -186,7 +189,11 @@ public final class HostnameVerifierTest {
|
||||
+ "-----END CERTIFICATE-----\n");
|
||||
|
||||
X509Certificate peerCertificate = ((X509Certificate) session.getPeerCertificates()[0]);
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("bar.com", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.co.jp");
|
||||
if (platform.isConscrypt()) {
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("bar.com");
|
||||
} else {
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("bar.com", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.co.jp");
|
||||
}
|
||||
|
||||
assertThat(verifier.verify("foo.com", session)).isFalse();
|
||||
assertThat(verifier.verify("a.foo.com", session)).isFalse();
|
||||
@@ -375,7 +382,11 @@ public final class HostnameVerifierTest {
|
||||
+ "-----END CERTIFICATE-----\n");
|
||||
|
||||
X509Certificate peerCertificate = ((X509Certificate) session.getPeerCertificates()[0]);
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("*.bar.com", "*.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.co.jp");
|
||||
if (platform.isConscrypt()) {
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("*.bar.com");
|
||||
} else {
|
||||
assertThat(certificateSANs(peerCertificate)).containsExactly("*.bar.com", "*.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.co.jp");
|
||||
}
|
||||
|
||||
// try the foo.com variations
|
||||
assertThat(verifier.verify("foo.com", session)).isFalse();
|
||||
|
||||
Reference in New Issue
Block a user