+++ /dev/null
-/**\r
- * \file sha1.h\r
- */\r
-#ifndef XYSSL_SHA1_H\r
-#define XYSSL_SHA1_H\r
-\r
-/**\r
- * \brief SHA-1 context structure\r
- */\r
-typedef struct\r
-{\r
- unsigned long total[2]; /*!< number of bytes processed */\r
- unsigned long state[5]; /*!< intermediate digest state */\r
- unsigned char buffer[64]; /*!< data block being processed */\r
-\r
- unsigned char ipad[64]; /*!< HMAC: inner padding */\r
- unsigned char opad[64]; /*!< HMAC: outer padding */\r
-}\r
-sha1_context;\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/**\r
- * \brief SHA-1 context setup\r
- *\r
- * \param ctx context to be initialized\r
- */\r
-void sha1_starts( sha1_context *ctx );\r
-\r
-/**\r
- * \brief SHA-1 process buffer\r
- *\r
- * \param ctx SHA-1 context\r
- * \param input buffer holding the data\r
- * \param ilen length of the input data\r
- */\r
-void sha1_update( sha1_context *ctx, unsigned char *input, int ilen );\r
-\r
-/**\r
- * \brief SHA-1 final digest\r
- *\r
- * \param ctx SHA-1 context\r
- * \param output SHA-1 checksum result\r
- */\r
-void sha1_finish( sha1_context *ctx, unsigned char output[20] );\r
-\r
-/**\r
- * \brief Output = SHA-1( input buffer )\r
- *\r
- * \param input buffer holding the data\r
- * \param ilen length of the input data\r
- * \param output SHA-1 checksum result\r
- */\r
-void sha1( unsigned char *input, int ilen, unsigned char output[20] );\r
-\r
-/**\r
- * \brief Output = SHA-1( file contents )\r
- *\r
- * \param path input file name\r
- * \param output SHA-1 checksum result\r
- *\r
- * \return 0 if successful, 1 if fopen failed,\r
- * or 2 if fread failed\r
- */\r
-int sha1_file( char *path, unsigned char output[20] );\r
-\r
-/**\r
- * \brief SHA-1 HMAC context setup\r
- *\r
- * \param ctx HMAC context to be initialized\r
- * \param key HMAC secret key\r
- * \param keylen length of the HMAC key\r
- */\r
-void sha1_hmac_starts( sha1_context *ctx, unsigned char *key, int keylen );\r
-\r
-/**\r
- * \brief SHA-1 HMAC process buffer\r
- *\r
- * \param ctx HMAC context\r
- * \param input buffer holding the data\r
- * \param ilen length of the input data\r
- */\r
-void sha1_hmac_update( sha1_context *ctx, unsigned char *input, int ilen );\r
-\r
-/**\r
- * \brief SHA-1 HMAC final digest\r
- *\r
- * \param ctx HMAC context\r
- * \param output SHA-1 HMAC checksum result\r
- */\r
-void sha1_hmac_finish( sha1_context *ctx, unsigned char output[20] );\r
-\r
-/**\r
- * \brief Output = HMAC-SHA-1( hmac key, input buffer )\r
- *\r
- * \param key HMAC secret key\r
- * \param keylen length of the HMAC key\r
- * \param input buffer holding the data\r
- * \param ilen length of the input data\r
- * \param output HMAC-SHA-1 result\r
- */\r
-void sha1_hmac( unsigned char *key, int keylen,\r
- unsigned char *input, int ilen,\r
- unsigned char output[20] );\r
-\r
-/**\r
- * \brief Checkup routine\r
- *\r
- * \return 0 if successful, or 1 if the test failed\r
- */\r
-int sha1_self_test( int verbose );\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-\r
-#endif /* sha1.h */\r