summaryrefslogtreecommitdiffstats
path: root/contrib/wpa_supplicant/sha1.h
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2005-06-05 20:52:14 +0000
committersam <sam@FreeBSD.org>2005-06-05 20:52:14 +0000
commit2b0ba7bae5b60321ee7843871a2cf15ad6b3f65b (patch)
tree98be326632e2ea3857ee0d9f831c91ea0823bb0d /contrib/wpa_supplicant/sha1.h
downloadFreeBSD-src-2b0ba7bae5b60321ee7843871a2cf15ad6b3f65b.zip
FreeBSD-src-2b0ba7bae5b60321ee7843871a2cf15ad6b3f65b.tar.gz
Stripped down import of wpa_supplicant v0.3.8
Diffstat (limited to 'contrib/wpa_supplicant/sha1.h')
-rw-r--r--contrib/wpa_supplicant/sha1.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/contrib/wpa_supplicant/sha1.h b/contrib/wpa_supplicant/sha1.h
new file mode 100644
index 0000000..186e3c1
--- /dev/null
+++ b/contrib/wpa_supplicant/sha1.h
@@ -0,0 +1,50 @@
+#ifndef SHA1_H
+#define SHA1_H
+
+#ifdef EAP_TLS_FUNCS
+
+#include <openssl/sha.h>
+
+#define SHA1_CTX SHA_CTX
+#define SHA1Init SHA1_Init
+#define SHA1Update SHA1_Update
+#define SHA1Final SHA1_Final
+#define SHA1Transform SHA1_Transform
+#define SHA1_MAC_LEN SHA_DIGEST_LENGTH
+
+#else /* EAP_TLS_FUNCS */
+
+#define SHA1_MAC_LEN 20
+
+typedef struct {
+ u32 state[5];
+ u32 count[2];
+ unsigned char buffer[64];
+} SHA1_CTX;
+
+void SHA1Init(SHA1_CTX *context);
+void SHA1Update(SHA1_CTX *context, const void *data, u32 len);
+void SHA1Final(unsigned char digest[20], SHA1_CTX* context);
+void SHA1Transform(u32 state[5], const unsigned char buffer[64]);
+
+#endif /* EAP_TLS_FUNCS */
+
+void sha1_mac(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
+ u8 *mac);
+void hmac_sha1_vector(const u8 *key, size_t key_len, size_t num_elem,
+ const u8 *addr[], const size_t *len, u8 *mac);
+void hmac_sha1(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
+ u8 *mac);
+void sha1_prf(const u8 *key, size_t key_len, const char *label,
+ const u8 *data, size_t data_len, u8 *buf, size_t buf_len);
+void sha1_t_prf(const u8 *key, size_t key_len, const char *label,
+ const u8 *seed, size_t seed_len, u8 *buf, size_t buf_len);
+int tls_prf(const u8 *secret, size_t secret_len, const char *label,
+ const u8 *seed, size_t seed_len, u8 *out, size_t outlen);
+void pbkdf2_sha1(const char *passphrase, const char *ssid, size_t ssid_len,
+ int iterations, u8 *buf, size_t buflen);
+void sha1_transform(u8 *state, u8 data[64]);
+void sha1_vector(size_t num_elem, const u8 *addr[], const size_t *len,
+ u8 *mac);
+
+#endif /* SHA1_H */
OpenPOWER on IntegriCloud