Made blank server address validation stricter

This commit is contained in:
RaphiMC 2024-10-30 22:32:46 +01:00
parent 1287cb2f9f
commit 3bb37e3f0e
No known key found for this signature in database
GPG Key ID: 0F6BB0657A03AC94

View File

@ -31,16 +31,16 @@ import java.net.SocketAddress;
public class AddressUtil { public class AddressUtil {
public static SocketAddress parse(final String serverAddress, final ProtocolVersion version) { public static SocketAddress parse(final String serverAddress, final ProtocolVersion version) {
if (serverAddress.isBlank()) {
throw new IllegalArgumentException("Server address cannot be blank");
}
if (serverAddress.startsWith("file:///") || serverAddress.startsWith("unix:///")) { // Unix Socket if (serverAddress.startsWith("file:///") || serverAddress.startsWith("unix:///")) { // Unix Socket
final String filePath = serverAddress.substring(7); final String filePath = serverAddress.substring(7);
return new DomainSocketAddress(filePath); return new DomainSocketAddress(filePath);
} else { // IP Address } else { // IP Address
final HostAndPort hostAndPort = HostAndPort.fromString(serverAddress); final HostAndPort hostAndPort = HostAndPort.fromString(serverAddress);
if (hostAndPort.getHost().isBlank()) {
throw new IllegalArgumentException("Server address cannot be blank");
}
final int port; final int port;
if (version != null) { if (version != null) {
port = hostAndPort.getPortOrDefault(getDefaultPort(version)); port = hostAndPort.getPortOrDefault(getDefaultPort(version));