| /* |
| * SHA-1 in C |
| * By Steve Reid <sreid@sea-to-sky.net> |
| * 100% Public Domain |
| * |
| */ |
| |
| // Ported to C++, Google style, under namespace rtc. |
| |
| #ifndef WEBRTC_RTC_BASE_SHA1_H_ |
| #define WEBRTC_RTC_BASE_SHA1_H_ |
| |
| #include <stdint.h> |
| #include <stdlib.h> |
| |
| namespace rtc { |
| |
| struct SHA1_CTX { |
| uint32_t state[5]; |
| // TODO: Change bit count to uint64_t. |
| uint32_t count[2]; // Bit count of input. |
| uint8_t buffer[64]; |
| }; |
| |
| #define SHA1_DIGEST_SIZE 20 |
| |
| void SHA1Init(SHA1_CTX* context); |
| void SHA1Update(SHA1_CTX* context, const uint8_t* data, size_t len); |
| void SHA1Final(SHA1_CTX* context, uint8_t digest[SHA1_DIGEST_SIZE]); |
| |
| } // namespace rtc |
| |
| #endif // WEBRTC_RTC_BASE_SHA1_H_ |