private void Login_v1(string user, string password, bool allowLoginProcessVersion2Fallback)
{
//Get login hash
string responseHash;
try
{
ApiCommand readLoginHashCommand = new ApiCommand(this, "/login");
responseHash = readLoginHashCommand.ExecuteScalar();
}
catch (TikCommandException) //TODO catch specific exception / message
{
if (allowLoginProcessVersion2Fallback)
{
Login_v2(user, password); // try it via newer login process
return;
}
else
{
throw;
}
}
//login connection
string hashedPass = ApiConnectionHelper.EncodePassword(password, responseHash);
ApiCommand loginCommand = new ApiCommand(this, "/login", TikCommandParameterFormat.NameValue,
new ApiCommandParameter("name", user), new ApiCommandParameter("response", hashedPass));
loginCommand.ExecuteNonQuery();
}