22 lines
		
	
	
	
		
			712 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			712 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * SHA1 routine optimized to do word accesses rather than byte accesses,
 | |
|  * and to avoid unnecessary copies into the context array.
 | |
|  *
 | |
|  * This was initially based on the Mozilla SHA1 implementation, although
 | |
|  * none of the original Mozilla code remains.
 | |
|  */
 | |
| 
 | |
| typedef struct {
 | |
| 	unsigned long long size;
 | |
| 	unsigned int H[5];
 | |
| 	unsigned int W[16];
 | |
| } blk_SHA_CTX;
 | |
| 
 | |
| void blk_SHA1_Init(blk_SHA_CTX *ctx);
 | |
| void blk_SHA1_Update(blk_SHA_CTX *ctx, const void *dataIn, unsigned long len);
 | |
| void blk_SHA1_Final(unsigned char hashout[20], blk_SHA_CTX *ctx);
 | |
| 
 | |
| #define platform_SHA_CTX	blk_SHA_CTX
 | |
| #define platform_SHA1_Init	blk_SHA1_Init
 | |
| #define platform_SHA1_Update	blk_SHA1_Update
 | |
| #define platform_SHA1_Final	blk_SHA1_Final
 |