• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * SHA-1 in C
3  * By Steve Reid <sreid@sea-to-sky.net>
4  * 100% Public Domain
5  *
6 */
7 
8 // Ported to C++, Google style, under namespace rtc and uses basictypes.h
9 
10 #ifndef WEBRTC_BASE_SHA1_H_
11 #define WEBRTC_BASE_SHA1_H_
12 
13 #include "webrtc/base/basictypes.h"
14 
15 namespace rtc {
16 
17 struct SHA1_CTX {
18   uint32 state[5];
19   // TODO: Change bit count to uint64.
20   uint32 count[2];  // Bit count of input.
21   uint8 buffer[64];
22 };
23 
24 #define SHA1_DIGEST_SIZE 20
25 
26 void SHA1Init(SHA1_CTX* context);
27 void SHA1Update(SHA1_CTX* context, const uint8* data, size_t len);
28 void SHA1Final(SHA1_CTX* context, uint8 digest[SHA1_DIGEST_SIZE]);
29 
30 #endif  // WEBRTC_BASE_SHA1_H_
31 
32 }  // namespace rtc
33