Annotation of truecrypt/linux/cli/cli.h, revision 1.1

1.1     ! root        1: /* 
        !             2: Copyright (c) 2004-2006 TrueCrypt Foundation. All rights reserved. 
        !             3: 
        !             4: Covered by TrueCrypt License 2.1 the full text of which is contained in the file
        !             5: License.txt included in TrueCrypt binary and source code distribution archives. 
        !             6: */
        !             7: 
        !             8: #define TC_REQUIRED_MOUSE_EVENTS 5000
        !             9: #define TC_REQUIRED_KEYSTROKES RNG_POOL_SIZE
        !            10: 
        !            11: #define TC_MAX_VOLUMES 256
        !            12: #define TC_MAX_MINOR   256
        !            13: 
        !            14: #define TC_MAP_DEV "/dev/mapper/truecrypt"
        !            15: #define TC_LOOP_DEV "/dev/loop"
        !            16: #define TC_MICE_DEVICE "/dev/input/mice"
        !            17: #define TC_SHARE_KERNEL "/usr/share/truecrypt/kernel"
        !            18: 
        !            19: #ifdef TC_MAX_PATH
        !            20: #undef TC_MAX_PATH
        !            21: #endif
        !            22: #define TC_MAX_PATH 260
        !            23: #define TC_MAX_PATH_STR "259"
        !            24: 
        !            25: #define error(fmt, args...) fprintf (stderr, "truecrypt: " fmt, ## args)
        !            26: 
        !            27: typedef struct
        !            28: {
        !            29:        int DeviceNumber;
        !            30:        int DeviceMajor;
        !            31:        int DeviceMinor;
        !            32:        unsigned long long VolumeSize;
        !            33:        char VolumePath[TC_MAX_PATH];
        !            34:        int EA;
        !            35:        int Mode;
        !            36:        BOOL Hidden;
        !            37:        unsigned long long ReadOnlyStart;
        !            38:        unsigned long long ReadOnlyEnd;
        !            39:        unsigned long long ModTime;
        !            40:        unsigned long long AcTime;
        !            41:        int Flags;
        !            42: } MountListEntry;
        !            43: 
        !            44: static BOOL CheckAdminPrivileges ();
        !            45: static void DropEffectiveUserId ();
        !            46: static BOOL LockMemory ();
        !            47: static BOOL WaitChild (BOOL quiet, char *execName);
        !            48: static BOOL Execute (BOOL quiet, char *execName, ...);
        !            49: static BOOL IsFile (char *path);
        !            50: static BOOL IsBlockDevice (char *path);
        !            51: static BOOL RestoreFileTime (char *path, time_t modTime, time_t acTime);
        !            52: static BOOL LoadKernelModule ();
        !            53: static BOOL UnloadKernelModule (BOOL quiet);
        !            54: static BOOL CheckKernelModuleVersion (BOOL wait, BOOL quiet);
        !            55: static void OpenMiceDevice ();
        !            56: static BOOL GetMountList (BOOL force);
        !            57: static BOOL IsVolumeMounted (char *volumePath);
        !            58: static int GetFreeMapDevice ();
        !            59: static BOOL DeleteLoopDevice (int loopDeviceNo);
        !            60: static int AskSelection (int defaultChoice, int min, int max);
        !            61: static BOOL AskYesNo (char *prompt, BOOL defaultNo);
        !            62: static char *AskString (char *prompt, char *buf, int maxSize);
        !            63: static void AskPassword (char *prompt, char *volumePath, Password *password);
        !            64: static char *AskVolumePath (char *volumePath, char *prompt);
        !            65: static BOOL AskKeyFiles (char *prompt, KeyFile **firstKeyFile);
        !            66: static BOOL OpenVolume (char *volumePath, char *prompt, char *promptArg, BOOL secondaryPassword, PCRYPTO_INFO *cryptoInfo, unsigned long long *startSector, unsigned long long *totalSectors, time_t *modTime, time_t *acTime);
        !            67: static char *EscapeSpaces (char *string);
        !            68: static BOOL MountVolume (char *volumePath, char *mountPoint);
        !            69: static void HexDump (unsigned __int8 *data, unsigned int length);
        !            70: static uint64_t GetTimeUsec ();
        !            71: static double GetTime ();
        !            72: static BOOL RandFillPool ();
        !            73: static BOOL ParseSize (char *string, unsigned long long *size);
        !            74: static BOOL CreateVolume (char *hostPath);
        !            75: static BOOL ChangePassword (char *volumePath);
        !            76: static BOOL BackupVolumeHeaders (char *backupFile, char *volumePath);
        !            77: static BOOL RestoreVolumeHeader (char *backupFile, char *volumePath);
        !            78: static BOOL CreateKeyfile (char *path);
        !            79: static time_t WindowsFileTime2UnixTime (uint64_t wTime);
        !            80: static BOOL DumpVolumeProperties (char *volumePath);
        !            81: static void DumpVersion (FILE *f);
        !            82: static void DumpUsage (FILE *f);
        !            83: static void DumpHelp ();
        !            84: static BOOL DumpMountList (int devNo);
        !            85: static BOOL DismountFileSystem (char *device);
        !            86: static BOOL DismountVolume (int devNo);
        !            87: static BOOL ToDeviceNumber (char *text, int *deviceNumber);
        !            88: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.