initialize method
SaslStep
initialize(
{ - bool specifyUsername = false,
})
override
Implementation
@override
SaslStep initialize({bool specifyUsername = false}) {
if (credential.username == null) {
throw SaslScramException('Username is empty on initialization');
}
String username;
if (specifyUsername) {
username = 'n=${prepUsername(credential.username!)}';
} else {
username = 'n=*';
}
/* List<int> cNonce;
final rnd = Random();
cNonce = List<int>.generate(
SaslAuthenticator.DefaultNonceLength, (i) => rnd.nextInt(256));
final r = cNonce; */
final r = randomStringGenerator.generate(SaslAuthenticator
.DefaultNonceLength); // TODO may want to use above method and exclude ","
final nonce = 'r=$r';
final clientFirstMessageBare = '$username,$nonce';
final clientFirstMessage = '$gs2Header$clientFirstMessageBare';
return ClientFirst(coerceUint8List(utf8.encode(clientFirstMessage)), hash,
credential, clientFirstMessageBare, r);
}