- Main Page
- Related Pages
- Data Structures
- Files

# md5.h

Go to the documentation of this file.

    00001
    00023 #ifndef POLARSSL_MD5_H
    00024 #define POLARSSL_MD5_H
    00025
    00029 typedef struct
    00030 {
    00031     unsigned long total[2];
    00032     unsigned long state[4];
    00033     unsigned char buffer[64];
    00035     unsigned char ipad[64];
    00036     unsigned char opad[64];
    00037 }
    00038 md5_context;
    00039
    00040 #ifdef __cplusplus
    00041 extern "C" {
    00042 #endif
    00043
    00049 void md5_starts( md5_context *ctx );
    00050
    00058 void md5_update( md5_context *ctx, unsigned char *input, int ilen );
    00059
    00066 void md5_finish( md5_context *ctx, unsigned char output[16] );
    00067
    00075 void md5( unsigned char *input, int ilen, unsigned char output[16] );
    00076
    00086 int md5_file( char *path, unsigned char output[16] );
    00087
    00095 void md5_hmac_starts( md5_context *ctx, unsigned char *key, int keylen );
    00096
    00104 void md5_hmac_update( md5_context *ctx, unsigned char *input, int ilen );
    00105
    00112 void md5_hmac_finish( md5_context *ctx, unsigned char output[16] );
    00113
    00123 void md5_hmac( unsigned char *key, int keylen,
    00124                unsigned char *input, int ilen,
    00125                unsigned char output[16] );
    00126
    00132 int md5_self_test( int verbose );
    00133
    00134 #ifdef __cplusplus
    00135 }
    00136 #endif
    00137
    00138 #endif /* md5.h */