CHANGELOG.md 🔗
@@ -1,5 +1,8 @@
# Changelog
+### Version 1.19.5
+* fixed connection loop on Android <4.4
+
### Version 1.19.4
* work around for OpensFire’s self signed certs
* use VPN’s DNS servers first
Daniel Gultsch created
CHANGELOG.md | 3
build.gradle | 4
src/main/java/eu/siacs/conversations/crypto/XmppDomainVerifier.java | 7
3 files changed, 8 insertions(+), 6 deletions(-)
@@ -1,5 +1,8 @@
# Changelog
+### Version 1.19.5
+* fixed connection loop on Android <4.4
+
### Version 1.19.4
* work around for OpensFire’s self signed certs
* use VPN’s DNS servers first
@@ -56,8 +56,8 @@ android {
defaultConfig {
minSdkVersion 14
targetSdkVersion 25
- versionCode 227
- versionName "1.19.4"
+ versionCode 228
+ versionName "1.19.5"
archivesBaseName += "-$versionName"
applicationId "eu.siacs.conversations"
}
@@ -43,10 +43,9 @@ public class XmppDomainVerifier implements DomainHostnameVerifier {
}
X509Certificate certificate = (X509Certificate) chain[0];
final List<String> commonNames = getCommonNames(certificate);
- final boolean isSelfSignedCertificate = isSelfSigned(certificate);
- if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT || isSelfSignedCertificate) {
- if (commonNames.size() == 1 && commonNames.get(0).equals(domain)) {
- Log.d(LOGTAG,"accepted CN in cert as work around for "+domain+" isSelfSigned="+Boolean.toString(isSelfSignedCertificate)+", sdkInt="+Build.VERSION.SDK_INT);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && isSelfSigned(certificate)) {
+ if (commonNames.size() == 1 && matchDomain(domain,commonNames)) {
+ Log.d(LOGTAG,"accepted CN in self signed cert as work around for "+domain);
return true;
}
}