de.rub.nds.tlsbreaker.breakercommons.config.delegate.ServerDelegate Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of breaker-commons Show documentation
Show all versions of breaker-commons Show documentation
A tool collection of various attacks on TLS based on TLS-Attacker
/**
* TLS-Breaker - A tool collection of various attacks on TLS based on TLS-Attacker
*
* Copyright 2021-2022 Ruhr University Bochum, Paderborn University, Hackmanit GmbH
*
* Licensed under Apache License, Version 2.0
* http://www.apache.org/licenses/LICENSE-2.0.txt
*/
package de.rub.nds.tlsbreaker.breakercommons.config.delegate;
/**
* TLS-Attacker - A Modular Penetration Testing Framework for TLS
*
* Copyright 2014-2021 Ruhr University Bochum, Paderborn University, Hackmanit GmbH
*
* Licensed under Apache License, Version 2.0
* http://www.apache.org/licenses/LICENSE-2.0.txt
*/
//package de.rub.nds.tlsattacker.core.config.delegate;
import com.beust.jcommander.Parameter;
import com.beust.jcommander.ParameterException;
import de.rub.nds.tlsattacker.core.config.Config;
import de.rub.nds.tlsattacker.core.config.delegate.Delegate;
import de.rub.nds.tlsattacker.core.connection.InboundConnection;
import de.rub.nds.tlsattacker.core.constants.RunningModeType;
public class ServerDelegate extends Delegate {
@Parameter(names = "-port", description = "ServerPort")
private Integer port = null;
public ServerDelegate() {
}
public Integer getPort() {
return port;
}
public void setPort(int port) {
this.port = port;
}
@Override
public void applyDelegate(Config config) {
config.setDefaultRunningMode(RunningModeType.SERVER);
int parsedPort = parsePort(port);
InboundConnection inboundConnection = config.getDefaultServerConnection();
if (inboundConnection != null) {
inboundConnection.setPort(parsedPort);
} else {
inboundConnection = new InboundConnection(parsedPort);
config.setDefaultServerConnection(inboundConnection);
}
}
private int parsePort(Integer port) {
if (port == null) {
throw new ParameterException("Port must be set, but was not specified");
}
if (port < 0 || port > 65535) {
throw new ParameterException("Port must be in interval [0,65535], but is " + port);
}
return port;
}
}