// Request a username and password
if( handler == null )
throw new LoginException("No CallbackHandler provied to SRPLoginModule");
NameCallback nc = new NameCallback("Username: ", "guest");
PasswordCallback pc = new PasswordCallback("Password: ", false);
ByteArrayCallback bac = new ByteArrayCallback("Public key random number: ");
TextInputCallback tic = new TextInputCallback("Auxillary challenge token: ");
ArrayList tmpList = new ArrayList();
tmpList.add(nc);
tmpList.add(pc);
if( externalRandomA == true )
tmpList.add(bac);
if( hasAuxChallenge == true )
tmpList.add(tic);
Callback[] callbacks = new Callback[tmpList.size()];
tmpList.toArray(callbacks);
try
{
handler.handle(callbacks);
username = nc.getName();
_password = pc.getPassword();
if( _password != null )
password = _password;
pc.clearPassword();
if( externalRandomA == true )
abytes = bac.getByteArray();
if( hasAuxChallenge == true )
this.auxChallenge = tic.getText();
}