Ruby  2.0.0p648(2015-12-16revision53162)
sha1.h
Go to the documentation of this file.
1 /* $NetBSD: sha1.h,v 1.2 1998/05/29 22:55:44 thorpej Exp $ */
2 /* $RoughId: sha1.h,v 1.3 2002/02/24 08:14:32 knu Exp $ */
3 /* $Id: sha1.h 27437 2010-04-22 08:04:13Z nobu $ */
4 
5 /*
6  * SHA-1 in C
7  * By Steve Reid <steve@edmweb.com>
8  * 100% Public Domain
9  */
10 
11 #ifndef _SYS_SHA1_H_
12 #define _SYS_SHA1_H_
13 
14 #include "defs.h"
15 
16 typedef struct {
17  uint32_t state[5];
19  uint8_t buffer[64];
20 } SHA1_CTX;
21 
22 #ifdef RUBY
23 /* avoid name clash */
24 #define SHA1_Transform rb_Digest_SHA1_Transform
25 #define SHA1_Init rb_Digest_SHA1_Init
26 #define SHA1_Update rb_Digest_SHA1_Update
27 #define SHA1_Finish rb_Digest_SHA1_Finish
28 #endif
29 
30 void SHA1_Transform _((uint32_t state[5], const uint8_t buffer[64]));
31 void SHA1_Init _((SHA1_CTX *context));
32 void SHA1_Update _((SHA1_CTX *context, const uint8_t *data, size_t len));
33 void SHA1_Finish _((SHA1_CTX *context, uint8_t digest[20]));
34 
35 #define SHA1_BLOCK_LENGTH 64
36 #define SHA1_DIGEST_LENGTH 20
37 #define SHA1_DIGEST_STRING_LENGTH (SHA1_DIGEST_LENGTH * 2 + 1)
38 
39 #endif /* _SYS_SHA1_H_ */
int count
Definition: encoding.c:51
#define SHA1_CTX
Definition: sha1ossl.h:9
void SHA1_Init(SHA1_CTX *context)
Definition: sha1.c:202
unsigned char uint8_t
Definition: sha2.h:100
void SHA1_Transform _((uint32_t state[5], const uint8_t buffer[64]))
void SHA1_Finish(SHA1_CTX *context, uint8_t digest[20])
Definition: sha1.c:247
Definition: sha1.h:16
unsigned int uint32_t
Definition: sha2.h:101
void SHA1_Update(SHA1_CTX *context, const uint8_t *data, size_t len)
Definition: sha1.c:220
void SHA1_Transform(uint32_t state[5], const uint8_t buffer[64])
Definition: sha1.c:132