1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-09 22:13:09 +02:00
openwrt-xburst/tools/firmware-utils/src/sha1.h
juhosg 15bb597645 [tools] firmware-utils/mkplanexfw: new firmware generation tool for the Planex MZK-W04NU device
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14410 3c298f89-4303-0410-b956-a3cf2f4a3e73
2009-02-04 21:09:06 +00:00

58 lines
954 B
C

#ifndef _SHA1_H
#define _SHA1_H
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _STD_TYPES
#define _STD_TYPES
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long int
#endif
typedef struct
{
ulong total[2];
ulong state[5];
uchar buffer[64];
}
sha1_context;
/*
* Core SHA-1 functions
*/
void sha1_starts( sha1_context *ctx );
void sha1_update( sha1_context *ctx, uchar *input, uint length );
void sha1_finish( sha1_context *ctx, uchar digest[20] );
/*
* Output SHA-1(file contents), returns 0 if successful.
*/
int sha1_file( char *filename, uchar digest[20] );
/*
* Output SHA-1(buf)
*/
void sha1_csum( uchar *buf, uint buflen, uchar digest[20] );
/*
* Output HMAC-SHA-1(key,buf)
*/
void sha1_hmac( uchar *key, uint keylen, uchar *buf, uint buflen,
uchar digest[20] );
/*
* Checkup routine
*/
int sha1_self_test( void );
#ifdef __cplusplus
}
#endif
#endif /* sha1.h */