Loading crypto/md32_common.h +10 −5 Original line number Diff line number Diff line Loading @@ -94,6 +94,8 @@ * in original (data) byte order, implemented externally (it * actually is optional if data and host are of the same * "endianess"). * HASH_MAKE_STRING * macro convering context variables to an ASCII hash string. * * Optional macros: * Loading Loading @@ -179,6 +181,8 @@ #ifndef PEDANTIC # if defined(_MSC_VER) # define ROTATE(a,n) _lrotl(a,n) # elif defined(__MWERKS__) # define ROTATE(a,n) __rol(a,n) # elif defined(__GNUC__) && __GNUC__>=2 && !defined(NO_ASM) /* * Some GNU C inline assembler templates. Note that these are Loading Loading @@ -581,10 +585,11 @@ void HASH_FINAL (unsigned char *md, HASH_CTX *c) #endif HASH_BLOCK_HOST_ORDER (c,p,1); l=c->A; HOST_l2c(l,md); l=c->B; HOST_l2c(l,md); l=c->C; HOST_l2c(l,md); l=c->D; HOST_l2c(l,md); #ifndef HASH_MAKE_STRING #error "HASH_MAKE_STRING must be defined!" #else HASH_MAKE_STRING(c,md); #endif c->num=0; /* clear stuff, HASH_BLOCK may be leaving some stuff on the stack Loading crypto/md5/md5_locl.h +9 −2 Original line number Diff line number Diff line Loading @@ -66,7 +66,7 @@ #endif #ifdef MD5_ASM # if defined(__i386) || defined(_M_IX86) # if defined(__i386) || defined(_M_IX86) || defined(__INTEL__) # define md5_block_host_order md5_block_asm_host_order # elif defined(__sparc) && defined(ULTRASPARC) void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,int num); Loading @@ -77,7 +77,7 @@ void md5_block_host_order (MD5_CTX *c, const void *p,int num); void md5_block_data_order (MD5_CTX *c, const void *p,int num); #if defined(__i386) || defined(_M_IX86) #if defined(__i386) || defined(_M_IX86) || defined(__INTEL__) /* * *_block_host_order is expected to handle aligned data while * *_block_data_order - unaligned. As algorithm and host (x86) Loading Loading @@ -112,6 +112,13 @@ void md5_block_data_order (MD5_CTX *c, const void *p,int num); #define HASH_UPDATE MD5_Update #define HASH_TRANSFORM MD5_Transform #define HASH_FINAL MD5_Final #define HASH_MAKE_STRING(c,s) do { \ unsigned long l; \ l=(c)->A; HOST_l2c(l,(s)); \ l=(c)->B; HOST_l2c(l,(s)); \ l=(c)->C; HOST_l2c(l,(s)); \ l=(c)->D; HOST_l2c(l,(s)); \ } while (0) #define HASH_BLOCK_HOST_ORDER md5_block_host_order #if !defined(L_ENDIAN) || defined(md5_block_data_order) #define HASH_BLOCK_DATA_ORDER md5_block_data_order Loading Loading
crypto/md32_common.h +10 −5 Original line number Diff line number Diff line Loading @@ -94,6 +94,8 @@ * in original (data) byte order, implemented externally (it * actually is optional if data and host are of the same * "endianess"). * HASH_MAKE_STRING * macro convering context variables to an ASCII hash string. * * Optional macros: * Loading Loading @@ -179,6 +181,8 @@ #ifndef PEDANTIC # if defined(_MSC_VER) # define ROTATE(a,n) _lrotl(a,n) # elif defined(__MWERKS__) # define ROTATE(a,n) __rol(a,n) # elif defined(__GNUC__) && __GNUC__>=2 && !defined(NO_ASM) /* * Some GNU C inline assembler templates. Note that these are Loading Loading @@ -581,10 +585,11 @@ void HASH_FINAL (unsigned char *md, HASH_CTX *c) #endif HASH_BLOCK_HOST_ORDER (c,p,1); l=c->A; HOST_l2c(l,md); l=c->B; HOST_l2c(l,md); l=c->C; HOST_l2c(l,md); l=c->D; HOST_l2c(l,md); #ifndef HASH_MAKE_STRING #error "HASH_MAKE_STRING must be defined!" #else HASH_MAKE_STRING(c,md); #endif c->num=0; /* clear stuff, HASH_BLOCK may be leaving some stuff on the stack Loading
crypto/md5/md5_locl.h +9 −2 Original line number Diff line number Diff line Loading @@ -66,7 +66,7 @@ #endif #ifdef MD5_ASM # if defined(__i386) || defined(_M_IX86) # if defined(__i386) || defined(_M_IX86) || defined(__INTEL__) # define md5_block_host_order md5_block_asm_host_order # elif defined(__sparc) && defined(ULTRASPARC) void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,int num); Loading @@ -77,7 +77,7 @@ void md5_block_host_order (MD5_CTX *c, const void *p,int num); void md5_block_data_order (MD5_CTX *c, const void *p,int num); #if defined(__i386) || defined(_M_IX86) #if defined(__i386) || defined(_M_IX86) || defined(__INTEL__) /* * *_block_host_order is expected to handle aligned data while * *_block_data_order - unaligned. As algorithm and host (x86) Loading Loading @@ -112,6 +112,13 @@ void md5_block_data_order (MD5_CTX *c, const void *p,int num); #define HASH_UPDATE MD5_Update #define HASH_TRANSFORM MD5_Transform #define HASH_FINAL MD5_Final #define HASH_MAKE_STRING(c,s) do { \ unsigned long l; \ l=(c)->A; HOST_l2c(l,(s)); \ l=(c)->B; HOST_l2c(l,(s)); \ l=(c)->C; HOST_l2c(l,(s)); \ l=(c)->D; HOST_l2c(l,(s)); \ } while (0) #define HASH_BLOCK_HOST_ORDER md5_block_host_order #if !defined(L_ENDIAN) || defined(md5_block_data_order) #define HASH_BLOCK_DATA_ORDER md5_block_data_order Loading