Annotation of truecrypt/common/xts.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
                      3: 
                      4:  Governed by the TrueCrypt License 2.4 the full text of which is contained
                      5:  in the file License.txt included in TrueCrypt binary and source code
                      6:  distribution packages.
                      7: */
                      8: 
                      9: #ifndef XTS_H
                     10: #define XTS_H
                     11: 
                     12: // Header files (optional)
                     13: 
                     14: #include "Tcdefs.h"
                     15: #include "Common/Endian.h"
                     16: #include "Crypto.h"
                     17: 
                     18: // Macros
                     19: 
                     20: #ifndef LITTLE_ENDIAN
                     21: #      define LITTLE_ENDIAN    1
                     22: #endif
                     23: 
                     24: #ifndef BIG_ENDIAN
                     25: #      define BIG_ENDIAN               2
                     26: #endif
                     27: 
                     28: #ifndef BYTE_ORDER
                     29: #      define BYTE_ORDER               LITTLE_ENDIAN
                     30: #endif
                     31: 
                     32: #ifndef LE64
                     33: #      if BYTE_ORDER == LITTLE_ENDIAN
                     34: #              define LE64(x)  (x)
                     35: #      endif
                     36: #endif
                     37: 
                     38: // Custom data types
                     39: 
                     40: #ifndef TC_LARGEST_COMPILER_UINT
                     41: #      ifdef TC_NO_COMPILER_INT64
                     42:                typedef unsigned __int32        TC_LARGEST_COMPILER_UINT;
                     43: #      else
                     44:                typedef unsigned __int64        TC_LARGEST_COMPILER_UINT;
                     45: #      endif
                     46: #endif
                     47: 
                     48: #ifndef TCDEFS_H
                     49: typedef union 
                     50: {
                     51:        struct 
                     52:        {
                     53:                unsigned __int32 LowPart;
                     54:                unsigned __int32 HighPart;
                     55:        };
                     56: #      ifndef TC_NO_COMPILER_INT64
                     57:        unsigned __int64 Value;
                     58: #      endif
                     59: 
                     60: } UINT64_STRUCT;
                     61: #endif
                     62: 
                     63: // Public function prototypes
                     64: 
                     65: void EncryptBufferXTS (unsigned __int8 *buffer, TC_LARGEST_COMPILER_UINT length, const UINT64_STRUCT *startDataUnitNo, unsigned int startCipherBlockNo, unsigned __int8 *ks, unsigned __int8 *ks2, int cipher);
                     66: void DecryptBufferXTS (unsigned __int8 *buffer, TC_LARGEST_COMPILER_UINT length, const UINT64_STRUCT *startDataUnitNo, unsigned int startCipherBlockNo, unsigned __int8 *ks, unsigned __int8 *ks2, int cipher);
                     67: 
                     68: #endif // #ifndef XTS_H

unix.superglobalmegacorp.com

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