Scram-Sha-1 mechanism : do not send authzid if it not absolutely necessary
Some servers (ejabberd) reject the challenge if the
scram attributes a (authzid) and n (authcid) are equals
or they just don't handle the authzid.
So we just don't send it if they are the same
This fix #484
/*
* otr4j, the open source java otr library.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.otr4j.io.messages;
/**
*
* @author George Politis
*/
public abstract class AbstractMessage {
// Fields.
public int messageType;
// Ctor.
public AbstractMessage(int messageType) {
this.messageType = messageType;
}
// Methods.
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + messageType;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
AbstractMessage other = (AbstractMessage) obj;
if (messageType != other.messageType)
return false;
return true;
}
// Unencoded
public static final int MESSAGE_ERROR = 0xff;
public static final int MESSAGE_QUERY = 0x100;
public static final int MESSAGE_PLAINTEXT = 0x102;
}