xmpp-compliance-tester

XMPP Compliance Tester, forked from github.com/iNPUTmice/ComplianceTester
git clone https://git.in0rdr.ch/xmpp-compliance-tester.git
Log | Files | Refs | Pull requests |Archive | README | LICENSE

commit 0b144034572604c884d1ab3749ba0f1fd7ee8a07
parent de766767cba45027dfabb5262585562bd339dddf
Author: Daniel Gultsch <daniel@gultsch.de>
Date:   Sun,  7 May 2017 10:49:25 +0200

print explicit warning when dh key size > 2048

Diffstat:
Mpom.xml | 4++--
Msrc/main/java/eu/siacs/ComplianceTester.java | 8+++++++-
Asrc/main/java/eu/siacs/utils/ExceptionUtils.java | 13+++++++++++++
3 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/pom.xml b/pom.xml @@ -15,12 +15,12 @@ <dependency> <groupId>rocks.xmpp</groupId> <artifactId>xmpp-core-client</artifactId> - <version>0.7.0</version> + <version>0.7.4</version> </dependency> <dependency> <groupId>rocks.xmpp</groupId> <artifactId>xmpp-extensions-client</artifactId> - <version>0.7.0</version> + <version>0.7.4</version> </dependency> <dependency> <groupId>de.measite.minidns</groupId> diff --git a/src/main/java/eu/siacs/ComplianceTester.java b/src/main/java/eu/siacs/ComplianceTester.java @@ -2,12 +2,14 @@ package eu.siacs; import eu.siacs.compliance.suites.*; import eu.siacs.compliance.TestSuiteFactory; +import eu.siacs.utils.ExceptionUtils; import rocks.xmpp.addr.Jid; import rocks.xmpp.core.XmppException; import rocks.xmpp.core.sasl.AuthenticationException; import rocks.xmpp.core.stream.StreamErrorException; import rocks.xmpp.core.stream.model.errors.Condition; +import java.security.InvalidAlgorithmParameterException; import java.util.Arrays; import java.util.List; @@ -86,7 +88,11 @@ public class ComplianceTester { } } } catch (XmppException e) { - e.printStackTrace(); + if (ExceptionUtils.getRootCause(e) instanceof InvalidAlgorithmParameterException) { + System.err.println("The ComplianceTester can not handle DH key sizes above 2048 bit. Modify your Prosody to use the default TLS configuration."); + } else { + System.err.println(e.getMessage()); + } } } } diff --git a/src/main/java/eu/siacs/utils/ExceptionUtils.java b/src/main/java/eu/siacs/utils/ExceptionUtils.java @@ -0,0 +1,13 @@ +package eu.siacs.utils; + +public class ExceptionUtils { + public static Throwable getRootCause(Throwable e) { + Throwable cause; + Throwable result = e; + + while(null != (cause = result.getCause()) && (result != cause) ) { + result = cause; + } + return result; + } +}