summaryrefslogtreecommitdiff
path: root/include/passwordcrypt.h
diff options
context:
space:
mode:
authorPeter Jones <pjones@redhat.com>2021-01-29 15:11:18 -0500
committerPeter Jones <pmjones@gmail.com>2021-01-29 18:24:57 -0500
commit0789f48d70b7593808f18dc4f1dbce2ca67df0f4 (patch)
treee8225c9aed99b2f73e573c80027b1a8b2e7509dc /include/passwordcrypt.h
parent5e3d9cd9985d700a871e329cea90721532888adf (diff)
downloadefi-boot-shim-0789f48d70b7593808f18dc4f1dbce2ca67df0f4.tar.gz
efi-boot-shim-0789f48d70b7593808f18dc4f1dbce2ca67df0f4.zip
Always use lower case for our local include file names.
clang-format doesn't allow you to specify an include sort order, and just assumes asciibetical is a pretty good order, which doesn't work as well as you would hope. This makes them all lower case so they don't need to be re-sorted. I also went through and checked that we're using quoted local includes at all the appropriate places. Signed-off-by: Peter Jones <pjones@redhat.com>
Diffstat (limited to 'include/passwordcrypt.h')
-rw-r--r--include/passwordcrypt.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/passwordcrypt.h b/include/passwordcrypt.h
new file mode 100644
index 00000000..cadad727
--- /dev/null
+++ b/include/passwordcrypt.h
@@ -0,0 +1,27 @@
+#ifndef SHIM_PASSWORDCRYPT_H
+#define SHIM_PASSWORDCRYPT_H
+
+enum HashMethod {
+ TRADITIONAL_DES = 0,
+ EXTEND_BSDI_DES,
+ MD5_BASED,
+ SHA256_BASED,
+ SHA512_BASED,
+ BLOWFISH_BASED
+};
+
+typedef struct {
+ UINT16 method;
+ UINT64 iter_count;
+ UINT16 salt_size;
+ UINT8 salt[32];
+ UINT8 hash[128];
+} __attribute__ ((packed)) PASSWORD_CRYPT;
+
+#define PASSWORD_CRYPT_SIZE sizeof(PASSWORD_CRYPT)
+
+EFI_STATUS password_crypt (const char *password, UINT32 pw_length,
+ const PASSWORD_CRYPT *pw_hash, UINT8 *hash);
+UINT16 get_hash_size (const UINT16 method);
+
+#endif /* SHIM_PASSWORDCRYPT_H */