Index: core/fdrm/crypto/fx_crypt.h |
diff --git a/core/fdrm/crypto/fx_crypt.h b/core/fdrm/crypto/fx_crypt.h |
index fe043dcb127b569f625739c5a572c3e6b97c3d0d..a498f4e19ba32350ec83c5d79a53a88d5e781ba1 100644 |
--- a/core/fdrm/crypto/fx_crypt.h |
+++ b/core/fdrm/crypto/fx_crypt.h |
@@ -13,17 +13,37 @@ |
extern "C" { |
#endif |
-struct CRYPT_rc4_context { |
+typedef struct { |
int32_t x; |
int32_t y; |
int32_t m[256]; |
-}; |
+} CRYPT_rc4_context; |
-struct CRYPT_md5_context { |
+typedef struct { |
uint32_t total[2]; |
uint32_t state[4]; |
uint8_t buffer[64]; |
-}; |
+} CRYPT_md5_context; |
+ |
+typedef struct { |
+ unsigned int h[5]; |
+ unsigned char block[64]; |
+ int blkused; |
+ unsigned int lenhi; |
+ unsigned int lenlo; |
+} CRYPT_sha1_context; |
+ |
+typedef struct { |
+ uint32_t total[2]; |
+ uint32_t state[8]; |
+ uint8_t buffer[64]; |
+} CRYPT_sha256_context; |
+ |
+typedef struct { |
+ uint64_t total[2]; |
+ uint64_t state[8]; |
+ uint8_t buffer[128]; |
+} CRYPT_sha384_context; |
void CRYPT_ArcFourCryptBlock(uint8_t* data, |
uint32_t size, |
@@ -35,6 +55,7 @@ void CRYPT_ArcFourSetup(CRYPT_rc4_context* context, |
void CRYPT_ArcFourCrypt(CRYPT_rc4_context* context, |
uint8_t* data, |
uint32_t size); |
+ |
void CRYPT_AESSetKey(void* context, |
uint32_t blocklen, |
const uint8_t* key, |
@@ -49,28 +70,39 @@ void CRYPT_AESEncrypt(void* context, |
uint8_t* dest, |
const uint8_t* src, |
uint32_t size); |
-void CRYPT_MD5Generate(const uint8_t* data, uint32_t size, uint8_t digest[16]); |
+ |
void CRYPT_MD5Start(CRYPT_md5_context* context); |
void CRYPT_MD5Update(CRYPT_md5_context* context, |
const uint8_t* data, |
uint32_t size); |
void CRYPT_MD5Finish(CRYPT_md5_context* context, uint8_t digest[16]); |
+void CRYPT_MD5Generate(const uint8_t* data, uint32_t size, uint8_t digest[16]); |
+ |
+void CRYPT_SHA1Start(CRYPT_sha1_context* context); |
+void CRYPT_SHA1Update(CRYPT_sha1_context* context, |
+ const uint8_t* data, |
+ uint32_t size); |
+void CRYPT_SHA1Finish(CRYPT_sha1_context* context, uint8_t digest[20]); |
void CRYPT_SHA1Generate(const uint8_t* data, uint32_t size, uint8_t digest[20]); |
-void CRYPT_SHA1Start(void* context); |
-void CRYPT_SHA1Update(void* context, const uint8_t* data, uint32_t size); |
-void CRYPT_SHA1Finish(void* context, uint8_t digest[20]); |
+ |
+void CRYPT_SHA256Start(CRYPT_sha256_context* context); |
+void CRYPT_SHA256Update(CRYPT_sha256_context* context, |
+ const uint8_t* data, |
+ uint32_t size); |
+void CRYPT_SHA256Finish(CRYPT_sha256_context* context, uint8_t digest[32]); |
void CRYPT_SHA256Generate(const uint8_t* data, |
uint32_t size, |
uint8_t digest[32]); |
-void CRYPT_SHA256Start(void* context); |
-void CRYPT_SHA256Update(void* context, const uint8_t* data, uint32_t size); |
-void CRYPT_SHA256Finish(void* context, uint8_t digest[32]); |
-void CRYPT_SHA384Start(void* context); |
-void CRYPT_SHA384Update(void* context, const uint8_t* data, uint32_t size); |
-void CRYPT_SHA384Finish(void* context, uint8_t digest[48]); |
+ |
+void CRYPT_SHA384Start(CRYPT_sha384_context* context); |
+void CRYPT_SHA384Update(CRYPT_sha384_context* context, |
+ const uint8_t* data, |
+ uint32_t size); |
+void CRYPT_SHA384Finish(CRYPT_sha384_context* context, uint8_t digest[48]); |
void CRYPT_SHA384Generate(const uint8_t* data, |
uint32_t size, |
uint8_t digest[48]); |
+ |
void CRYPT_SHA512Start(void* context); |
void CRYPT_SHA512Update(void* context, const uint8_t* data, uint32_t size); |
void CRYPT_SHA512Finish(void* context, uint8_t digest[64]); |