1package eu.siacs.conversations.crypto.sasl;
2
3import javax.net.ssl.SSLSocket;
4
5import eu.siacs.conversations.entities.Account;
6
7abstract class ScramPlusMechanism extends ScramMechanism {
8 ScramPlusMechanism(Account account, ChannelBinding channelBinding) {
9 super(account, channelBinding);
10 }
11
12 @Override
13 protected byte[] getChannelBindingData(final SSLSocket sslSocket) throws AuthenticationException {
14 if (this.channelBinding == ChannelBinding.NONE) {
15 throw new AuthenticationException(String.format("%s is not a valid channel binding", ChannelBinding.NONE));
16 }
17 if (sslSocket == null) {
18 throw new AuthenticationException("Channel binding attempt on non secure socket");
19 }
20 throw new AssertionError("not yet implemented");
21 }
22}