Browse Source

Merge branch 'fix/254' into release/1.18.0

This fixes #254
Steffen Jaeckel 8 years ago
parent
commit
44076e3815

+ 6 - 4
src/headers/tomcrypt_cfg.h

@@ -168,15 +168,17 @@ LTC_EXPORT int   LTC_CALL XSTRCMP(const char *s1, const char *s2);
 
 
 /* endianness fallback */
 /* endianness fallback */
 #if !defined(ENDIAN_BIG) && !defined(ENDIAN_LITTLE)
 #if !defined(ENDIAN_BIG) && !defined(ENDIAN_LITTLE)
-  #if defined(__BYTE_ORDER) && __BYTE_ORDER == __BIG_ENDIAN || \
+  #if defined(_BYTE_ORDER) && _BYTE_ORDER == _BIG_ENDIAN || \
+      defined(__BYTE_ORDER) && __BYTE_ORDER == __BIG_ENDIAN || \
       defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ || \
       defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ || \
-      defined(__BIG_ENDIAN__) || defined(_BIG_ENDIAN) || \
+      defined(__BIG_ENDIAN__) || \
       defined(__ARMEB__) || defined(__THUMBEB__) || defined(__AARCH64EB__) || \
       defined(__ARMEB__) || defined(__THUMBEB__) || defined(__AARCH64EB__) || \
       defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__)
       defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__)
     #define ENDIAN_BIG
     #define ENDIAN_BIG
-  #elif defined(__BYTE_ORDER) && __BYTE_ORDER == __LITTLE_ENDIAN || \
+  #elif defined(_BYTE_ORDER) && _BYTE_ORDER == _LITTLE_ENDIAN || \
+      defined(__BYTE_ORDER) && __BYTE_ORDER == __LITTLE_ENDIAN || \
       defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ || \
       defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ || \
-      defined(__LITTLE_ENDIAN__) || defined(_LITTLE_ENDIAN) || \
+      defined(__LITTLE_ENDIAN__) || \
       defined(__ARMEL__) || defined(__THUMBEL__) || defined(__AARCH64EL__) || \
       defined(__ARMEL__) || defined(__THUMBEL__) || defined(__AARCH64EL__) || \
       defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__)
       defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__)
     #define ENDIAN_LITTLE
     #define ENDIAN_LITTLE

+ 2 - 2
src/pk/asn1/der/sequence/der_decode_sequence_multi.c

@@ -39,7 +39,7 @@ int der_decode_sequence_multi(const unsigned char *in, unsigned long inlen, ...)
    va_start(args, inlen);
    va_start(args, inlen);
    x = 0;
    x = 0;
    for (;;) {
    for (;;) {
-       type = va_arg(args, ltc_asn1_type);
+       type = (ltc_asn1_type)va_arg(args, int);
        size = va_arg(args, unsigned long);
        size = va_arg(args, unsigned long);
        data = va_arg(args, void*);
        data = va_arg(args, void*);
        LTC_UNUSED_PARAM(size);
        LTC_UNUSED_PARAM(size);
@@ -94,7 +94,7 @@ int der_decode_sequence_multi(const unsigned char *in, unsigned long inlen, ...)
    va_start(args, inlen);
    va_start(args, inlen);
    x = 0;
    x = 0;
    for (;;) {
    for (;;) {
-       type = va_arg(args, ltc_asn1_type);
+       type = (ltc_asn1_type)va_arg(args, int);
        size = va_arg(args, unsigned long);
        size = va_arg(args, unsigned long);
        data = va_arg(args, void*);
        data = va_arg(args, void*);
 
 

+ 2 - 2
src/pk/asn1/der/sequence/der_encode_sequence_multi.c

@@ -40,7 +40,7 @@ int der_encode_sequence_multi(unsigned char *out, unsigned long *outlen, ...)
    va_start(args, outlen);
    va_start(args, outlen);
    x = 0;
    x = 0;
    for (;;) {
    for (;;) {
-       type = va_arg(args, ltc_asn1_type);
+       type = (ltc_asn1_type)va_arg(args, int);
        size = va_arg(args, unsigned long);
        size = va_arg(args, unsigned long);
        data = va_arg(args, void*);
        data = va_arg(args, void*);
        LTC_UNUSED_PARAM(size);
        LTC_UNUSED_PARAM(size);
@@ -95,7 +95,7 @@ int der_encode_sequence_multi(unsigned char *out, unsigned long *outlen, ...)
    va_start(args, outlen);
    va_start(args, outlen);
    x = 0;
    x = 0;
    for (;;) {
    for (;;) {
-       type = va_arg(args, ltc_asn1_type);
+       type = (ltc_asn1_type)va_arg(args, int);
        size = va_arg(args, unsigned long);
        size = va_arg(args, unsigned long);
        data = va_arg(args, void*);
        data = va_arg(args, void*);