diff options
author | Sam Whited <sam@samwhited.com> | 2016-08-07 09:46:01 -0500 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2016-09-14 21:31:49 +0200 |
commit | 6c2684b8585a9401eff369dfcc41a7f7d5c3e168 (patch) | |
tree | 27f7d04c0b4fa2fad40954b8f2358d50e9582fff /src/main/java/de | |
parent | eb42cf77ceaf5023344e168a6bf94146f69b5be5 (diff) |
Support ANONYMOUS SASL
Diffstat (limited to 'src/main/java/de')
-rw-r--r-- | src/main/java/de/pixart/messenger/crypto/sasl/Anonymous.java | 28 | ||||
-rw-r--r-- | src/main/java/de/pixart/messenger/xmpp/XmppConnection.java | 3 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/crypto/sasl/Anonymous.java b/src/main/java/de/pixart/messenger/crypto/sasl/Anonymous.java new file mode 100644 index 000000000..7e4e98bc6 --- /dev/null +++ b/src/main/java/de/pixart/messenger/crypto/sasl/Anonymous.java @@ -0,0 +1,28 @@ +package de.pixart.messenger.crypto.sasl; + +import java.security.SecureRandom; + +import de.pixart.messenger.entities.Account; +import de.pixart.messenger.xml.TagWriter; + +public class Anonymous extends SaslMechanism { + + public Anonymous(TagWriter tagWriter, Account account, SecureRandom rng) { + super(tagWriter, account, rng); + } + + @Override + public int getPriority() { + return 0; + } + + @Override + public String getMechanism() { + return "ANONYMOUS"; + } + + @Override + public String getClientFirstMessage() { + return ""; + } +} diff --git a/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java b/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java index 85f2718ba..784289975 100644 --- a/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java +++ b/src/main/java/de/pixart/messenger/xmpp/XmppConnection.java @@ -56,6 +56,7 @@ import javax.net.ssl.X509TrustManager; import de.duenndns.ssl.MemorizingTrustManager; import de.pixart.messenger.Config; import de.pixart.messenger.crypto.XmppDomainVerifier; +import de.pixart.messenger.crypto.sasl.Anonymous; import de.pixart.messenger.crypto.sasl.DigestMd5; import de.pixart.messenger.crypto.sasl.External; import de.pixart.messenger.crypto.sasl.Plain; @@ -854,6 +855,8 @@ public class XmppConnection implements Runnable { saslMechanism = new Plain(tagWriter, account); } else if (mechanisms.contains("DIGEST-MD5")) { saslMechanism = new DigestMd5(tagWriter, account, mXmppConnectionService.getRNG()); + } else if (mechanisms.contains("ANONYMOUS")) { + saslMechanism = new Anonymous(tagWriter, account, mXmppConnectionService.getRNG()); } if (saslMechanism != null) { final JSONObject keys = account.getKeys(); |