Victoria Dimitrova created COMMONSSITE-178:
----------------------------------------------
Summary: DomainValidator accepts hyphens at start/end of domain
name with Unicode characters
Key: COMMONSSITE-178
URL: https://issues.apache.org/jira/browse/COMMONSSITE-178
Project: Apache Commons All
Issue Type: Bug
Reporter: Victoria Dimitrova
The method `DomainValidator.getInstance().isValid()` returns `true` for invalid
domain names that start with a hyphen or contain Unicode characters.
This behavior is incorrect according to the domain name specifications (RFC
1035, RFC 5890), which do not allow:
- Domain labels starting or ending with a hyphen (`-`)
- Unicode characters not encoded as Punycode (e.g., `é`)
Test case that should pass but fails on version 1.6:
{code:java}
@Test
void shouldBeInvalid()
{
assertAll(() ->
assertFalse(DomainValidator.getInstance().isValid("-test.fr")),
() -> assertFalse(DomainValidator.getInstance().isValid("-tést.fr")),
() -> assertFalse(DomainValidator.getInstance().isValid("test-.fr")),
() -> assertFalse(DomainValidator.getInstance().isValid("tést-.fr")));
}
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)