Class SASLDigestMD5Mechanism
- java.lang.Object
-
- org.jivesoftware.smack.sasl.SASLMechanism
-
- org.jivesoftware.smack.sasl.provided.SASLDigestMD5Mechanism
-
- All Implemented Interfaces:
Comparable<SASLMechanism>
public class SASLDigestMD5Mechanism extends SASLMechanism
-
-
Field Summary
Fields Modifier and Type Field Description static StringNAME-
Fields inherited from class org.jivesoftware.smack.sasl.SASLMechanism
authenticationId, authorizationId, connection, connectionConfiguration, CRAMMD5, DIGESTMD5, EXTERNAL, GSSAPI, host, password, PLAIN, serviceName, sslSession
-
-
Constructor Summary
Constructors Constructor Description SASLDigestMD5Mechanism()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidauthenticateInternal(CallbackHandler cbh)booleanauthzidSupported()voidcheckIfSuccessfulOrThrow()protected byte[]evaluateChallenge(byte[] challenge)Evaluate the SASL challenge.protected byte[]getAuthenticationText()Should return the initial response of the SASL mechanism.StringgetName()Returns the common name of the SASL mechanism.intgetPriority()Get the priority of this SASL mechanism.SASLDigestMD5MechanismnewInstance()static StringquoteBackslash(String string)Quote the backslash in the given String.static voidsetVerifyServerResponse(boolean verifyServerResponse)-
Methods inherited from class org.jivesoftware.smack.sasl.SASLMechanism
afterFinalSaslChallenge, authenticate, authenticate, authenticateInternal, challengeReceived, compareTo, instanceForAuthentication, isAuthenticationSuccessful, isFinished, requiresPassword, saslPrep, setException, throwExceptionIfRequired, toBytes, toString
-
-
-
-
Field Detail
-
NAME
public static final String NAME
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SASLDigestMD5Mechanism
public SASLDigestMD5Mechanism()
-
-
Method Detail
-
setVerifyServerResponse
public static void setVerifyServerResponse(boolean verifyServerResponse)
-
authenticateInternal
protected void authenticateInternal(CallbackHandler cbh)
- Specified by:
authenticateInternalin classSASLMechanism
-
getAuthenticationText
protected byte[] getAuthenticationText()
Description copied from class:SASLMechanismShould return the initial response of the SASL mechanism. The returned byte array will be send base64 encoded to the server. SASL mechanism are free to returnnullor an empty array here.- Specified by:
getAuthenticationTextin classSASLMechanism- Returns:
- the initial response or null
-
getName
public String getName()
Description copied from class:SASLMechanismReturns the common name of the SASL mechanism. E.g.: PLAIN, DIGEST-MD5 or GSSAPI.- Specified by:
getNamein classSASLMechanism- Returns:
- the common name of the SASL mechanism.
-
getPriority
public int getPriority()
Description copied from class:SASLMechanismGet the priority of this SASL mechanism. Lower values mean higher priority.- Specified by:
getPriorityin classSASLMechanism- Returns:
- the priority of this SASL mechanism.
-
newInstance
public SASLDigestMD5Mechanism newInstance()
- Specified by:
newInstancein classSASLMechanism
-
authzidSupported
public boolean authzidSupported()
- Overrides:
authzidSupportedin classSASLMechanism
-
checkIfSuccessfulOrThrow
public void checkIfSuccessfulOrThrow() throws SmackException.SmackSaslException
- Specified by:
checkIfSuccessfulOrThrowin classSASLMechanism- Throws:
SmackException.SmackSaslException
-
evaluateChallenge
protected byte[] evaluateChallenge(byte[] challenge) throws SmackException.SmackSaslException
Description copied from class:SASLMechanismEvaluate the SASL challenge.- Overrides:
evaluateChallengein classSASLMechanism- Parameters:
challenge- challenge to evaluate.- Returns:
- null.
- Throws:
SmackException.SmackSaslException- If a SASL related error occurs.
-
quoteBackslash
public static String quoteBackslash(String string)
Quote the backslash in the given String. Replaces all occurrences of "\" with "\\".According to RFC 2831 ยง 7.2 a quoted-string consists either of qdtext or quoted-pair. And since quoted-pair is a backslash followed by a char, every backslash in qdtext must be quoted, since it otherwise would be treated as qdtext.
- Parameters:
string- the input string.- Returns:
- the input string where the every backslash is quoted.
-
-