VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Common/Crc.h
diff options
context:
space:
mode:
authorMounir IDRASSI <mounir.idrassi@idrix.fr>2013-06-22 14:16:13 (GMT)
committerMounir IDRASSI <mounir.idrassi@idrix.fr>2014-11-08 22:18:07 (GMT)
commitc606f0866c3a2a5db3ef9bc41738ef33eb9612a9 (patch)
tree5847c644cdfff3c1dd55b88b565448087ae89f11 /src/Common/Crc.h
downloadVeraCrypt-c606f0866c3a2a5db3ef9bc41738ef33eb9612a9.zip
VeraCrypt-c606f0866c3a2a5db3ef9bc41738ef33eb9612a9.tar.gz
Add original TrueCrypt 7.1a sources
Diffstat (limited to 'src/Common/Crc.h')
-rw-r--r--src/Common/Crc.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/Common/Crc.h b/src/Common/Crc.h
new file mode 100644
index 0000000..6b82040
--- /dev/null
+++ b/src/Common/Crc.h
@@ -0,0 +1,35 @@
+/*
+ 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-2008 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. */
+
+#ifndef TC_HEADER_CRC
+#define TC_HEADER_CRC
+
+#include "Tcdefs.h"
+
+#if defined(__cplusplus)
+extern "C"
+{
+#endif
+
+#define UPDC32(octet, crc)\
+ (unsigned __int32)((crc_32_tab[(((unsigned __int32)(crc)) ^ ((unsigned char)(octet))) & 0xff] ^ (((unsigned __int32)(crc)) >> 8)))
+
+unsigned __int32 GetCrc32 (unsigned char *data, int length);
+unsigned __int32 crc32int (unsigned __int32 *data);
+BOOL crc32_selftests (void);
+
+extern unsigned __int32 crc_32_tab[];
+
+#if defined(__cplusplus)
+}
+#endif
+
+#endif // TC_HEADER_CRC