|
|
1.1.1.3 root 1: /* The source code contained in this file has been derived from the source code
2: of Encryption for the Masses 2.02a by Paul Le Roux. Modifications and
1.1.1.5 ! root 3: additions to that source code contained in this file are Copyright (c) 2004-2005
1.1.1.4 root 4: TrueCrypt Foundation and Copyright (c) 2004 TrueCrypt Team. Unmodified
1.1.1.3 root 5: parts are Copyright (c) 1998-99 Paul Le Roux. This is a TrueCrypt Foundation
6: release. Please see the file license.txt for full license details. */
1.1 root 7:
1.1.1.5 ! root 8: #include "common.h"
! 9:
1.1.1.4 root 10: #define IDC_ABOUT 0x7fff /* ID for AboutBox on system menu in wm_user range */
11:
1.1.1.5 ! root 12: #define UNMOUNT_MAX_AUTO_RETRIES 5
! 13: #define UNMOUNT_AUTO_RETRY_DELAY 50
1.1 root 14:
15: extern char szHelpFile[TC_MAX_PATH];
16: extern HFONT hSmallFont;
17: extern HFONT hBoldFont;
18: extern HFONT hSmallBoldFont;
19: extern HFONT hTitleFont;
20: extern HFONT hFixedFont;
21: extern HFONT hUserFont;
22: extern HFONT hUserUnderlineFont;
23: extern HFONT hUserBoldFont;
24: extern char *lpszTitle;
25: extern int nCurrentOS;
26: extern int CurrentOSMajor;
27: extern int CurrentOSMinor;
28: extern HANDLE hDriver;
29: extern HINSTANCE hInst;
30:
31: #define WIN_95 0xa
32: #define WIN_98 0xb
33: #define WIN_NT 0xc
34:
35:
36: #define ICON_HAND MB_ICONHAND
37: #define YES_NO MB_YESNO
38:
39: #ifdef _UNICODE
40: #define WINMAIN wWinMain
41: #else
42: #define WINMAIN WinMain
43: #endif
44:
45: void cleanup ( void );
46: void LowerCaseCopy ( char *lpszDest , char *lpszSource );
47: void UpperCaseCopy ( char *lpszDest , char *lpszSource );
48: void CreateFullVolumePath ( char *lpszDiskFile , char *lpszFileName , BOOL *bDevice );
49: int FakeDosNameForDevice ( char *lpszDiskFile , char *lpszDosDevice , char *lpszCFDevice , BOOL bNameOnly );
50: int RemoveFakeDosName ( char *lpszDiskFile , char *lpszDosDevice );
51: char *getstr ( UINT nID );
52: char *getmultilinestr ( UINT nID [4 ]);
53: void AbortProcess ( UINT nID );
1.1.1.4 root 54: void AbortProcessSilent ( void );
1.1 root 55: void *err_malloc ( size_t size );
56: char *err_strdup ( char *lpszText );
1.1.1.4 root 57: DWORD handleWin32Error ( HWND hwndDlg );
1.1 root 58: BOOL translateWin32Error ( char *lpszMsgBuf , int nSizeOfBuf );
59: BOOL WINAPI AboutDlgProc ( HWND hwndDlg , UINT msg , WPARAM wParam , LPARAM lParam );
60: BOOL WINAPI WarningDlgProc ( HWND hwndDlg , UINT msg , WPARAM wParam , LPARAM lParam );
61: BOOL IsButtonChecked ( HWND hButton );
62: void CheckButton ( HWND hButton );
63: void ToSBCS ( LPWSTR lpszText );
64: void ToUNICODE ( char *lpszText );
65: void InitDialog ( HWND hwndDlg );
66: HDC CreateMemBitmap ( HINSTANCE hInstance , HWND hwnd , char *resource );
67: void PaintBitmap ( HDC pdcMem , int x , int y , int nWidth , int nHeight , HDC hDC );
68: LRESULT CALLBACK SplashDlgProc ( HWND hwnd , UINT uMsg , WPARAM wParam , LPARAM lParam );
69: void WaitCursor ( void );
70: void NormalCursor ( void );
71: void ArrowWaitCursor ( void );
72: LRESULT CALLBACK CustomDlgProc ( HWND hwnd , UINT uMsg , WPARAM wParam , LPARAM lParam );
73: void InitApp ( HINSTANCE hInstance );
74: BOOL OpenDevice ( char *lpszPath , OPEN_TEST_STRUCT *driver );
75: UINT _stdcall win9x_io ( HFILE hFile , char *lpBuffer , UINT uBytes );
76: int GetAvailableFixedDisks ( HWND hComboBox , char *lpszRootPath );
77: int GetAvailableRemovables ( HWND hComboBox , char *lpszRootPath );
78: BOOL WINAPI RawDevicesDlgProc ( HWND hwndDlg , UINT msg , WPARAM wParam , LPARAM lParam );
1.1.1.4 root 79: BOOL WINAPI BenchmarkDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
1.1.1.5 ! root 80: BOOL WINAPI MountOptionsDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
1.1 root 81: int DriverAttach ( void );
1.1.1.4 root 82: BOOL SeekHiddenVolHeader (HFILE dev, unsigned __int64 volSize, BOOL deviceFlag);
83: BOOL BrowseFiles ( HWND hwndDlg , UINT nTitleID , char *lpszFileName, BOOL keepHistory );
1.1 root 84: void handleError ( HWND hwndDlg , int code );
1.1.1.4 root 85: void SetDefaultUserFont (HWND hwnd);
86: void OpenVolumeExplorerWindow (int driveNo);
87: static BOOL CALLBACK CloseVolumeExplorerWindowsEnum( HWND hwnd, LPARAM driveNo);
88: BOOL CloseVolumeExplorerWindows (HWND hwnd, int driveNo);
89: BOOL CheckCapsLock (HWND hwnd, BOOL quiet);
90: int GetFirstAvailableDrive ();
91: int GetLastAvailableDrive ();
92: BOOL IsDriveAvailable (int driveNo);
93: int DriverUnmountVolume (HWND hwndDlg, int nDosDriveNo, BOOL forced);
1.1.1.5 ! root 94: void BroadcastDeviceChange (WPARAM message, int nDosDriveNo, DWORD driveMap);
! 95: int MountVolume (HWND hwndDlg, int driveNo, char *volumePath, char *szPassword, BOOL cachePassword, BOOL sharedAccess, MountOptions *mountOptions, BOOL quiet);
1.1.1.4 root 96: BOOL UnmountVolume (HWND hwndDlg , int nDosDriveNo, BOOL forceUnmount);
97: BOOL IsPasswordCacheEmpty (void);
98: BOOL IsMountedVolume (char *volname);
99: BOOL CheckPasswordLength (HWND hwndDlg, HWND hwndItem);
100: BOOL IsAdmin (void);
101: BOOL ResolveSymbolicLink (PWSTR symLinkName, PWSTR targetName);
102: int GetDiskDeviceDriveLetter (PWSTR deviceName);
103: HANDLE DismountDrive (int driveNo);
1.1.1.5 ! root 104: BOOL TCCopyFile (char *sourceFileName, char *destinationFile);
! 105: BOOL IsNonInstallMode ();
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.