From cfccf9a6636210e3a2d1198627b120d3bb03d8bc Mon Sep 17 00:00:00 2001 From: Tom Bentley Date: Sat, 5 Dec 2020 07:31:25 +0000 Subject: [PATCH] KAFKA-10713: (redux) Also allow underscore in protocol name --- clients/src/main/java/org/apache/kafka/common/utils/Utils.java | 2 +- .../src/test/java/org/apache/kafka/common/utils/UtilsTest.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clients/src/main/java/org/apache/kafka/common/utils/Utils.java b/clients/src/main/java/org/apache/kafka/common/utils/Utils.java index 5a8aefec8a00c..a7b6fc1f65646 100755 --- a/clients/src/main/java/org/apache/kafka/common/utils/Utils.java +++ b/clients/src/main/java/org/apache/kafka/common/utils/Utils.java @@ -84,7 +84,7 @@ private Utils() {} // IPv6 is supported with [ip] pattern // Note the protocol (aka schema) part allows unicode letters where // RFC 2396 does not because Kafka was historically lax about the protocol. - private static final Pattern HOST_PORT_PATTERN = Pattern.compile("(?:\\p{L}[\\p{L}\\p{Digit}+.-]*://)?\\[?([0-9a-zA-Z\\-%._:]*)\\]?:([0-9]+)"); + private static final Pattern HOST_PORT_PATTERN = Pattern.compile("(?:\\p{L}[\\p{L}\\p{Digit}+._-]*://)?\\[?([0-9a-zA-Z\\-%._:]*)\\]?:([0-9]+)"); private static final Pattern VALID_HOST_CHARACTERS = Pattern.compile("([0-9a-zA-Z\\-%._:]*)"); diff --git a/clients/src/test/java/org/apache/kafka/common/utils/UtilsTest.java b/clients/src/test/java/org/apache/kafka/common/utils/UtilsTest.java index f7737c67f9074..34161f77c36a4 100755 --- a/clients/src/test/java/org/apache/kafka/common/utils/UtilsTest.java +++ b/clients/src/test/java/org/apache/kafka/common/utils/UtilsTest.java @@ -108,6 +108,7 @@ public void testGetHost() { assertEquals("mydomain.com", getHost("PLAINTEXT://mydomain.com:8080")); assertEquals("MyDomain.com", getHost("PLAINTEXT://MyDomain.com:8080")); assertEquals("My_Domain.com", getHost("PLAINTEXT://My_Domain.com:8080")); + assertEquals("My_Domain.com", getHost("SSL_PLAINTEXT://My_Domain.com:8080")); assertEquals("My_Domain.com", getHost("\u021Dfoo\u021D+baz://My_Domain.com:8080")); assertEquals("::1", getHost("[::1]:1234")); assertEquals("2001:db8:85a3:8d3:1319:8a2e:370:7348", getHost("PLAINTEXT://[2001:db8:85a3:8d3:1319:8a2e:370:7348]:5678"));