mirror of
https://github.com/winscp/winscp.git
synced 2026-10-24 02:28:55 +03:00
https://winscp.net/tracker/2455 Some related refactoring: Refactoring php release script includes Reusing complete_translations in copy_complete_translations.php Removing obsolete maketran.bat hack Source commit: 07476ec822e4bd7b8b1c65ceb9783b6d92f20489
468 lines
25 KiB
C++
468 lines
25 KiB
C++
//---------------------------------------------------------------------------
|
|
#ifndef ConfigurationH
|
|
#define ConfigurationH
|
|
|
|
#include <set>
|
|
#include <list>
|
|
#include "RemoteFiles.h"
|
|
#include "FileBuffer.h"
|
|
#include "HierarchicalStorage.h"
|
|
#include "Usage.h"
|
|
//---------------------------------------------------------------------------
|
|
#define SET_CONFIG_PROPERTY_EX(PROPERTY, APPLY) \
|
|
if (PROPERTY != value) { F ## PROPERTY = value; Changed(); APPLY; }
|
|
#define SET_CONFIG_PROPERTY(PROPERTY) \
|
|
SET_CONFIG_PROPERTY_EX(PROPERTY, )
|
|
//---------------------------------------------------------------------------
|
|
extern const wchar_t * AutoSwitchNames;
|
|
extern const wchar_t * NotAutoSwitchNames;
|
|
enum TAutoSwitch { asOn, asOff, asAuto }; // Has to match PuTTY FORCE_ON, FORCE_OFF, AUTO
|
|
//---------------------------------------------------------------------------
|
|
class TStoredSessionList;
|
|
class TCopyParamType;
|
|
//---------------------------------------------------------------------------
|
|
class TSshHostCA
|
|
{
|
|
public:
|
|
TSshHostCA();
|
|
void Save(THierarchicalStorage * Storage) const;
|
|
bool Load(THierarchicalStorage * Storage);
|
|
|
|
UnicodeString Name;
|
|
RawByteString PublicKey;
|
|
UnicodeString ValidityExpression;
|
|
bool PermitRsaSha1;
|
|
bool PermitRsaSha256;
|
|
bool PermitRsaSha512;
|
|
|
|
typedef std::vector<TSshHostCA> TList;
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
class TSshHostCAList
|
|
{
|
|
public:
|
|
TSshHostCAList();
|
|
TSshHostCAList(const TSshHostCA::TList & List);
|
|
TSshHostCAList & operator =(const TSshHostCAList & other);
|
|
void Default();
|
|
const TSshHostCA::TList & GetList() const;
|
|
int GetCount() const;
|
|
const TSshHostCA * Get(int Index) const;
|
|
const TSshHostCA * Find(const UnicodeString & Name) const;
|
|
|
|
void Save(THierarchicalStorage * Storage);
|
|
void Load(THierarchicalStorage * Storage);
|
|
|
|
private:
|
|
TSshHostCA::TList FList;
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
class TConfiguration : public TObject
|
|
{
|
|
private:
|
|
bool FDontSave;
|
|
bool FForceSave;
|
|
bool FChanged;
|
|
int FUpdating;
|
|
TNotifyEvent FOnChange;
|
|
|
|
void * FApplicationInfo;
|
|
TUsage * FUsage;
|
|
bool FLogging;
|
|
bool FPermanentLogging;
|
|
UnicodeString FLogFileName;
|
|
UnicodeString FPermanentLogFileName;
|
|
bool FLogFileAppend;
|
|
bool FLogSensitive;
|
|
bool FPermanentLogSensitive;
|
|
__int64 FLogMaxSize;
|
|
__int64 FPermanentLogMaxSize;
|
|
int FLogMaxCount;
|
|
int FPermanentLogMaxCount;
|
|
int FLogProtocol;
|
|
int FPermanentLogProtocol;
|
|
int FActualLogProtocol;
|
|
bool FLogActions;
|
|
bool FPermanentLogActions;
|
|
bool FLogActionsRequired;
|
|
UnicodeString FActionsLogFileName;
|
|
UnicodeString FPermanentActionsLogFileName;
|
|
bool FConfirmOverwriting;
|
|
bool FConfirmResume;
|
|
bool FAutoReadDirectoryAfterOp;
|
|
int FSessionReopenAuto;
|
|
int FSessionReopenBackground;
|
|
int FSessionReopenTimeout;
|
|
int FSessionReopenAutoStall;
|
|
UnicodeString FCustomIniFileStorageName;
|
|
UnicodeString FIniFileStorageName;
|
|
UnicodeString FVirtualIniFileStorageName;
|
|
std::unique_ptr<TStrings> FOptionsStorage;
|
|
int FProgramIniPathWritable;
|
|
int FTunnelLocalPortNumberLow;
|
|
int FTunnelLocalPortNumberHigh;
|
|
int FCacheDirectoryChangesMaxSize;
|
|
bool FShowFtpWelcomeMessage;
|
|
UnicodeString FDefaultRandomSeedFile;
|
|
UnicodeString FRandomSeedFile;
|
|
UnicodeString FPuttyRegistryStorageKey;
|
|
UnicodeString FExternalIpAddress;
|
|
int FLocalPortNumberMin;
|
|
int FLocalPortNumberMax;
|
|
bool FTryFtpWhenSshFails;
|
|
int FParallelDurationThreshold;
|
|
bool FScripting;
|
|
UnicodeString FMimeTypes;
|
|
int FDontReloadMoreThanSessions;
|
|
int FScriptProgressFileNameLimit;
|
|
int FKeyVersion;
|
|
int FQueueTransfersLimit;
|
|
int FParallelTransferThreshold;
|
|
UnicodeString FCertificateStorage;
|
|
UnicodeString FAWSAPI;
|
|
UnicodeString FChecksumCommands;
|
|
std::unique_ptr<TSshHostCAList> FSshHostCAList;
|
|
std::unique_ptr<TSshHostCAList> FPuttySshHostCAList;
|
|
bool FSshHostCAsFromPuTTY;
|
|
int FHttpsCertificateValidation;
|
|
UnicodeString FSynchronizationChecksumAlgs;
|
|
|
|
bool FDisablePasswordStoring;
|
|
bool FForceBanners;
|
|
bool FDisableAcceptingHostKeys;
|
|
bool FDefaultCollectUsage;
|
|
|
|
TVSFixedFileInfo *__fastcall GetFixedApplicationInfo();
|
|
void * __fastcall GetApplicationInfo();
|
|
virtual UnicodeString __fastcall GetVersionStr();
|
|
virtual UnicodeString __fastcall GetVersion();
|
|
UnicodeString __fastcall GetProductVersion();
|
|
UnicodeString __fastcall GetProductName();
|
|
UnicodeString __fastcall GetCompanyName();
|
|
UnicodeString __fastcall GetFileVersion(TVSFixedFileInfo * Info);
|
|
UnicodeString __fastcall GetStoredSessionsSubKey();
|
|
UnicodeString __fastcall DoGetPuttySessionsKey();
|
|
UnicodeString __fastcall GetPuttySessionsSubKey();
|
|
void __fastcall SetRandomSeedFile(UnicodeString value);
|
|
UnicodeString __fastcall GetRandomSeedFileName();
|
|
void __fastcall SetPuttyRegistryStorageKey(UnicodeString value);
|
|
UnicodeString __fastcall GetSshHostKeysSubKey();
|
|
UnicodeString __fastcall GetRootKeyStr();
|
|
UnicodeString __fastcall GetConfigurationSubKey();
|
|
TEOLType __fastcall GetLocalEOLType();
|
|
void __fastcall SetLogging(bool value);
|
|
bool __fastcall GetLogging();
|
|
void __fastcall SetLogFileName(UnicodeString value);
|
|
UnicodeString __fastcall GetLogFileName();
|
|
bool __fastcall GetLogToFile();
|
|
void __fastcall SetLogFileAppend(bool value);
|
|
void __fastcall SetLogSensitive(bool value);
|
|
void __fastcall SetLogMaxSize(__int64 value);
|
|
__int64 __fastcall GetLogMaxSize();
|
|
void __fastcall SetLogMaxCount(int value);
|
|
int __fastcall GetLogMaxCount();
|
|
void __fastcall SetLogProtocol(int value);
|
|
void __fastcall SetLogActions(bool value);
|
|
bool __fastcall GetLogActions();
|
|
void __fastcall SetActionsLogFileName(UnicodeString value);
|
|
UnicodeString __fastcall GetPermanentActionsLogFileName();
|
|
UnicodeString __fastcall GetActionsLogFileName();
|
|
UnicodeString __fastcall GetDefaultLogFileName();
|
|
UnicodeString __fastcall GetTimeFormat();
|
|
UnicodeString __fastcall GetRegistryStorageKey();
|
|
UnicodeString __fastcall GetIniFileStorageNameForReadingWriting();
|
|
UnicodeString __fastcall GetIniFileStorageNameForReading();
|
|
UnicodeString __fastcall GetIniFileStorageName(bool ReadingOnly);
|
|
void __fastcall SetOptionsStorage(TStrings * value);
|
|
TStrings * __fastcall GetOptionsStorage();
|
|
UnicodeString __fastcall GetFileInfoString(const UnicodeString Key);
|
|
void __fastcall SetSessionReopenAuto(int value);
|
|
void __fastcall SetSessionReopenBackground(int value);
|
|
void __fastcall SetSessionReopenTimeout(int value);
|
|
void __fastcall SetSessionReopenAutoStall(int value);
|
|
void __fastcall SetTunnelLocalPortNumberLow(int value);
|
|
void __fastcall SetTunnelLocalPortNumberHigh(int value);
|
|
void __fastcall SetCacheDirectoryChangesMaxSize(int value);
|
|
void __fastcall SetShowFtpWelcomeMessage(bool value);
|
|
int __fastcall GetCompoundVersion();
|
|
void __fastcall UpdateActualLogProtocol();
|
|
void __fastcall SetExternalIpAddress(UnicodeString value);
|
|
void __fastcall SetTryFtpWhenSshFails(bool value);
|
|
void __fastcall SetParallelDurationThreshold(int value);
|
|
void __fastcall SetMimeTypes(UnicodeString value);
|
|
void SetCertificateStorage(const UnicodeString & value);
|
|
UnicodeString GetCertificateStorageExpanded();
|
|
void SetAWSAPI(const UnicodeString & value);
|
|
bool __fastcall GetCollectUsage();
|
|
void __fastcall SetCollectUsage(bool value);
|
|
bool __fastcall GetIsUnofficial();
|
|
bool __fastcall GetPersistent();
|
|
void SetLocalPortNumberMin(int value);
|
|
void SetLocalPortNumberMax(int value);
|
|
void SetQueueTransfersLimit(int value);
|
|
const TSshHostCAList * GetSshHostCAList();
|
|
void SetSshHostCAList(const TSshHostCAList * value);
|
|
const TSshHostCAList * GetPuttySshHostCAList();
|
|
const TSshHostCAList * GetActiveSshHostCAList();
|
|
int GetAuthAgent();
|
|
void SetAuthAgent(int value);
|
|
|
|
protected:
|
|
TStorage FStorage;
|
|
TCriticalSection * FCriticalSection;
|
|
|
|
virtual TStorage __fastcall GetStorage();
|
|
virtual void __fastcall Changed();
|
|
virtual void __fastcall SaveData(THierarchicalStorage * Storage, bool All);
|
|
virtual void __fastcall LoadData(THierarchicalStorage * Storage);
|
|
virtual void __fastcall LoadFrom(THierarchicalStorage * Storage);
|
|
virtual void __fastcall CopyData(THierarchicalStorage * Source, THierarchicalStorage * Target);
|
|
virtual void __fastcall LoadAdmin(THierarchicalStorage * Storage);
|
|
void LoadSshHostCAList(TSshHostCAList * SshHostCAList, THierarchicalStorage * Storage);
|
|
virtual UnicodeString __fastcall GetDefaultKeyFile();
|
|
virtual void __fastcall Saved();
|
|
void __fastcall CleanupRegistry(const UnicodeString & RegistryPath);
|
|
void __fastcall CopyAllStringsInSubKey(
|
|
THierarchicalStorage * Source, THierarchicalStorage * Target, const UnicodeString & Name);
|
|
bool __fastcall CopySubKey(THierarchicalStorage * Source, THierarchicalStorage * Target, const UnicodeString & Name);
|
|
UnicodeString __fastcall BannerHash(const UnicodeString & Banner);
|
|
void __fastcall SetBannerData(const UnicodeString & SessionKey, const UnicodeString & BannerHash, unsigned int Params);
|
|
void __fastcall GetBannerData(const UnicodeString & SessionKey, UnicodeString & BannerHash, unsigned int & Params);
|
|
static UnicodeString __fastcall PropertyToKey(const UnicodeString & Property);
|
|
void DoSave(THierarchicalStorage * AStorage, bool All);
|
|
virtual void __fastcall DoSave(bool All, bool Explicit);
|
|
UnicodeString __fastcall FormatFingerprintKey(const UnicodeString & SiteKey, const UnicodeString & FingerprintType);
|
|
THierarchicalStorage * OpenDirectoryStatisticsCache(bool CanCreate);
|
|
UnicodeString __fastcall GetDirectoryStatisticsCacheKey(
|
|
const UnicodeString & SessionKey, const UnicodeString & Path, const TCopyParamType & CopyParam);
|
|
void SelectSessionsToImportIfAny(
|
|
TStoredSessionList * ImportSessionList, TStoredSessionList * Sessions,
|
|
UnicodeString & Error, const UnicodeString & NoSessionsError);
|
|
|
|
virtual bool __fastcall GetConfirmOverwriting();
|
|
virtual void __fastcall SetConfirmOverwriting(bool value);
|
|
bool __fastcall GetConfirmResume();
|
|
void __fastcall SetConfirmResume(bool value);
|
|
bool __fastcall GetAutoReadDirectoryAfterOp();
|
|
void __fastcall SetAutoReadDirectoryAfterOp(bool value);
|
|
virtual bool __fastcall GetRememberPassword();
|
|
UnicodeString __fastcall GetReleaseType();
|
|
UnicodeString __fastcall LoadCustomIniFileStorageName();
|
|
void __fastcall SaveCustomIniFileStorageName();
|
|
UnicodeString __fastcall GetRegistryStorageOverrideKey();
|
|
TStrings * GetCaches();
|
|
UnicodeString GetFullVersion();
|
|
|
|
virtual UnicodeString __fastcall ModuleFileName();
|
|
|
|
UnicodeString GetFileFileInfoString(
|
|
const UnicodeString & Key, const UnicodeString & FileName, bool AllowEmpty = false);
|
|
void * GetFileApplicationInfo(const UnicodeString & FileName);
|
|
UnicodeString GetFileProductVersion(const UnicodeString & FileName, bool AllowEmpty = false);
|
|
UnicodeString GetFileProductName(const UnicodeString & FileName, bool AllowEmpty = false);
|
|
UnicodeString GetFileCompanyName(const UnicodeString & FileName);
|
|
|
|
__property bool PermanentLogging = { read=GetLogging, write=SetLogging };
|
|
__property UnicodeString PermanentLogFileName = { read=GetLogFileName, write=SetLogFileName };
|
|
__property bool PermanentLogActions = { read=GetLogActions, write=SetLogActions };
|
|
__property UnicodeString PermanentActionsLogFileName = { read=GetPermanentActionsLogFileName, write=SetActionsLogFileName };
|
|
__property int PermanentLogProtocol = { read=FPermanentLogProtocol, write=SetLogProtocol };
|
|
__property bool PermanentLogSensitive = { read=FPermanentLogSensitive, write=SetLogSensitive };
|
|
__property __int64 PermanentLogMaxSize = { read=GetLogMaxSize, write=SetLogMaxSize };
|
|
__property int PermanentLogMaxCount = { read=GetLogMaxCount, write=SetLogMaxCount };
|
|
|
|
public:
|
|
__fastcall TConfiguration();
|
|
virtual __fastcall ~TConfiguration();
|
|
virtual void __fastcall Default();
|
|
virtual void __fastcall UpdateStaticUsage();
|
|
void __fastcall Load(THierarchicalStorage * Storage);
|
|
void __fastcall Save();
|
|
void __fastcall SaveExplicit();
|
|
void __fastcall MoveStorage(TStorage AStorage, const UnicodeString & ACustomIniFileStorageName);
|
|
void __fastcall ScheduleCustomIniFileStorageUse(const UnicodeString & ACustomIniFileStorageName);
|
|
void __fastcall SetExplicitIniFileStorageName(const UnicodeString & FileName);
|
|
void __fastcall SetNulStorage();
|
|
UnicodeString __fastcall GetAutomaticIniFileStorageName(bool ReadingOnly);
|
|
UnicodeString __fastcall GetDefaultIniFileExportPath();
|
|
UnicodeString __fastcall GetIniFileParamValue();
|
|
void __fastcall Export(const UnicodeString & FileName);
|
|
void __fastcall Import(const UnicodeString & FileName);
|
|
void __fastcall CleanupConfiguration();
|
|
void __fastcall CleanupIniFile();
|
|
void __fastcall CleanupCaches();
|
|
bool __fastcall HasAnyCache();
|
|
void __fastcall CleanupRandomSeedFile();
|
|
void __fastcall BeginUpdate();
|
|
void __fastcall EndUpdate();
|
|
void __fastcall DontSave();
|
|
void __fastcall LoadDirectoryChangesCache(const UnicodeString SessionKey,
|
|
TRemoteDirectoryChangesCache * DirectoryChangesCache);
|
|
void __fastcall SaveDirectoryChangesCache(const UnicodeString SessionKey,
|
|
TRemoteDirectoryChangesCache * DirectoryChangesCache);
|
|
TStrings * __fastcall LoadDirectoryStatisticsCache(
|
|
const UnicodeString & SessionKey, const UnicodeString & Path, const TCopyParamType & CopyParam);
|
|
void __fastcall SaveDirectoryStatisticsCache(
|
|
const UnicodeString & SessionKey, const UnicodeString & Path, const TCopyParamType & CopyParam, TStrings * DataList);
|
|
bool __fastcall ShowBanner(const UnicodeString & SessionKey, const UnicodeString & Banner, unsigned int & Params);
|
|
void __fastcall NeverShowBanner(const UnicodeString & SessionKey, const UnicodeString & Banner);
|
|
void __fastcall SetBannerParams(const UnicodeString & SessionKey, unsigned int Params);
|
|
void __fastcall RememberLastFingerprint(const UnicodeString & SiteKey, const UnicodeString & FingerprintType, const UnicodeString & Fingerprint);
|
|
UnicodeString __fastcall LastFingerprint(const UnicodeString & SiteKey, const UnicodeString & FingerprintType);
|
|
THierarchicalStorage * CreateConfigStorage();
|
|
THierarchicalStorage * CreateConfigRegistryStorage();
|
|
virtual THierarchicalStorage * CreateScpStorage(bool & SessionList);
|
|
void __fastcall TemporaryLogging(const UnicodeString ALogFileName);
|
|
void __fastcall TemporaryActionsLogging(const UnicodeString ALogFileName);
|
|
void __fastcall TemporaryLogProtocol(int ALogProtocol);
|
|
void __fastcall TemporaryLogSensitive(bool ALogSensitive);
|
|
void __fastcall TemporaryLogMaxSize(__int64 ALogMaxSize);
|
|
void __fastcall TemporaryLogMaxCount(int ALogMaxCount);
|
|
virtual RawByteString __fastcall EncryptPassword(UnicodeString Password, UnicodeString Key);
|
|
virtual UnicodeString __fastcall DecryptPassword(RawByteString Password, UnicodeString Key);
|
|
virtual RawByteString __fastcall StronglyRecryptPassword(RawByteString Password, UnicodeString Key);
|
|
UnicodeString __fastcall GetFileDescription(const UnicodeString & FileName);
|
|
UnicodeString __fastcall GetFileVersion(const UnicodeString & FileName);
|
|
UnicodeString __fastcall GetFileMimeType(const UnicodeString & FileName);
|
|
bool RegistryPathExists(const UnicodeString & RegistryPath);
|
|
bool HasLocalPortNumberLimits();
|
|
virtual UnicodeString TemporaryDir(bool Mask = false) = 0;
|
|
UnicodeString GetVersionStrHuman();
|
|
|
|
TStoredSessionList * __fastcall SelectFilezillaSessionsForImport(
|
|
TStoredSessionList * Sessions, UnicodeString & Error);
|
|
bool __fastcall AnyFilezillaSessionForImport(TStoredSessionList * Sessions);
|
|
TStoredSessionList * __fastcall SelectKnownHostsSessionsForImport(
|
|
TStoredSessionList * Sessions, UnicodeString & Error);
|
|
TStoredSessionList * __fastcall SelectKnownHostsSessionsForImport(
|
|
TStrings * Lines, TStoredSessionList * Sessions, UnicodeString & Error);
|
|
TStoredSessionList * SelectOpensshSessionsForImport(TStoredSessionList * Sessions, UnicodeString & Error);
|
|
TStoredSessionList * SelectSessionsForImport(TStoredSessionList * Sessions, const UnicodeString & FileName, UnicodeString & Error);
|
|
UnicodeString GetPuttySessionsKey(const UnicodeString & RootKey);
|
|
void RefreshPuttySshHostCAList();
|
|
|
|
__property TVSFixedFileInfo *FixedApplicationInfo = { read=GetFixedApplicationInfo };
|
|
__property void * ApplicationInfo = { read=GetApplicationInfo };
|
|
__property TUsage * Usage = { read = FUsage };
|
|
__property bool CollectUsage = { read = GetCollectUsage, write = SetCollectUsage };
|
|
__property UnicodeString StoredSessionsSubKey = {read=GetStoredSessionsSubKey};
|
|
__property UnicodeString PuttyRegistryStorageKey = { read=FPuttyRegistryStorageKey, write=SetPuttyRegistryStorageKey };
|
|
__property UnicodeString PuttySessionsKey = { read=DoGetPuttySessionsKey };
|
|
__property UnicodeString PuttySessionsSubKey = { read=GetPuttySessionsSubKey };
|
|
__property UnicodeString RandomSeedFile = { read=FRandomSeedFile, write=SetRandomSeedFile };
|
|
__property UnicodeString RandomSeedFileName = { read=GetRandomSeedFileName };
|
|
__property UnicodeString SshHostKeysSubKey = { read=GetSshHostKeysSubKey };
|
|
__property UnicodeString RootKeyStr = { read=GetRootKeyStr };
|
|
__property UnicodeString ConfigurationSubKey = { read=GetConfigurationSubKey };
|
|
__property TEOLType LocalEOLType = { read = GetLocalEOLType };
|
|
__property UnicodeString VersionStr = { read=GetVersionStr };
|
|
__property UnicodeString Version = { read=GetVersion };
|
|
__property int CompoundVersion = { read=GetCompoundVersion };
|
|
__property UnicodeString ProductVersion = { read=GetProductVersion };
|
|
__property UnicodeString ProductName = { read=GetProductName };
|
|
__property UnicodeString CompanyName = { read=GetCompanyName };
|
|
__property bool IsUnofficial = { read = GetIsUnofficial };
|
|
__property bool Logging = { read=FLogging, write=SetLogging };
|
|
__property UnicodeString LogFileName = { read=FLogFileName, write=SetLogFileName };
|
|
__property bool LogToFile = { read=GetLogToFile };
|
|
__property bool LogFileAppend = { read=FLogFileAppend, write=SetLogFileAppend };
|
|
__property bool LogSensitive = { read=FLogSensitive, write=SetLogSensitive };
|
|
__property __int64 LogMaxSize = { read=FLogMaxSize, write=SetLogMaxSize };
|
|
__property int LogMaxCount = { read=FLogMaxCount, write=SetLogMaxCount };
|
|
__property int LogProtocol = { read=FLogProtocol, write=SetLogProtocol };
|
|
__property int ActualLogProtocol = { read=FActualLogProtocol };
|
|
__property bool LogActions = { read=FLogActions, write=SetLogActions };
|
|
__property bool LogActionsRequired = { read=FLogActionsRequired, write=FLogActionsRequired };
|
|
__property UnicodeString ActionsLogFileName = { read=GetActionsLogFileName, write=SetActionsLogFileName };
|
|
__property UnicodeString DefaultLogFileName = { read=GetDefaultLogFileName };
|
|
__property TNotifyEvent OnChange = { read = FOnChange, write = FOnChange };
|
|
__property bool ConfirmOverwriting = { read = GetConfirmOverwriting, write = SetConfirmOverwriting};
|
|
__property bool ConfirmResume = { read = GetConfirmResume, write = SetConfirmResume};
|
|
__property bool AutoReadDirectoryAfterOp = { read = GetAutoReadDirectoryAfterOp, write = SetAutoReadDirectoryAfterOp};
|
|
__property bool RememberPassword = { read = GetRememberPassword };
|
|
__property int SessionReopenAuto = { read = FSessionReopenAuto, write = SetSessionReopenAuto };
|
|
__property int SessionReopenBackground = { read = FSessionReopenBackground, write = SetSessionReopenBackground };
|
|
__property int SessionReopenTimeout = { read = FSessionReopenTimeout, write = SetSessionReopenTimeout };
|
|
__property int SessionReopenAutoStall = { read = FSessionReopenAutoStall, write = SetSessionReopenAutoStall };
|
|
__property int TunnelLocalPortNumberLow = { read = FTunnelLocalPortNumberLow, write = SetTunnelLocalPortNumberLow };
|
|
__property int TunnelLocalPortNumberHigh = { read = FTunnelLocalPortNumberHigh, write = SetTunnelLocalPortNumberHigh };
|
|
__property int CacheDirectoryChangesMaxSize = { read = FCacheDirectoryChangesMaxSize, write = SetCacheDirectoryChangesMaxSize };
|
|
__property bool ShowFtpWelcomeMessage = { read = FShowFtpWelcomeMessage, write = SetShowFtpWelcomeMessage };
|
|
__property UnicodeString ExternalIpAddress = { read = FExternalIpAddress, write = SetExternalIpAddress };
|
|
__property UnicodeString CertificateStorage = { read = FCertificateStorage, write = SetCertificateStorage };
|
|
__property UnicodeString CertificateStorageExpanded = { read = GetCertificateStorageExpanded };
|
|
__property UnicodeString AWSAPI = { read = FAWSAPI, write = SetAWSAPI };
|
|
__property UnicodeString ChecksumCommands = { read = FChecksumCommands, write = FChecksumCommands };
|
|
__property int LocalPortNumberMin = { read = FLocalPortNumberMin, write = SetLocalPortNumberMin };
|
|
__property int LocalPortNumberMax = { read = FLocalPortNumberMax, write = SetLocalPortNumberMax };
|
|
__property bool TryFtpWhenSshFails = { read = FTryFtpWhenSshFails, write = SetTryFtpWhenSshFails };
|
|
__property int ParallelDurationThreshold = { read = FParallelDurationThreshold, write = SetParallelDurationThreshold };
|
|
__property UnicodeString MimeTypes = { read = FMimeTypes, write = SetMimeTypes };
|
|
__property int DontReloadMoreThanSessions = { read = FDontReloadMoreThanSessions, write = FDontReloadMoreThanSessions };
|
|
__property int ScriptProgressFileNameLimit = { read = FScriptProgressFileNameLimit, write = FScriptProgressFileNameLimit };
|
|
__property int QueueTransfersLimit = { read = FQueueTransfersLimit, write = SetQueueTransfersLimit };
|
|
__property int ParallelTransferThreshold = { read = FParallelTransferThreshold, write = FParallelTransferThreshold };
|
|
__property int KeyVersion = { read = FKeyVersion, write = FKeyVersion };
|
|
__property TSshHostCAList * SshHostCAList = { read = GetSshHostCAList, write = SetSshHostCAList };
|
|
__property TSshHostCAList * PuttySshHostCAList = { read = GetPuttySshHostCAList };
|
|
__property TSshHostCAList * ActiveSshHostCAList = { read = GetActiveSshHostCAList };
|
|
__property bool SshHostCAsFromPuTTY = { read = FSshHostCAsFromPuTTY, write = FSshHostCAsFromPuTTY };
|
|
__property int HttpsCertificateValidation = { read = FHttpsCertificateValidation, write = FHttpsCertificateValidation };
|
|
__property UnicodeString SynchronizationChecksumAlgs = { read = FSynchronizationChecksumAlgs, write = FSynchronizationChecksumAlgs };
|
|
__property int AuthAgent = { read = GetAuthAgent, write = SetAuthAgent };
|
|
|
|
__property UnicodeString TimeFormat = { read = GetTimeFormat };
|
|
__property TStorage Storage = { read=GetStorage };
|
|
__property UnicodeString RegistryStorageKey = { read=GetRegistryStorageKey };
|
|
__property UnicodeString CustomIniFileStorageName = { read=FCustomIniFileStorageName };
|
|
__property UnicodeString ExplicitIniFileStorageName = { read=FIniFileStorageName };
|
|
__property UnicodeString IniFileStorageName = { read=GetIniFileStorageNameForReadingWriting };
|
|
__property UnicodeString IniFileStorageNameForReading = { read=GetIniFileStorageNameForReading };
|
|
__property TStrings * OptionsStorage = { read = GetOptionsStorage, write = SetOptionsStorage };
|
|
__property bool Persistent = { read = GetPersistent };
|
|
__property bool ForceSave = { read = FForceSave, write = FForceSave };
|
|
__property bool Scripting = { read = FScripting, write = FScripting };
|
|
|
|
__property UnicodeString DefaultKeyFile = { read = GetDefaultKeyFile };
|
|
|
|
__property bool DisablePasswordStoring = { read = FDisablePasswordStoring };
|
|
__property bool ForceBanners = { read = FForceBanners };
|
|
__property bool DisableAcceptingHostKeys = { read = FDisableAcceptingHostKeys };
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
class TShortCuts
|
|
{
|
|
public:
|
|
void __fastcall Add(TShortCut ShortCut);
|
|
bool __fastcall Has(TShortCut ShortCut) const;
|
|
|
|
private:
|
|
std::set<TShortCut> FShortCuts;
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
extern const UnicodeString OriginalPuttyRegistryStorageKey;
|
|
extern const UnicodeString KittyRegistryStorageKey;
|
|
extern const UnicodeString OriginalPuttyExecutable;
|
|
extern const UnicodeString KittyExecutable;
|
|
//---------------------------------------------------------------------------
|
|
extern const UnicodeString Sha1ChecksumAlg;
|
|
extern const UnicodeString Sha224ChecksumAlg;
|
|
extern const UnicodeString Sha256ChecksumAlg;
|
|
extern const UnicodeString Sha384ChecksumAlg;
|
|
extern const UnicodeString Sha512ChecksumAlg;
|
|
extern const UnicodeString Md5ChecksumAlg;
|
|
extern const UnicodeString Crc32ChecksumAlg;
|
|
//---------------------------------------------------------------------------
|
|
extern const UnicodeString SshFingerprintType;
|
|
extern const UnicodeString TlsFingerprintType;
|
|
//---------------------------------------------------------------------------
|
|
extern const UnicodeString FtpsCertificateStorageKey;
|
|
extern const UnicodeString HttpsCertificateStorageKey;
|
|
//---------------------------------------------------------------------------
|
|
extern const int BelowNormalLogLevels;
|
|
//---------------------------------------------------------------------------
|
|
extern const UnicodeString OpensshFolderName;
|
|
extern const UnicodeString OpensshAuthorizedKeysFileName;
|
|
//---------------------------------------------------------------------------
|
|
#endif
|