From e78a2ae3fe72c28eee9809f5846c0008cb944f39 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Sat, 8 Oct 2016 10:40:34 +0200 Subject: create new instances of key manager every time it's used --- src/main/java/de/pixart/messenger/xmpp/XmppConnection.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/main/java/de/pixart/messenger/xmpp/XmppConnection.java') diff --git a/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java b/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java index 318e91d34..55f258de5 100644 --- a/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java +++ b/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java @@ -140,7 +140,7 @@ public class XmppConnection implements Runnable { private SaslMechanism saslMechanism; - private X509KeyManager mKeyManager = new X509KeyManager() { + private class MyKeyManager implements X509KeyManager { @Override public String chooseClientAlias(String[] strings, Principal[] principals, Socket socket) { return account.getPrivateKeyAlias(); @@ -153,9 +153,11 @@ public class XmppConnection implements Runnable { @Override public X509Certificate[] getCertificateChain(String alias) { + Log.d(Config.LOGTAG,"getting certificate chain"); try { return KeyChain.getCertificateChain(mXmppConnectionService, alias); } catch (Exception e) { + Log.d(Config.LOGTAG,e.getMessage()); return new X509Certificate[0]; } } @@ -178,7 +180,8 @@ public class XmppConnection implements Runnable { return null; } } - }; + } + private Identity mServerIdentity = Identity.UNKNOWN; public final OnIqPacketReceived registrationResponseListener = new OnIqPacketReceived() { @@ -480,7 +483,7 @@ public class XmppConnection implements Runnable { MemorizingTrustManager trustManager = this.mXmppConnectionService.getMemorizingTrustManager(); KeyManager[] keyManager; if (account.getPrivateKeyAlias() != null && account.getPassword().isEmpty()) { - keyManager = new KeyManager[]{mKeyManager}; + keyManager = new KeyManager[]{new MyKeyManager()}; } else { keyManager = null; } -- cgit v1.2.3