1baa3858d3f5d128a5c8466b700098109edcad5f2repo sync// OpenCallbackConsole.cpp 2baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 3baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "StdAfx.h" 4baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 5baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "OpenCallbackConsole.h" 6baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 7baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "ConsoleClose.h" 8baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "UserInputUtils.h" 9baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 10baa3858d3f5d128a5c8466b700098109edcad5f2repo syncHRESULT COpenCallbackConsole::Open_CheckBreak() 11baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 12baa3858d3f5d128a5c8466b700098109edcad5f2repo sync if (NConsoleClose::TestBreakSignal()) 13baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return E_ABORT; 14baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return S_OK; 15baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 16baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 17baa3858d3f5d128a5c8466b700098109edcad5f2repo syncHRESULT COpenCallbackConsole::Open_SetTotal(const UInt64 *, const UInt64 *) 18baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 19baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return Open_CheckBreak(); 20baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 21baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 22baa3858d3f5d128a5c8466b700098109edcad5f2repo syncHRESULT COpenCallbackConsole::Open_SetCompleted(const UInt64 *, const UInt64 *) 23baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 24baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return Open_CheckBreak(); 25baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 26baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 27baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#ifndef _NO_CRYPTO 28baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 29baa3858d3f5d128a5c8466b700098109edcad5f2repo syncHRESULT COpenCallbackConsole::Open_CryptoGetTextPassword(BSTR *password) 30baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 31baa3858d3f5d128a5c8466b700098109edcad5f2repo sync PasswordWasAsked = true; 32baa3858d3f5d128a5c8466b700098109edcad5f2repo sync RINOK(Open_CheckBreak()); 33baa3858d3f5d128a5c8466b700098109edcad5f2repo sync if (!PasswordIsDefined) 34baa3858d3f5d128a5c8466b700098109edcad5f2repo sync { 35baa3858d3f5d128a5c8466b700098109edcad5f2repo sync Password = GetPassword(OutStream); 36baa3858d3f5d128a5c8466b700098109edcad5f2repo sync PasswordIsDefined = true; 37baa3858d3f5d128a5c8466b700098109edcad5f2repo sync } 38baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return StringToBstr(Password, password); 39baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 40baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 41baa3858d3f5d128a5c8466b700098109edcad5f2repo syncHRESULT COpenCallbackConsole::Open_GetPasswordIfAny(UString &password) 42baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 43baa3858d3f5d128a5c8466b700098109edcad5f2repo sync if (PasswordIsDefined) 44baa3858d3f5d128a5c8466b700098109edcad5f2repo sync password = Password; 45baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return S_OK; 46baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 47baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 48baa3858d3f5d128a5c8466b700098109edcad5f2repo syncbool COpenCallbackConsole::Open_WasPasswordAsked() 49baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 50baa3858d3f5d128a5c8466b700098109edcad5f2repo sync return PasswordWasAsked; 51baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 52baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 53baa3858d3f5d128a5c8466b700098109edcad5f2repo syncvoid COpenCallbackConsole::Open_ClearPasswordWasAskedFlag() 54baa3858d3f5d128a5c8466b700098109edcad5f2repo sync{ 55baa3858d3f5d128a5c8466b700098109edcad5f2repo sync PasswordWasAsked = false; 56baa3858d3f5d128a5c8466b700098109edcad5f2repo sync} 57baa3858d3f5d128a5c8466b700098109edcad5f2repo sync 58baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#endif 59