projects
/
oweals
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make sure strdup() is properly declared.
[oweals/openssl.git]
/
crypto
/
md32_common.h
diff --git
a/crypto/md32_common.h
b/crypto/md32_common.h
index 470a8c3e512175a27554a7dff288085049399f63..c169c9fe5de77c69f8516a1f826c7676ec53c4f4 100644
(file)
--- a/
crypto/md32_common.h
+++ b/
crypto/md32_common.h
@@
-179,15
+179,18
@@
*/
#undef ROTATE
#ifndef PEDANTIC
*/
#undef ROTATE
#ifndef PEDANTIC
-# if
defined(_MSC_VER)
+# if
0 /* defined(_MSC_VER) */
# define ROTATE(a,n) _lrotl(a,n)
# elif defined(__MWERKS__)
# define ROTATE(a,n) _lrotl(a,n)
# elif defined(__MWERKS__)
-# if
def __POWERPC__
+# if
defined(__POWERPC__)
# define ROTATE(a,n) __rlwinm(a,n,0,31)
# define ROTATE(a,n) __rlwinm(a,n,0,31)
+# elif defined(__MC68K__)
+ /* Motorola specific tweak. <appro@fy.chalmers.se> */
+# define ROTATE(a,n) ( n<24 ? __rol(a,n) : __ror(a,32-n) )
# else
# define ROTATE(a,n) __rol(a,n)
# endif
# else
# define ROTATE(a,n) __rol(a,n)
# endif
-# elif defined(__GNUC__) && __GNUC__>=2 && !defined(
NO
_ASM)
+# elif defined(__GNUC__) && __GNUC__>=2 && !defined(
OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE
_ASM)
/*
* Some GNU C inline assembler templates. Note that these are
* rotates by *constant* number of bits! But that's exactly
/*
* Some GNU C inline assembler templates. Note that these are
* rotates by *constant* number of bits! But that's exactly
@@
-197,16
+200,16
@@
*/
# if defined(__i386)
# define ROTATE(a,n) ({ register unsigned int ret; \
*/
# if defined(__i386)
# define ROTATE(a,n) ({ register unsigned int ret; \
- asm
volatile (
\
+ asm
(
\
"roll %1,%0" \
: "=r"(ret) \
: "I"(n), "0"(a) \
: "cc"); \
ret; \
})
"roll %1,%0" \
: "=r"(ret) \
: "I"(n), "0"(a) \
: "cc"); \
ret; \
})
-# elif defined(__powerpc)
+# elif defined(__powerpc)
|| defined(__ppc)
# define ROTATE(a,n) ({ register unsigned int ret; \
# define ROTATE(a,n) ({ register unsigned int ret; \
- asm
volatile (
\
+ asm
(
\
"rlwinm %0,%1,%2,0,31" \
: "=r"(ret) \
: "r"(a), "I"(n)); \
"rlwinm %0,%1,%2,0,31" \
: "=r"(ret) \
: "r"(a), "I"(n)); \
@@
-219,27
+222,27
@@
* Engage compiler specific "fetch in reverse byte order"
* intrinsic function if available.
*/
* Engage compiler specific "fetch in reverse byte order"
* intrinsic function if available.
*/
-# if defined(__GNUC__) && __GNUC__>=2 && !defined(
NO
_ASM)
+# if defined(__GNUC__) && __GNUC__>=2 && !defined(
OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE
_ASM)
/* some GNU C inline assembler templates by <appro@fy.chalmers.se> */
# if defined(__i386) && !defined(I386_ONLY)
# define BE_FETCH32(a) ({ register unsigned int l=(a);\
/* some GNU C inline assembler templates by <appro@fy.chalmers.se> */
# if defined(__i386) && !defined(I386_ONLY)
# define BE_FETCH32(a) ({ register unsigned int l=(a);\
- asm
volatile (
\
+ asm
(
\
"bswapl %0" \
: "=r"(l) : "0"(l)); \
l; \
})
# elif defined(__powerpc)
# define LE_FETCH32(a) ({ register unsigned int l; \
"bswapl %0" \
: "=r"(l) : "0"(l)); \
l; \
})
# elif defined(__powerpc)
# define LE_FETCH32(a) ({ register unsigned int l; \
- asm
volatile (
\
+ asm
(
\
"lwbrx %0,0,%1" \
: "=r"(l) \
: "r"(a)); \
l; \
})
"lwbrx %0,0,%1" \
: "=r"(l) \
: "r"(a)); \
l; \
})
-# elif defined(__sparc) && defined(ULTRASPARC)
+# elif defined(__sparc) && defined(
OPENSSL_SYS_
ULTRASPARC)
# define LE_FETCH32(a) ({ register unsigned int l; \
# define LE_FETCH32(a) ({ register unsigned int l; \
- asm
volatile (
\
+ asm
(
\
"lda [%1]#ASI_PRIMARY_LITTLE,%0"\
: "=r"(l) \
: "r"(a)); \
"lda [%1]#ASI_PRIMARY_LITTLE,%0"\
: "=r"(l) \
: "r"(a)); \
@@
-407,13
+410,14
@@
* Time for some action:-)
*/
* Time for some action:-)
*/
-
void HASH_UPDATE (HASH_CTX *c, const unsigned char *data
, unsigned long len)
+
int HASH_UPDATE (HASH_CTX *c, const void *data_
, unsigned long len)
{
{
+ const unsigned char *data=data_;
register HASH_LONG * p;
register unsigned long l;
int sw,sc,ew,ec;
register HASH_LONG * p;
register unsigned long l;
int sw,sc,ew,ec;
- if (len==0) return;
+ if (len==0) return
1
;
l=(c->Nl+(len<<3))&0xffffffffL;
/* 95-05-24 eay Fixed a bug with the overflow handling, thanks to
l=(c->Nl+(len<<3))&0xffffffffL;
/* 95-05-24 eay Fixed a bug with the overflow handling, thanks to
@@
-462,7
+466,7
@@
void HASH_UPDATE (HASH_CTX *c, const unsigned char *data, unsigned long len)
HOST_c2l_p(data,l,ec); p[sw]=l;
}
}
HOST_c2l_p(data,l,ec); p[sw]=l;
}
}
- return;
+ return
1
;
}
}
}
}
@@
-516,6
+520,7
@@
void HASH_UPDATE (HASH_CTX *c, const unsigned char *data, unsigned long len)
HOST_c2l_p(data,l,ec);
*p=l;
}
HOST_c2l_p(data,l,ec);
*p=l;
}
+ return 1;
}
}
@@
-539,7
+544,7
@@
void HASH_TRANSFORM (HASH_CTX *c, const unsigned char *data)
}
}
-
void
HASH_FINAL (unsigned char *md, HASH_CTX *c)
+
int
HASH_FINAL (unsigned char *md, HASH_CTX *c)
{
register HASH_LONG *p;
register unsigned long l;
{
register HASH_LONG *p;
register unsigned long l;
@@
-600,4
+605,5
@@
void HASH_FINAL (unsigned char *md, HASH_CTX *c)
* but I'm not worried :-)
memset((void *)c,0,sizeof(HASH_CTX));
*/
* but I'm not worried :-)
memset((void *)c,0,sizeof(HASH_CTX));
*/
+ return 1;
}
}