summaryrefslogtreecommitdiffstats
path: root/common/sha512.h
diff options
context:
space:
mode:
authorDavid Sommerseth <dazo@users.sourceforge.net>2008-10-15 00:39:53 +0200
committerDavid Sommerseth <dazo@users.sourceforge.net>2008-10-15 00:39:53 +0200
commit0ea1a3e2e6a10300388e01ac89504abe3624ae56 (patch)
treefff59c70d4db431c2114e89d0819af8921aff463 /common/sha512.h
parentb65b0802ead5e863ca8cb41fff77528735a1466c (diff)
downloadeurephia-0ea1a3e2e6a10300388e01ac89504abe3624ae56.tar.gz
eurephia-0ea1a3e2e6a10300388e01ac89504abe3624ae56.tar.xz
eurephia-0ea1a3e2e6a10300388e01ac89504abe3624ae56.zip
Reorganised the source code
Moved all OpenVPN plug-in related things into ./plugins, including firewall Moved all shared code into ./common and moved the generic part of the database files into ./database Updated all CMakeLists.txt files and created a new one for the root directory
Diffstat (limited to 'common/sha512.h')
-rw-r--r--common/sha512.h72
1 files changed, 72 insertions, 0 deletions
diff --git a/common/sha512.h b/common/sha512.h
new file mode 100644
index 0000000..a6962c2
--- /dev/null
+++ b/common/sha512.h
@@ -0,0 +1,72 @@
+/*-
+ *
+ * This code is extracted from the SourceForce.net project found at:
+ *
+ * https://sourceforge.net/projects/sha/
+ *
+ *
+ * Copyright (c) 2001-2003 Allan Saddi <allan@saddi.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ALLAN SADDI AND HIS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL ALLAN SADDI OR HIS CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $Id: sha512.h 350 2003-02-23 22:12:33Z asaddi $
+ */
+
+#ifndef _SHA512_H
+#define _SHA512_H
+
+#include <stdint.h>
+
+#define SHA512_HASH_SIZE 64
+
+/* Hash size in 64-bit words */
+#define SHA512_HASH_WORDS 8
+
+struct _SHA512Context {
+ uint64_t totalLength[2];
+ uint64_t hash[SHA512_HASH_WORDS];
+ uint32_t bufferLength;
+ union {
+ uint64_t words[16];
+ uint8_t bytes[128];
+ } buffer;
+#ifdef RUNTIME_ENDIAN
+ int littleEndian;
+#endif /* RUNTIME_ENDIAN */
+};
+
+typedef struct _SHA512Context SHA512Context;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void SHA512Init (SHA512Context *sc);
+void SHA512Update (SHA512Context *sc, const void *data, uint32_t len);
+void SHA512Final (SHA512Context *sc, uint8_t hash[SHA512_HASH_SIZE]);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* !_SHA512_H */