path: root/src/Format/Tcformat.h
diff options
authorMounir IDRASSI <>2013-06-22 16:16:13 +0200
committerMounir IDRASSI <>2014-11-08 23:18:07 +0100
commitc606f0866c3a2a5db3ef9bc41738ef33eb9612a9 (patch)
tree5847c644cdfff3c1dd55b88b565448087ae89f11 /src/Format/Tcformat.h
Add original TrueCrypt 7.1a sources
Diffstat (limited to 'src/Format/Tcformat.h')
1 files changed, 104 insertions, 0 deletions
diff --git a/src/Format/Tcformat.h b/src/Format/Tcformat.h
new file mode 100644
index 00000000..14512607
--- /dev/null
+++ b/src/Format/Tcformat.h
@@ -0,0 +1,104 @@
+ Legal Notice: Some portions of the source code contained in this file were
+ derived from the source code of Encryption for the Masses 2.02a, which is
+ Copyright (c) 1998-2000 Paul Le Roux and which is governed by the 'License
+ Agreement for Encryption for the Masses'. Modifications and additions to
+ the original source code (contained in this file) and all other portions
+ of this file are Copyright (c) 2003-2009 TrueCrypt Developers Association
+ and are governed by the TrueCrypt License 3.0 the full text of which is
+ contained in the file License.txt included in TrueCrypt binary and source
+ code distribution packages. */
+#include "Common/Common.h"
+#ifdef __cplusplus
+extern "C" {
+#define KEY_GUI_VIEW_SIZE 64 // Max characters of the key hex dump to display
+enum timer_ids
+static void localcleanup ( void );
+static void LoadSettings ( HWND hwndDlg );
+static void SaveSettings ( HWND hwndDlg );
+static void EndMainDlg ( HWND hwndDlg );
+void ComboSelChangeEA ( HWND hwndDlg );
+static void VerifySizeAndUpdate ( HWND hwndDlg , BOOL bUpdate );
+static void __cdecl sysEncDriveAnalysisThread (void *hwndDlgArg);
+static void __cdecl volTransformThreadFunction ( void *hwndDlg );
+static void LoadPage ( HWND hwndDlg , int nPageNo );
+int PrintFreeSpace ( HWND hwndTextBox , char *lpszDrive , PLARGE_INTEGER lDiskFree );
+void DisplaySizingErrorText ( HWND hwndTextBox );
+void EnableDisableFileNext ( HWND hComboBox , HWND hMainButton );
+BOOL QueryFreeSpace ( HWND hwndDlg , HWND hwndTextBox , BOOL display );
+static BOOL FinalPreTransformPrompts (void);
+void HandleOldAssignedDriveLetter (void);
+void AddCipher ( HWND hComboBox , char *lpszCipher , int nCipher );
+BOOL CALLBACK PageDialogProc ( HWND hwndDlg , UINT uMsg , WPARAM wParam , LPARAM lParam );
+BOOL CALLBACK MainDialogProc ( HWND hwndDlg , UINT uMsg , WPARAM wParam , LPARAM lParam );
+void ExtractCommandLine ( HWND hwndDlg , char *lpszCommandLine );
+void DisplayRandPool (HWND hPoolDisplay, BOOL bShow);
+void DisplayPortionsOfKeys (HWND headerKeyHandle, HWND masterKeyHandle, char *headerKeyStr, char *masterKeyStr, BOOL hideKeys);
+int DetermineMaxHiddenVolSize (HWND hwndDlg);
+BOOL IsSparseFile (HWND hwndDlg);
+BOOL GetFileVolSize (HWND hwndDlg, unsigned __int64 *size);
+BOOL SwitchWizardToSysEncMode (void);
+void SwitchWizardToFileContainerMode (void);
+static BOOL ResolveUnknownSysEncDirection (void);
+static BOOL WipeHiddenOSCreationConfig (void);
+static void AfterWMInitTasks (HWND hwndDlg);
+static void AfterSysEncProgressWMInitTasks (HWND hwndDlg);
+static void InitSysEncProgressBar (void);
+static void InitNonSysInplaceEncProgressBar (void);
+static void UpdateNonSysInplaceEncProgressBar (void);
+static BOOL SysEncInEffect (void);
+static BOOL CreatingHiddenSysVol(void);
+static void NonSysInplaceEncPause (void);
+static void NonSysInplaceEncResume (void);
+void ShowNonSysInPlaceEncUIStatus (void);
+void UpdateNonSysInPlaceEncControls (void);
+int MountHiddenVolHost ( HWND hwndDlg, char *volumePath, int *driveNo, Password *password, BOOL bReadOnly );
+int AnalyzeHiddenVolumeHost (HWND hwndDlg, int *driveNo, __int64 hiddenVolHostSize, int *realClusterSize, __int64 *pnbrFreeClusters);
+int ScanVolClusterBitmap ( HWND hwndDlg, int *driveNo, __int64 nbrClusters, __int64 *nbrFreeClusters);
+static void WipeStart (void);
+static void WipeAbort (void);
+static void UpdateWipeProgressBar (void);
+static void InitWipeProgressBar (void);
+static void UpdateWipeControls (void);
+static int GetFormatSectorSize ();
+extern BOOL showKeys;
+extern volatile HWND hMasterKey;
+extern volatile HWND hHeaderKey;
+extern volatile BOOL bHiddenVolHost;
+extern volatile BOOL bHiddenVolDirect;
+extern BOOL bRemovableHostDevice;
+extern BOOL bWarnDeviceFormatAdvanced;
+extern HWND hCurPage;
+extern HWND hProgressBar;
+extern volatile BOOL bVolTransformThreadCancel;
+extern volatile BOOL bInPlaceEncNonSysResumed;
+extern volatile BOOL bFirstNonSysInPlaceEncResumeDone;
+extern volatile BOOL bInPlaceEncNonSys;
+extern __int64 NonSysInplaceEncBytesDone;
+extern __int64 NonSysInplaceEncTotalSize;
+extern int nPbar;
+extern volatile int WizardMode;
+extern char HeaderKeyGUIView [KEY_GUI_VIEW_SIZE];
+extern char MasterKeyGUIView [KEY_GUI_VIEW_SIZE];
+extern volatile int NonSysInplaceEncStatus;
+#ifdef __cplusplus