2013-02-16 04:22:16 +00:00
|
|
|
#ifndef _SHA1_H_
|
|
|
|
#define _SHA1_H_
|
|
|
|
|
2014-04-20 09:14:15 +00:00
|
|
|
#include "Athena/Types.hpp"
|
2013-07-21 03:57:20 +00:00
|
|
|
|
|
|
|
#ifndef __DOXYGEN_IGNORE__
|
2013-02-16 04:22:16 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/*
|
|
|
|
* This structure will hold context information for the hashing
|
|
|
|
* operation
|
|
|
|
*/
|
|
|
|
typedef struct SHA1Context
|
|
|
|
{
|
|
|
|
unsigned Message_Digest[5]; /* Message Digest (output) */
|
|
|
|
|
|
|
|
unsigned Length_Low; /* Message length in bits */
|
|
|
|
unsigned Length_High; /* Message length in bits */
|
|
|
|
|
|
|
|
unsigned char Message_Block[64]; /* 512-bit message blocks */
|
|
|
|
int Message_Block_Index; /* Index into message block array */
|
|
|
|
|
|
|
|
int Computed; /* Is the digest computed? */
|
|
|
|
int Corrupted; /* Is the message digest corruped? */
|
|
|
|
} SHA1Context;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Function Prototypes
|
|
|
|
*/
|
2015-05-19 03:24:56 +00:00
|
|
|
void SHA1Reset(SHA1Context*);
|
|
|
|
int SHA1Result(SHA1Context*);
|
|
|
|
void SHA1Input(SHA1Context*,
|
|
|
|
const unsigned char*,
|
|
|
|
unsigned);
|
2013-07-21 03:57:20 +00:00
|
|
|
|
|
|
|
|
2013-02-16 04:22:16 +00:00
|
|
|
|
2015-05-19 03:24:56 +00:00
|
|
|
atUint8* getSha1(atUint8* stuff, atUint32 stuff_size);
|
2013-02-16 04:22:16 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2013-07-21 03:57:20 +00:00
|
|
|
#endif // __DOXYGEN_IGNORE__
|
2013-02-16 04:22:16 +00:00
|
|
|
#endif
|