Ruby: ext/digest/sha1/sha1.h Source File

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

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$ */
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];
18 uint32_t count[2];
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 int SHA1_Init _((SHA1_CTX *context));
32 void SHA1_Update _((SHA1_CTX *context, const uint8_t *data, size_t len));
33 int 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_ */
len
uint8_t len
Definition: escape.c:17
count
int count
Definition: nkf.c:5055
SHA1_Finish
#define SHA1_Finish
Definition: sha1.h:27
SHA1_Update
#define SHA1_Update
Definition: sha1.h:26
SHA1_Init
#define SHA1_Init
Definition: sha1.h:25
SHA1_Transform
#define SHA1_Transform
Definition: sha1.h:24
uint32_t
unsigned int uint32_t
Definition: sha2.h:101
uint8_t
unsigned char uint8_t
Definition: sha2.h:100
_
#define _(args)
Definition: stdarg.h:31
SHA1_CTX
Definition: sha1.h:16
state
Definition: blast.c:41