2013-02-15 20:22:16 -08:00
|
|
|
#ifndef _SHA1_H_
|
|
|
|
#define _SHA1_H_
|
|
|
|
|
2016-03-04 15:00:12 -08:00
|
|
|
#include "athena/Types.hpp"
|
2013-07-20 20:57:20 -07:00
|
|
|
|
|
|
|
#ifndef __DOXYGEN_IGNORE__
|
2013-02-15 20:22:16 -08: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-18 20:24:56 -07:00
|
|
|
void SHA1Reset(SHA1Context*);
|
|
|
|
int SHA1Result(SHA1Context*);
|
|
|
|
void SHA1Input(SHA1Context*,
|
|
|
|
const unsigned char*,
|
|
|
|
unsigned);
|
2013-07-20 20:57:20 -07:00
|
|
|
|
|
|
|
|
2013-02-15 20:22:16 -08:00
|
|
|
|
2015-05-18 20:24:56 -07:00
|
|
|
atUint8* getSha1(atUint8* stuff, atUint32 stuff_size);
|
2013-02-15 20:22:16 -08:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2013-07-20 20:57:20 -07:00
|
|
|
#endif // __DOXYGEN_IGNORE__
|
2013-02-15 20:22:16 -08:00
|
|
|
#endif
|