Linux/MacOSX: Implement passing smart card PIN as command line argument (--token-pin switch)

This commit is contained in:
Mounir IDRASSI committed 2016-05-29 01:33:17 +02:00
1 parent 3f806010d2
commit a0d8b8a3b7
6 files changed
+39

No files matched your search

+15
View File
@@ -537,6 +537,13 @@ namespace VeraCrypt
{
virtual void operator() (string &passwordStr)
{
if (CmdLine->ArgTokenPin && CmdLine->ArgTokenPin->IsAllocated ())
{
passwordStr.clear();
passwordStr.insert (0, (char*) CmdLine->ArgTokenPin->Ptr (), CmdLine->ArgTokenPin->Size());
return;
}
if (Gui->GetPreferences().NonInteractive)
throw MissingArgument (SRC_POS);
@@ -563,6 +570,14 @@ namespace VeraCrypt
StringConverter::ToSingle (wPassword, passwordStr);
}
virtual void notifyIncorrectPin ()
{
if (CmdLine->ArgTokenPin && CmdLine->ArgTokenPin->IsAllocated ())
{
CmdLine->ArgTokenPin->Free ();
}
}
};
struct WarningHandler : public SendExceptionFunctor