Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
sha.h
Go to the documentation of this file.
1/*
2 * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License 2.0 (the "License"). You may not use
5 * this file except in compliance with the License. You can obtain a copy
6 * in the file LICENSE in the source distribution or at
7 * https://www.openssl.org/source/license.html
8 */
9
10
11#define OSSL_DEPRECATEDIN_3_0
12
13#ifndef OPENSSL_SHA_H
14# define OPENSSL_SHA_H
15# pragma once
16
17//# include <openssl/macros.h>
18# ifndef OPENSSL_NO_DEPRECATED_3_0
19# define HEADER_SHA_H
20# endif
21
22//# include <openssl/e_os2.h>
23# include <stddef.h>
24
25# ifdef __cplusplus
26extern "C" {
27# endif
28
29# define SHA_DIGEST_LENGTH 20
30
31# ifndef OPENSSL_NO_DEPRECATED_3_0
32/*-
33 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
34 * ! SHA_LONG has to be at least 32 bits wide. !
35 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
36 */
37# define SHA_LONG unsigned int
38
39# define SHA_LBLOCK 16
40# define SHA_CBLOCK (SHA_LBLOCK*4)/* SHA treats input data as a
41 * contiguous array of 32 bit wide
42 * big-endian values. */
43# define SHA_LAST_BLOCK (SHA_CBLOCK-8)
44
45typedef struct SHAstate_st {
46 SHA_LONG h0, h1, h2, h3, h4;
47 SHA_LONG Nl, Nh;
49 unsigned int num;
50} SHA_CTX;
51# endif /* !defined(OPENSSL_NO_DEPRECATED_3_0) */
52# ifndef OPENSSL_NO_DEPRECATED_3_0
55OSSL_DEPRECATEDIN_3_0 int SHA1_Final(unsigned char *md, SHA_CTX *c);
56OSSL_DEPRECATEDIN_3_0 unsigned char *SHA1(const unsigned char *d, size_t n,
57 unsigned char *md);
58OSSL_DEPRECATEDIN_3_0 void SHA1_Transform(SHA_CTX *c, const unsigned char *data);
59# endif
61# ifndef OPENSSL_NO_DEPRECATED_3_0
62# define SHA256_CBLOCK (SHA_LBLOCK*4)/* SHA-256 treats input data as a
63 * contiguous array of 32 bit wide
64 * big-endian values. */
65
66typedef struct SHA256state_st {
68 SHA_LONG Nl, Nh;
70 unsigned int num, md_len;
72# endif /* !defined(OPENSSL_NO_DEPRECATED_3_0) */
73# ifndef OPENSSL_NO_DEPRECATED_3_0
76 const void *data, size_t len);
78OSSL_DEPRECATEDIN_3_0 unsigned char *SHA224(const unsigned char *d, size_t n,
79 unsigned char *md);
82 const void *data, size_t len);
83OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c);
84OSSL_DEPRECATEDIN_3_0 unsigned char *SHA256(const unsigned char *d, size_t n,
85 unsigned char *md);
87 const unsigned char *data);
88# endif
90# define SHA224_DIGEST_LENGTH 28
91# define SHA256_DIGEST_LENGTH 32
92# define SHA384_DIGEST_LENGTH 48
93# define SHA512_DIGEST_LENGTH 64
94
95# ifndef OPENSSL_NO_DEPRECATED_3_0
96/*
97 * Unlike 32-bit digest algorithms, SHA-512 *relies* on SHA_LONG64
98 * being exactly 64-bit wide. See Implementation Notes in sha512.c
99 * for further details.
100 */
101/*
102 * SHA-512 treats input data as a
103 * contiguous array of 64 bit
104 * wide big-endian values.
105 */
106# define SHA512_CBLOCK (SHA_LBLOCK*8)
107# if (defined(_WIN32) || defined(_WIN64)) && !defined(__MINGW32__)
108# define SHA_LONG64 unsigned __int64
109# elif defined(__arch64__)
110# define SHA_LONG64 unsigned long
111# else
112# define SHA_LONG64 unsigned long long
113# endif
114
115typedef struct SHA512state_st {
116 SHA_LONG64 h[8];
118 union {
120 unsigned char p[SHA512_CBLOCK];
121 } u;
122 unsigned int num, md_len;
123} SHA512_CTX;
124# endif /* !defined(OPENSSL_NO_DEPRECATED_3_0) */
125# ifndef OPENSSL_NO_DEPRECATED_3_0
128 const void *data, size_t len);
129OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
130OSSL_DEPRECATEDIN_3_0 unsigned char *SHA384(const unsigned char *d, size_t n,
131 unsigned char *md);
134 const void *data, size_t len);
135OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c);
136OSSL_DEPRECATEDIN_3_0 unsigned char *SHA512(const unsigned char *d, size_t n,
137 unsigned char *md);
139 const unsigned char *data);
140# endif
141
142# ifdef __cplusplus
143}
144# endif
145
146#endif
Definition sha.h:62
unsigned int md_len
Definition sha.h:66
SHA_LONG Nh
Definition sha.h:64
unsigned int num
Definition sha.h:66
SHA_LONG Nl
Definition sha.h:64
SHA_LONG h[8]
Definition sha.h:63
Definition sha.h:111
unsigned int md_len
Definition sha.h:118
unsigned char p[SHA512_CBLOCK]
Definition sha.h:116
unsigned int num
Definition sha.h:118
SHA_LONG64 Nh
Definition sha.h:113
SHA_LONG64 d[SHA_LBLOCK]
Definition sha.h:115
SHA_LONG64 h[8]
Definition sha.h:112
union SHA512state_st::@36 u
SHA_LONG64 Nl
Definition sha.h:113
Definition sha.h:43
SHA_LONG Nh
Definition sha.h:45
unsigned int num
Definition sha.h:47
SHA_LONG h4
Definition sha.h:44
SHA_LONG h0
Definition sha.h:44
SHA_LONG Nl
Definition sha.h:45
SHA_LONG h3
Definition sha.h:44
SHA_LONG h1
Definition sha.h:44
SHA_LONG h2
Definition sha.h:44
Definition poolTests.c:28
OSSL_DEPRECATEDIN_3_0 unsigned char * SHA224(const unsigned char *d, size_t n, unsigned char *md)
OSSL_DEPRECATEDIN_3_0 int SHA1_Final(unsigned char *md, SHA_CTX *c)
OSSL_DEPRECATEDIN_3_0 int SHA224_Update(SHA256_CTX *c, const void *data, size_t len)
OSSL_DEPRECATEDIN_3_0 int SHA1_Init(SHA_CTX *c)
OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c)
OSSL_DEPRECATEDIN_3_0 unsigned char * SHA1(const unsigned char *d, size_t n, unsigned char *md)
struct SHA512state_st SHA512_CTX
struct SHAstate_st SHA_CTX
OSSL_DEPRECATEDIN_3_0 void SHA256_Transform(SHA256_CTX *c, const unsigned char *data)
OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_CTX *c)
OSSL_DEPRECATEDIN_3_0 int SHA224_Init(SHA256_CTX *c)
OSSL_DEPRECATEDIN_3_0 int SHA256_Update(SHA256_CTX *c, const void *data, size_t len)
OSSL_DEPRECATEDIN_3_0 int SHA1_Update(SHA_CTX *c, const void *data, size_t len)
struct SHA256state_st SHA256_CTX
OSSL_DEPRECATEDIN_3_0 unsigned char * SHA256(const unsigned char *d, size_t n, unsigned char *md)
#define OSSL_DEPRECATEDIN_3_0
Definition sha.h:11
OSSL_DEPRECATEDIN_3_0 int SHA224_Final(unsigned char *md, SHA256_CTX *c)
OSSL_DEPRECATEDIN_3_0 void SHA1_Transform(SHA_CTX *c, const unsigned char *data)
OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c)
Definition sha512_k.c:164
OSSL_DEPRECATEDIN_3_0 unsigned char * SHA384(const unsigned char *d, size_t n, unsigned char *md)
Definition sha512_k.c:373
OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c)
Definition sha512_k.c:187
OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c, const void *data, size_t len)
Definition sha512_k.c:359
OSSL_DEPRECATEDIN_3_0 unsigned char * SHA512(const unsigned char *d, size_t n, unsigned char *md)
Definition sha512_k.c:387
OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c)
Definition sha512_k.c:146
OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c)
Definition sha512_k.c:306
OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c, const void *data, size_t len)
Definition sha512_k.c:311
OSSL_DEPRECATEDIN_3_0 void SHA512_Transform(SHA512_CTX *c, const unsigned char *data)
Definition sha512_k.c:364
#define SHA_LONG
Definition sha.h:37
#define SHA_LONG64
Definition sha.h:108
#define SHA512_CBLOCK
Definition sha.h:102
#define SHA_LBLOCK
Definition sha.h:39
#define d(i)
Definition sha256.c:44
#define c(i)
Definition sha256.c:43
static uint32_t const uint8_t uint32_t len
Definition memcmplen.h:44