diff --git a/src/main/java/io/r2dbc/postgresql/client/SSLConfig.java b/src/main/java/io/r2dbc/postgresql/client/SSLConfig.java index d11930d1..57562105 100644 --- a/src/main/java/io/r2dbc/postgresql/client/SSLConfig.java +++ b/src/main/java/io/r2dbc/postgresql/client/SSLConfig.java @@ -108,7 +108,7 @@ public static boolean isValidSniHostname(String input) { return false; } } - return true; + return !input.endsWith("."); } // diff --git a/src/test/java/io/r2dbc/postgresql/client/SSLConfigTests.java b/src/test/java/io/r2dbc/postgresql/client/SSLConfigTests.java new file mode 100644 index 00000000..6c60e6eb --- /dev/null +++ b/src/test/java/io/r2dbc/postgresql/client/SSLConfigTests.java @@ -0,0 +1,17 @@ +package io.r2dbc.postgresql.client; + +import org.junit.jupiter.api.Test; + +import static org.assertj.core.api.Assertions.assertThat; + +/** + * Unit tests for {@link SSLConfig}. + */ +final class SSLConfigTests { + @Test + public void testValidSniHostname(){ + assertThat(SSLConfig.isValidSniHostname("example.com")).isEqualTo(true); + assertThat(SSLConfig.isValidSniHostname("example://.com")).isEqualTo(false); + assertThat(SSLConfig.isValidSniHostname("example.com.")).isEqualTo(false); + } +}