Skip to content

Commit 3b2c06f

Browse files
committed
Added speaks tls check
1 parent 4a7dde4 commit 3b2c06f

File tree

1 file changed

+24
-10
lines changed

1 file changed

+24
-10
lines changed

src/main/java/de/rub/nds/tlsscanner/TlsScanner.java

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,17 @@
4646
import de.rub.nds.tlsscanner.report.after.Sweet32AfterProbe;
4747
import java.util.LinkedList;
4848
import java.util.List;
49+
import org.apache.logging.log4j.LogManager;
50+
import org.apache.logging.log4j.Logger;
4951

5052
/**
5153
*
5254
* @author Robert Merget - [email protected]
5355
*/
5456
public class TlsScanner {
5557

58+
private final Logger LOGGER = LogManager.getLogger();
59+
5660
private final ScanJobExecutor executor;
5761
private final ParallelExecutor parallelExecutor;
5862
private final ScannerConfig config;
@@ -140,16 +144,20 @@ private void fillDefaultProbeLists() {
140144
}
141145

142146
public SiteReport scan() {
143-
if (prechecks()) {
144-
ScanJob job = new ScanJob(phaseOneTestList, phaseTwoTestList, afterList);
145-
SiteReport report = executor.execute(config, job);
146-
if (closeAfterFinish) {
147-
executor.shutdown();
148-
}
149-
if (closeAfterFinishParallel) {
150-
parallelExecutor.shutdown();
147+
if (isConnectable()) {
148+
LOGGER.debug(config.getClientDelegate().getHost() + " is connectable");
149+
if (speaksTls()) {
150+
LOGGER.debug(config.getClientDelegate().getHost() + " is connectable");
151+
ScanJob job = new ScanJob(phaseOneTestList, phaseTwoTestList, afterList);
152+
SiteReport report = executor.execute(config, job);
153+
if (closeAfterFinish) {
154+
executor.shutdown();
155+
}
156+
if (closeAfterFinishParallel) {
157+
parallelExecutor.shutdown();
158+
}
159+
return report;
151160
}
152-
return report;
153161
}
154162
SiteReport report = new SiteReport(config.getClientDelegate().getHost(), new LinkedList<ProbeType>(), config.isNoColor());
155163
report.setServerIsAlive(false);
@@ -162,9 +170,15 @@ public SiteReport scan() {
162170
return report;
163171
}
164172

165-
public boolean prechecks() {
173+
public boolean isConnectable() {
166174
Config tlsConfig = config.createConfig();
167175
ConnectivityChecker checker = new ConnectivityChecker(tlsConfig.getDefaultClientConnection());
168176
return checker.isConnectable();
169177
}
178+
179+
private boolean speaksTls() {
180+
Config tlsConfig = config.createConfig();
181+
ConnectivityChecker checker = new ConnectivityChecker(tlsConfig.getDefaultClientConnection());
182+
return checker.speaksTls(tlsConfig);
183+
}
170184
}

0 commit comments

Comments
 (0)