diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-05-28 23:53:55 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-05-29 01:33:17 +0200 |
commit | a0d8b8a3b78b1d0db50de2a7d841efaec2a55c36 (patch) | |
tree | 749fb2a2fd5888145030b546666a41d28479bafa /src/Main/TextUserInterface.cpp | |
parent | 3f806010d2e2d54f0b5bc796f2d5e506e66537c7 (diff) | |
download | VeraCrypt-a0d8b8a3b78b1d0db50de2a7d841efaec2a55c36.tar.gz VeraCrypt-a0d8b8a3b78b1d0db50de2a7d841efaec2a55c36.zip |
Linux/MacOSX: Implement passing smart card PIN as command line argument (--token-pin switch)
Diffstat (limited to 'src/Main/TextUserInterface.cpp')
-rw-r--r-- | src/Main/TextUserInterface.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Main/TextUserInterface.cpp b/src/Main/TextUserInterface.cpp index 902f4616..035e458e 100644 --- a/src/Main/TextUserInterface.cpp +++ b/src/Main/TextUserInterface.cpp @@ -1053,6 +1053,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 (UI->GetPreferences().NonInteractive) throw MissingArgument (SRC_POS); @@ -1069,6 +1076,14 @@ namespace VeraCrypt StringConverter::ToSingle (wPassword, passwordStr); } + virtual void notifyIncorrectPin () + { + if (CmdLine->ArgTokenPin && CmdLine->ArgTokenPin->IsAllocated ()) + { + CmdLine->ArgTokenPin->Free (); + } + } + const TextUserInterface *UI; }; |