summaryrefslogtreecommitdiffstats
path: root/include/sha1.h
diff options
context:
space:
mode:
authorPhilip Prindeville2017-09-05 11:19:26 +0200
committerKarel Zak2017-09-05 11:26:39 +0200
commit00476268870b01938800af9a5ca776695df13f5d (patch)
treeb9fabc95e52e620c5ff2ac0892947c785e8ad4d8 /include/sha1.h
parenttests: update sfdisk wipe test (diff)
downloadkernel-qcow2-util-linux-00476268870b01938800af9a5ca776695df13f5d.tar.gz
kernel-qcow2-util-linux-00476268870b01938800af9a5ca776695df13f5d.tar.xz
kernel-qcow2-util-linux-00476268870b01938800af9a5ca776695df13f5d.zip
libuuid: add support for hash-based UUIDs
Adding V3 and V5 UUIDs per RFC-4122. [kzak@redhat.com: - fix symbols file] Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com> Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'include/sha1.h')
-rw-r--r--include/sha1.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/include/sha1.h b/include/sha1.h
new file mode 100644
index 000000000..5c28bce92
--- /dev/null
+++ b/include/sha1.h
@@ -0,0 +1,46 @@
+#ifndef SHA1_H
+#define SHA1_H
+
+/*
+ SHA-1 in C
+ By Steve Reid <steve@edmweb.com>
+ 100% Public Domain
+ */
+
+#include "stdint.h"
+
+#define SHA1LENGTH 20
+
+typedef struct
+{
+ uint32_t state[5];
+ uint32_t count[2];
+ unsigned char buffer[64];
+} SHA1_CTX;
+
+void SHA1Transform(
+ uint32_t state[5],
+ const unsigned char buffer[64]
+ );
+
+void SHA1Init(
+ SHA1_CTX * context
+ );
+
+void SHA1Update(
+ SHA1_CTX * context,
+ const unsigned char *data,
+ uint32_t len
+ );
+
+void SHA1Final(
+ unsigned char digest[SHA1LENGTH],
+ SHA1_CTX * context
+ );
+
+void SHA1(
+ char *hash_out,
+ const char *str,
+ unsigned len);
+
+#endif /* SHA1_H */