Fix up macros.
Macros need a healthy dose of parentheses to avoid expression-level
misparses. Most of this comes from the clang-tidy CL here:
https://android-review.googlesource.com/c/235696/
Also switch most of the macros to use do { ... } while (0) to avoid all
the excessive comma operators and statement-level misparses.
Change-Id: I4c2ee51e347d2aa8c74a2d82de63838b03bbb0f9
Reviewed-on: https://boringssl-review.googlesource.com/11660
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/asn1/tasn_utl.c b/crypto/asn1/tasn_utl.c
index 55037a1..d409cfa 100644
--- a/crypto/asn1/tasn_utl.c
+++ b/crypto/asn1/tasn_utl.c
@@ -70,7 +70,7 @@
/* Utility functions for manipulating fields and offsets */
/* Add 'offset' to 'addr' */
-#define offset2ptr(addr, offset) (void *)(((char *) addr) + offset)
+#define offset2ptr(addr, offset) (void *)(((char *)(addr)) + (offset))
/* Given an ASN1_ITEM CHOICE type return the selector value */
int asn1_get_choice_selector(ASN1_VALUE **pval, const ASN1_ITEM *it) {
diff --git a/crypto/bn/asm/x86_64-gcc.c b/crypto/bn/asm/x86_64-gcc.c
index 214c12a..177d335 100644
--- a/crypto/bn/asm/x86_64-gcc.c
+++ b/crypto/bn/asm/x86_64-gcc.c
@@ -80,7 +80,7 @@
: "+m"(r), "+d"(high) \
: "r"(carry), "g"(0) \
: "cc"); \
- carry = high; \
+ (carry) = high; \
} while (0)
#define mul(r, a, word, carry) \
@@ -91,7 +91,8 @@
: "+r"(carry), "+d"(high) \
: "a"(low), "g"(0) \
: "cc"); \
- (r) = carry, carry = high; \
+ (r) = (carry); \
+ (carry) = high; \
} while (0)
#undef sqr
#define sqr(r0, r1, a) asm("mulq %2" : "=a"(r0), "=d"(r1) : "a"(a) : "cc");
@@ -256,14 +257,14 @@
: "cc"); \
} while (0)
-#define sqr_add_c(a, i, c0, c1, c2) \
- do { \
- BN_ULONG t1, t2; \
- asm("mulq %2" : "=a"(t1), "=d"(t2) : "a"(a[i]) : "cc"); \
- asm("addq %3,%0; adcq %4,%1; adcq %5,%2" \
- : "+r"(c0), "+r"(c1), "+r"(c2) \
- : "r"(t1), "r"(t2), "g"(0) \
- : "cc"); \
+#define sqr_add_c(a, i, c0, c1, c2) \
+ do { \
+ BN_ULONG t1, t2; \
+ asm("mulq %2" : "=a"(t1), "=d"(t2) : "a"((a)[i]) : "cc"); \
+ asm("addq %3,%0; adcq %4,%1; adcq %5,%2" \
+ : "+r"(c0), "+r"(c1), "+r"(c2) \
+ : "r"(t1), "r"(t2), "g"(0) \
+ : "cc"); \
} while (0)
#define mul_add_c2(a, b, c0, c1, c2) \
diff --git a/crypto/bn/generic.c b/crypto/bn/generic.c
index f552d99..de77cc5 100644
--- a/crypto/bn/generic.c
+++ b/crypto/bn/generic.c
@@ -67,34 +67,34 @@
!(defined(OPENSSL_X86) || (defined(OPENSSL_X86_64) && defined(__GNUC__)))
#ifdef BN_ULLONG
-#define mul_add(r, a, w, c) \
- { \
- BN_ULLONG t; \
- t = (BN_ULLONG)w * (a) + (r) + (c); \
- (r) = Lw(t); \
- (c) = Hw(t); \
- }
+#define mul_add(r, a, w, c) \
+ do { \
+ BN_ULLONG t; \
+ t = (BN_ULLONG)(w) * (a) + (r) + (c); \
+ (r) = Lw(t); \
+ (c) = Hw(t); \
+ } while (0)
-#define mul(r, a, w, c) \
- { \
- BN_ULLONG t; \
- t = (BN_ULLONG)w * (a) + (c); \
- (r) = Lw(t); \
- (c) = Hw(t); \
- }
+#define mul(r, a, w, c) \
+ do { \
+ BN_ULLONG t; \
+ t = (BN_ULLONG)(w) * (a) + (c); \
+ (r) = Lw(t); \
+ (c) = Hw(t); \
+ } while (0)
#define sqr(r0, r1, a) \
- { \
+ do { \
BN_ULLONG t; \
t = (BN_ULLONG)(a) * (a); \
(r0) = Lw(t); \
(r1) = Hw(t); \
- }
+ } while (0)
#else
#define mul_add(r, a, w, c) \
- { \
+ do { \
BN_ULONG high, low, ret, tmp = (a); \
ret = (r); \
BN_UMULT_LOHI(low, high, w, tmp); \
@@ -104,23 +104,23 @@
ret += low; \
(c) += (ret < low) ? 1 : 0; \
(r) = ret; \
- }
+ } while (0)
#define mul(r, a, w, c) \
- { \
+ do { \
BN_ULONG high, low, ret, ta = (a); \
BN_UMULT_LOHI(low, high, w, ta); \
ret = low + (c); \
(c) = high; \
(c) += (ret < low) ? 1 : 0; \
(r) = ret; \
- }
+ } while (0)
#define sqr(r0, r1, a) \
- { \
+ do { \
BN_ULONG tmp = (a); \
BN_UMULT_LOHI(r0, r1, tmp, tmp); \
- }
+ } while (0)
#endif /* !BN_ULLONG */
@@ -369,42 +369,46 @@
do { \
BN_ULONG hi; \
BN_ULLONG t = (BN_ULLONG)(a) * (b); \
- t += c0; /* no carry */ \
- c0 = (BN_ULONG)Lw(t); \
+ t += (c0); /* no carry */ \
+ (c0) = (BN_ULONG)Lw(t); \
hi = (BN_ULONG)Hw(t); \
- c1 = (c1 + hi) & BN_MASK2; \
- if (c1 < hi) \
- c2++; \
+ (c1) = ((c1) + (hi)) & BN_MASK2; \
+ if ((c1) < hi) { \
+ (c2)++; \
+ } \
} while (0)
-#define mul_add_c2(a, b, c0, c1, c2) \
- do { \
- BN_ULONG hi; \
- BN_ULLONG t = (BN_ULLONG)(a) * (b); \
- BN_ULLONG tt = t + c0; /* no carry */ \
- c0 = (BN_ULONG)Lw(tt); \
- hi = (BN_ULONG)Hw(tt); \
- c1 = (c1 + hi) & BN_MASK2; \
- if (c1 < hi) \
- c2++; \
- t += c0; /* no carry */ \
- c0 = (BN_ULONG)Lw(t); \
- hi = (BN_ULONG)Hw(t); \
- c1 = (c1 + hi) & BN_MASK2; \
- if (c1 < hi) \
- c2++; \
+#define mul_add_c2(a, b, c0, c1, c2) \
+ do { \
+ BN_ULONG hi; \
+ BN_ULLONG t = (BN_ULLONG)(a) * (b); \
+ BN_ULLONG tt = t + (c0); /* no carry */ \
+ (c0) = (BN_ULONG)Lw(tt); \
+ hi = (BN_ULONG)Hw(tt); \
+ (c1) = ((c1) + hi) & BN_MASK2; \
+ if ((c1) < hi) { \
+ (c2)++; \
+ } \
+ t += (c0); /* no carry */ \
+ (c0) = (BN_ULONG)Lw(t); \
+ hi = (BN_ULONG)Hw(t); \
+ (c1) = ((c1) + hi) & BN_MASK2; \
+ if ((c1) < hi) { \
+ (c2)++; \
+ } \
} while (0)
-#define sqr_add_c(a, i, c0, c1, c2) \
- do { \
- BN_ULONG hi; \
- BN_ULLONG t = (BN_ULLONG)a[i] * a[i]; \
- t += c0; /* no carry */ \
- c0 = (BN_ULONG)Lw(t); \
- hi = (BN_ULONG)Hw(t); \
- c1 = (c1 + hi) & BN_MASK2; \
- if (c1 < hi) \
- c2++; \
+#define sqr_add_c(a, i, c0, c1, c2) \
+ do { \
+ BN_ULONG hi; \
+ BN_ULLONG t = (BN_ULLONG)(a)[i] * (a)[i]; \
+ t += (c0); /* no carry */ \
+ (c0) = (BN_ULONG)Lw(t); \
+ hi = (BN_ULONG)Hw(t); \
+ (c1) = ((c1) + hi) & BN_MASK2; \
+ if ((c1) < hi) { \
+ (c2)++; \
+ } \
} while (0)
#define sqr_add_c2(a, i, j, c0, c1, c2) mul_add_c2((a)[i], (a)[j], c0, c1, c2)
@@ -418,10 +422,10 @@
BN_ULONG ta = (a), tb = (b); \
BN_ULONG lo, hi; \
BN_UMULT_LOHI(lo, hi, ta, tb); \
- c0 += lo; \
- hi += (c0 < lo) ? 1 : 0; \
- c1 += hi; \
- c2 += (c1 < hi) ? 1 : 0; \
+ (c0) += lo; \
+ hi += ((c0) < lo) ? 1 : 0; \
+ (c1) += hi; \
+ (c2) += ((c1) < hi) ? 1 : 0; \
} while (0)
#define mul_add_c2(a, b, c0, c1, c2) \
@@ -429,14 +433,14 @@
BN_ULONG ta = (a), tb = (b); \
BN_ULONG lo, hi, tt; \
BN_UMULT_LOHI(lo, hi, ta, tb); \
- c0 += lo; \
- tt = hi + ((c0 < lo) ? 1 : 0); \
- c1 += tt; \
- c2 += (c1 < tt) ? 1 : 0; \
- c0 += lo; \
+ (c0) += lo; \
+ tt = hi + (((c0) < lo) ? 1 : 0); \
+ (c1) += tt; \
+ (c2) += ((c1) < tt) ? 1 : 0; \
+ (c0) += lo; \
hi += (c0 < lo) ? 1 : 0; \
- c1 += hi; \
- c2 += (c1 < hi) ? 1 : 0; \
+ (c1) += hi; \
+ (c2) += ((c1) < hi) ? 1 : 0; \
} while (0)
#define sqr_add_c(a, i, c0, c1, c2) \
@@ -444,10 +448,10 @@
BN_ULONG ta = (a)[i]; \
BN_ULONG lo, hi; \
BN_UMULT_LOHI(lo, hi, ta, ta); \
- c0 += lo; \
+ (c0) += lo; \
hi += (c0 < lo) ? 1 : 0; \
- c1 += hi; \
- c2 += (c1 < hi) ? 1 : 0; \
+ (c1) += hi; \
+ (c2) += ((c1) < hi) ? 1 : 0; \
} while (0)
#define sqr_add_c2(a, i, j, c0, c1, c2) mul_add_c2((a)[i], (a)[j], c0, c1, c2)
diff --git a/crypto/bn/internal.h b/crypto/bn/internal.h
index aafd175..99fc306 100644
--- a/crypto/bn/internal.h
+++ b/crypto/bn/internal.h
@@ -188,10 +188,10 @@
#endif
-#define STATIC_BIGNUM(x) \
- { \
- (BN_ULONG *)x, sizeof(x) / sizeof(BN_ULONG), \
- sizeof(x) / sizeof(BN_ULONG), 0, BN_FLG_STATIC_DATA \
+#define STATIC_BIGNUM(x) \
+ { \
+ (BN_ULONG *)(x), sizeof(x) / sizeof(BN_ULONG), \
+ sizeof(x) / sizeof(BN_ULONG), 0, BN_FLG_STATIC_DATA \
}
#if defined(BN_ULLONG)
diff --git a/crypto/cipher/e_rc2.c b/crypto/cipher/e_rc2.c
index 67418d5..e1b4301 100644
--- a/crypto/cipher/e_rc2.c
+++ b/crypto/cipher/e_rc2.c
@@ -60,63 +60,68 @@
#include "internal.h"
-#define c2l(c, l) \
- (l = ((uint32_t)(*((c)++))), l |= ((uint32_t)(*((c)++))) << 8L, \
- l |= ((uint32_t)(*((c)++))) << 16L, \
- l |= ((uint32_t)(*((c)++))) << 24L)
+#define c2l(c, l) \
+ do { \
+ (l) = ((uint32_t)(*((c)++))); \
+ (l) |= ((uint32_t)(*((c)++))) << 8L; \
+ (l) |= ((uint32_t)(*((c)++))) << 16L; \
+ (l) |= ((uint32_t)(*((c)++))) << 24L; \
+ } while (0)
-#define c2ln(c, l1, l2, n) \
- { \
- c += n; \
- l1 = l2 = 0; \
- switch (n) { \
- case 8: \
- l2 = ((uint32_t)(*(--(c)))) << 24L; \
- case 7: \
- l2 |= ((uint32_t)(*(--(c)))) << 16L; \
- case 6: \
- l2 |= ((uint32_t)(*(--(c)))) << 8L; \
- case 5: \
- l2 |= ((uint32_t)(*(--(c)))); \
- case 4: \
- l1 = ((uint32_t)(*(--(c)))) << 24L; \
- case 3: \
- l1 |= ((uint32_t)(*(--(c)))) << 16L; \
- case 2: \
- l1 |= ((uint32_t)(*(--(c)))) << 8L; \
- case 1: \
- l1 |= ((uint32_t)(*(--(c)))); \
- } \
- }
+#define c2ln(c, l1, l2, n) \
+ do { \
+ (c) += (n); \
+ (l1) = (l2) = 0; \
+ switch (n) { \
+ case 8: \
+ (l2) = ((uint32_t)(*(--(c)))) << 24L; \
+ case 7: \
+ (l2) |= ((uint32_t)(*(--(c)))) << 16L; \
+ case 6: \
+ (l2) |= ((uint32_t)(*(--(c)))) << 8L; \
+ case 5: \
+ (l2) |= ((uint32_t)(*(--(c)))); \
+ case 4: \
+ (l1) = ((uint32_t)(*(--(c)))) << 24L; \
+ case 3: \
+ (l1) |= ((uint32_t)(*(--(c)))) << 16L; \
+ case 2: \
+ (l1) |= ((uint32_t)(*(--(c)))) << 8L; \
+ case 1: \
+ (l1) |= ((uint32_t)(*(--(c)))); \
+ } \
+ } while (0)
-#define l2c(l, c) \
- (*((c)++) = (uint8_t)(((l)) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 8L) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 16L) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 24L) & 0xff))
+#define l2c(l, c) \
+ do { \
+ *((c)++) = (uint8_t)(((l)) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 8L) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 16L) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 24L) & 0xff); \
+ } while (0)
-#define l2cn(l1, l2, c, n) \
- { \
- c += n; \
- switch (n) { \
- case 8: \
+#define l2cn(l1, l2, c, n) \
+ do { \
+ (c) += (n); \
+ switch (n) { \
+ case 8: \
*(--(c)) = (uint8_t)(((l2) >> 24L) & 0xff); \
- case 7: \
+ case 7: \
*(--(c)) = (uint8_t)(((l2) >> 16L) & 0xff); \
- case 6: \
+ case 6: \
*(--(c)) = (uint8_t)(((l2) >> 8L) & 0xff); \
- case 5: \
+ case 5: \
*(--(c)) = (uint8_t)(((l2)) & 0xff); \
- case 4: \
+ case 4: \
*(--(c)) = (uint8_t)(((l1) >> 24L) & 0xff); \
- case 3: \
+ case 3: \
*(--(c)) = (uint8_t)(((l1) >> 16L) & 0xff); \
- case 2: \
+ case 2: \
*(--(c)) = (uint8_t)(((l1) >> 8L) & 0xff); \
- case 1: \
+ case 1: \
*(--(c)) = (uint8_t)(((l1)) & 0xff); \
- } \
- }
+ } \
+ } while (0)
typedef struct rc2_key_st { uint16_t data[64]; } RC2_KEY;
diff --git a/crypto/cipher/tls_cbc.c b/crypto/cipher/tls_cbc.c
index 02d6745..dd6ab8c 100644
--- a/crypto/cipher/tls_cbc.c
+++ b/crypto/cipher/tls_cbc.c
@@ -264,23 +264,27 @@
/* u32toBE serialises an unsigned, 32-bit number (n) as four bytes at (p) in
* big-endian order. The value of p is advanced by four. */
-#define u32toBE(n, p) \
- (*((p)++)=(uint8_t)(n>>24), \
- *((p)++)=(uint8_t)(n>>16), \
- *((p)++)=(uint8_t)(n>>8), \
- *((p)++)=(uint8_t)(n))
+#define u32toBE(n, p) \
+ do { \
+ *((p)++) = (uint8_t)((n) >> 24); \
+ *((p)++) = (uint8_t)((n) >> 16); \
+ *((p)++) = (uint8_t)((n) >> 8); \
+ *((p)++) = (uint8_t)((n)); \
+ } while (0)
/* u64toBE serialises an unsigned, 64-bit number (n) as eight bytes at (p) in
* big-endian order. The value of p is advanced by eight. */
-#define u64toBE(n, p) \
- (*((p)++)=(uint8_t)(n>>56), \
- *((p)++)=(uint8_t)(n>>48), \
- *((p)++)=(uint8_t)(n>>40), \
- *((p)++)=(uint8_t)(n>>32), \
- *((p)++)=(uint8_t)(n>>24), \
- *((p)++)=(uint8_t)(n>>16), \
- *((p)++)=(uint8_t)(n>>8), \
- *((p)++)=(uint8_t)(n))
+#define u64toBE(n, p) \
+ do { \
+ *((p)++) = (uint8_t)((n) >> 56); \
+ *((p)++) = (uint8_t)((n) >> 48); \
+ *((p)++) = (uint8_t)((n) >> 40); \
+ *((p)++) = (uint8_t)((n) >> 32); \
+ *((p)++) = (uint8_t)((n) >> 24); \
+ *((p)++) = (uint8_t)((n) >> 16); \
+ *((p)++) = (uint8_t)((n) >> 8); \
+ *((p)++) = (uint8_t)((n)); \
+ } while (0)
/* These functions serialize the state of a hash and thus perform the standard
* "final" operation without adding the padding and length that such a function
diff --git a/crypto/des/des.c b/crypto/des/des.c
index 1d27ebe..cada7d1 100644
--- a/crypto/des/des.c
+++ b/crypto/des/des.c
@@ -291,7 +291,7 @@
#define HPERM_OP(a, t, n, m) \
((t) = ((((a) << (16 - (n))) ^ (a)) & (m)), \
- (a) = (a) ^ (t) ^ (t >> (16 - (n))))
+ (a) = (a) ^ (t) ^ ((t) >> (16 - (n))))
void DES_set_key(const DES_cblock *key, DES_key_schedule *schedule) {
static const int shifts2[16] = {0, 0, 1, 1, 1, 1, 1, 1,
diff --git a/crypto/des/internal.h b/crypto/des/internal.h
index 00b4558..21eb933 100644
--- a/crypto/des/internal.h
+++ b/crypto/des/internal.h
@@ -64,45 +64,51 @@
#endif
-#define c2l(c, l) \
- (l = ((uint32_t)(*((c)++))), l |= ((uint32_t)(*((c)++))) << 8L, \
- l |= ((uint32_t)(*((c)++))) << 16L, l |= ((uint32_t)(*((c)++))) << 24L)
+#define c2l(c, l) \
+ do { \
+ (l) = ((uint32_t)(*((c)++))); \
+ (l) |= ((uint32_t)(*((c)++))) << 8L; \
+ (l) |= ((uint32_t)(*((c)++))) << 16L; \
+ (l) |= ((uint32_t)(*((c)++))) << 24L; \
+ } while (0)
-#define l2c(l, c) \
- (*((c)++) = (unsigned char)(((l)) & 0xff), \
- *((c)++) = (unsigned char)(((l) >> 8L) & 0xff), \
- *((c)++) = (unsigned char)(((l) >> 16L) & 0xff), \
- *((c)++) = (unsigned char)(((l) >> 24L) & 0xff))
+#define l2c(l, c) \
+ do { \
+ *((c)++) = (unsigned char)(((l)) & 0xff); \
+ *((c)++) = (unsigned char)(((l) >> 8L) & 0xff); \
+ *((c)++) = (unsigned char)(((l) >> 16L) & 0xff); \
+ *((c)++) = (unsigned char)(((l) >> 24L) & 0xff); \
+ } while (0)
/* NOTE - c is not incremented as per c2l */
-#define c2ln(c, l1, l2, n) \
- { \
- c += n; \
- l1 = l2 = 0; \
- switch (n) { \
- case 8: \
- l2 = ((uint32_t)(*(--(c)))) << 24L; \
- case 7: \
- l2 |= ((uint32_t)(*(--(c)))) << 16L; \
- case 6: \
- l2 |= ((uint32_t)(*(--(c)))) << 8L; \
- case 5: \
- l2 |= ((uint32_t)(*(--(c)))); \
- case 4: \
- l1 = ((uint32_t)(*(--(c)))) << 24L; \
- case 3: \
- l1 |= ((uint32_t)(*(--(c)))) << 16L; \
- case 2: \
- l1 |= ((uint32_t)(*(--(c)))) << 8L; \
- case 1: \
- l1 |= ((uint32_t)(*(--(c)))); \
- } \
- }
+#define c2ln(c, l1, l2, n) \
+ do { \
+ (c) += (n); \
+ (l1) = (l2) = 0; \
+ switch (n) { \
+ case 8: \
+ (l2) = ((uint32_t)(*(--(c)))) << 24L; \
+ case 7: \
+ (l2) |= ((uint32_t)(*(--(c)))) << 16L; \
+ case 6: \
+ (l2) |= ((uint32_t)(*(--(c)))) << 8L; \
+ case 5: \
+ (l2) |= ((uint32_t)(*(--(c)))); \
+ case 4: \
+ (l1) = ((uint32_t)(*(--(c)))) << 24L; \
+ case 3: \
+ (l1) |= ((uint32_t)(*(--(c)))) << 16L; \
+ case 2: \
+ (l1) |= ((uint32_t)(*(--(c)))) << 8L; \
+ case 1: \
+ (l1) |= ((uint32_t)(*(--(c)))); \
+ } \
+ } while (0)
/* NOTE - c is not incremented as per l2c */
#define l2cn(l1, l2, c, n) \
- { \
- c += n; \
+ do { \
+ (c) += (n); \
switch (n) { \
case 8: \
*(--(c)) = (unsigned char)(((l2) >> 24L) & 0xff); \
@@ -121,7 +127,7 @@
case 1: \
*(--(c)) = (unsigned char)(((l1)) & 0xff); \
} \
- }
+ } while (0)
/* IP and FP
* The problem is more of a geometric problem that random bit fiddling.
@@ -160,44 +166,50 @@
I first got ~42 operations without xors. When I remembered
how to use xors :-) I got it to its final state.
*/
-#define PERM_OP(a, b, t, n, m) \
- ((t) = ((((a) >> (n)) ^ (b)) & (m)), (b) ^= (t), (a) ^= ((t) << (n)))
+#define PERM_OP(a, b, t, n, m) \
+ do { \
+ (t) = ((((a) >> (n)) ^ (b)) & (m)); \
+ (b) ^= (t); \
+ (a) ^= ((t) << (n)); \
+ } while (0)
#define IP(l, r) \
- { \
+ do { \
uint32_t tt; \
PERM_OP(r, l, tt, 4, 0x0f0f0f0fL); \
PERM_OP(l, r, tt, 16, 0x0000ffffL); \
PERM_OP(r, l, tt, 2, 0x33333333L); \
PERM_OP(l, r, tt, 8, 0x00ff00ffL); \
PERM_OP(r, l, tt, 1, 0x55555555L); \
- }
+ } while (0)
#define FP(l, r) \
- { \
+ do { \
uint32_t tt; \
PERM_OP(l, r, tt, 1, 0x55555555L); \
PERM_OP(r, l, tt, 8, 0x00ff00ffL); \
PERM_OP(l, r, tt, 2, 0x33333333L); \
PERM_OP(r, l, tt, 16, 0x0000ffffL); \
PERM_OP(l, r, tt, 4, 0x0f0f0f0fL); \
- }
+ } while (0)
#define LOAD_DATA(ks, R, S, u, t, E0, E1) \
- u = R ^ ks->subkeys[S][0]; \
- t = R ^ ks->subkeys[S][1]
+ do { \
+ (u) = (R) ^ (ks)->subkeys[S][0]; \
+ (t) = (R) ^ (ks)->subkeys[S][1]; \
+ } while (0)
#define D_ENCRYPT(ks, LL, R, S) \
- { \
+ do { \
LOAD_DATA(ks, R, S, u, t, E0, E1); \
t = ROTATE(t, 4); \
- LL ^= \
+ (LL) ^= \
DES_SPtrans[0][(u >> 2L) & 0x3f] ^ DES_SPtrans[2][(u >> 10L) & 0x3f] ^ \
DES_SPtrans[4][(u >> 18L) & 0x3f] ^ \
DES_SPtrans[6][(u >> 26L) & 0x3f] ^ DES_SPtrans[1][(t >> 2L) & 0x3f] ^ \
DES_SPtrans[3][(t >> 10L) & 0x3f] ^ \
DES_SPtrans[5][(t >> 18L) & 0x3f] ^ DES_SPtrans[7][(t >> 26L) & 0x3f]; \
- }
+ } while (0)
#define ITERATIONS 16
#define HALF_ITERATIONS 8
diff --git a/crypto/digest/md32_common.h b/crypto/digest/md32_common.h
index 4cf050c..818eb63 100644
--- a/crypto/digest/md32_common.h
+++ b/crypto/digest/md32_common.h
@@ -140,29 +140,39 @@
#if defined(DATA_ORDER_IS_BIG_ENDIAN)
-#define HOST_c2l(c, l) \
- (void)(l = (((uint32_t)(*((c)++))) << 24), \
- l |= (((uint32_t)(*((c)++))) << 16), \
- l |= (((uint32_t)(*((c)++))) << 8), l |= (((uint32_t)(*((c)++)))))
+#define HOST_c2l(c, l) \
+ do { \
+ (l) = (((uint32_t)(*((c)++))) << 24); \
+ (l) |= (((uint32_t)(*((c)++))) << 16); \
+ (l) |= (((uint32_t)(*((c)++))) << 8); \
+ (l) |= (((uint32_t)(*((c)++)))); \
+ } while (0)
-#define HOST_l2c(l, c) \
- (void)(*((c)++) = (uint8_t)(((l) >> 24) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 16) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 8) & 0xff), \
- *((c)++) = (uint8_t)(((l)) & 0xff))
+#define HOST_l2c(l, c) \
+ do { \
+ *((c)++) = (uint8_t)(((l) >> 24) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 16) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 8) & 0xff); \
+ *((c)++) = (uint8_t)(((l)) & 0xff); \
+ } while (0)
#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN)
-#define HOST_c2l(c, l) \
- (void)(l = (((uint32_t)(*((c)++)))), l |= (((uint32_t)(*((c)++))) << 8), \
- l |= (((uint32_t)(*((c)++))) << 16), \
- l |= (((uint32_t)(*((c)++))) << 24))
+#define HOST_c2l(c, l) \
+ do { \
+ (l) = (((uint32_t)(*((c)++)))); \
+ (l) |= (((uint32_t)(*((c)++))) << 8); \
+ (l) |= (((uint32_t)(*((c)++))) << 16); \
+ (l) |= (((uint32_t)(*((c)++))) << 24); \
+ } while (0)
-#define HOST_l2c(l, c) \
- (void)(*((c)++) = (uint8_t)(((l)) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 8) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 16) & 0xff), \
- *((c)++) = (uint8_t)(((l) >> 24) & 0xff))
+#define HOST_l2c(l, c) \
+ do { \
+ *((c)++) = (uint8_t)(((l)) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 8) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 16) & 0xff); \
+ *((c)++) = (uint8_t)(((l) >> 24) & 0xff); \
+ } while (0)
#endif /* DATA_ORDER */
diff --git a/crypto/ec/p256-64.c b/crypto/ec/p256-64.c
index a0e4df5..6a54200 100644
--- a/crypto/ec/p256-64.c
+++ b/crypto/ec/p256-64.c
@@ -175,9 +175,9 @@
out[7] *= scalar;
}
-#define two105m41m9 (((limb)1) << 105) - (((limb)1) << 41) - (((limb)1) << 9)
+#define two105m41m9 ((((limb)1) << 105) - (((limb)1) << 41) - (((limb)1) << 9))
#define two105 (((limb)1) << 105)
-#define two105m41p9 (((limb)1) << 105) - (((limb)1) << 41) + (((limb)1) << 9)
+#define two105m41p9 ((((limb)1) << 105) - (((limb)1) << 41) + (((limb)1) << 9))
/* zero105 is 0 mod p */
static const felem zero105 = {two105m41m9, two105, two105m41p9, two105m41p9};
@@ -211,9 +211,11 @@
out[3] -= in[3];
}
-#define two107m43m11 (((limb)1) << 107) - (((limb)1) << 43) - (((limb)1) << 11)
+#define two107m43m11 \
+ ((((limb)1) << 107) - (((limb)1) << 43) - (((limb)1) << 11))
#define two107 (((limb)1) << 107)
-#define two107m43p11 (((limb)1) << 107) - (((limb)1) << 43) + (((limb)1) << 11)
+#define two107m43p11 \
+ ((((limb)1) << 107) - (((limb)1) << 43) + (((limb)1) << 11))
/* zero107 is 0 mod p */
static const felem zero107 = {two107m43m11, two107, two107m43p11, two107m43p11};
@@ -272,10 +274,10 @@
out[7] -= in[7];
}
-#define two64m0 (((limb)1) << 64) - 1
-#define two110p32m0 (((limb)1) << 110) + (((limb)1) << 32) - 1
-#define two64m46 (((limb)1) << 64) - (((limb)1) << 46)
-#define two64m32 (((limb)1) << 64) - (((limb)1) << 32)
+#define two64m0 ((((limb)1) << 64) - 1)
+#define two110p32m0 ((((limb)1) << 110) + (((limb)1) << 32) - 1)
+#define two64m46 ((((limb)1) << 64) - (((limb)1) << 46))
+#define two64m32 ((((limb)1) << 64) - (((limb)1) << 32))
/* zero110 is 0 mod p. */
static const felem zero110 = {two64m0, two110p32m0, two64m46, two64m32};
@@ -594,9 +596,9 @@
smallfelem_mul(out, small1, small2);
}
-#define two100m36m4 (((limb)1) << 100) - (((limb)1) << 36) - (((limb)1) << 4)
+#define two100m36m4 ((((limb)1) << 100) - (((limb)1) << 36) - (((limb)1) << 4))
#define two100 (((limb)1) << 100)
-#define two100m36p4 (((limb)1) << 100) - (((limb)1) << 36) + (((limb)1) << 4)
+#define two100m36p4 ((((limb)1) << 100) - (((limb)1) << 36) + (((limb)1) << 4))
/* zero100 is 0 mod p */
static const felem zero100 = {two100m36m4, two100, two100m36p4, two100m36p4};
diff --git a/crypto/md4/md4.c b/crypto/md4/md4.c
index f79da9f..7da3ec8 100644
--- a/crypto/md4/md4.c
+++ b/crypto/md4/md4.c
@@ -114,23 +114,23 @@
#define ROTATE(a, n) (((a) << (n)) | ((a) >> (32 - (n))))
-#define R0(a, b, c, d, k, s, t) \
- { \
- a += ((k) + (t)+F((b), (c), (d))); \
- a = ROTATE(a, s); \
- };
+#define R0(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + F((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ } while (0)
-#define R1(a, b, c, d, k, s, t) \
- { \
- a += ((k) + (t)+G((b), (c), (d))); \
- a = ROTATE(a, s); \
- };
+#define R1(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + G((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ } while (0)
-#define R2(a, b, c, d, k, s, t) \
- { \
- a += ((k) + (t)+H((b), (c), (d))); \
- a = ROTATE(a, s); \
- };
+#define R2(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + H((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ } while (0)
void md4_block_data_order(uint32_t *state, const uint8_t *data, size_t num) {
uint32_t A, B, C, D, l;
diff --git a/crypto/md5/md5.c b/crypto/md5/md5.c
index 66483b8..a66fa7f 100644
--- a/crypto/md5/md5.c
+++ b/crypto/md5/md5.c
@@ -122,32 +122,40 @@
* simplified to the code below. Wei attributes these optimizations
* to Peter Gutmann's SHS code, and he attributes it to Rich Schroeppel.
*/
-#define F(b,c,d) ((((c) ^ (d)) & (b)) ^ (d))
-#define G(b,c,d) ((((b) ^ (c)) & (d)) ^ (c))
-#define H(b,c,d) ((b) ^ (c) ^ (d))
-#define I(b,c,d) (((~(d)) | (b)) ^ (c))
+#define F(b, c, d) ((((c) ^ (d)) & (b)) ^ (d))
+#define G(b, c, d) ((((b) ^ (c)) & (d)) ^ (c))
+#define H(b, c, d) ((b) ^ (c) ^ (d))
+#define I(b, c, d) (((~(d)) | (b)) ^ (c))
#define ROTATE(a, n) (((a) << (n)) | ((a) >> (32 - (n))))
-#define R0(a,b,c,d,k,s,t) { \
- a+=((k)+(t)+F((b),(c),(d))); \
- a=ROTATE(a,s); \
- a+=b; };\
+#define R0(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + F((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ (a) += (b); \
+ } while (0)
-#define R1(a,b,c,d,k,s,t) { \
- a+=((k)+(t)+G((b),(c),(d))); \
- a=ROTATE(a,s); \
- a+=b; };
+#define R1(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + G((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ (a) += (b); \
+ } while (0)
-#define R2(a,b,c,d,k,s,t) { \
- a+=((k)+(t)+H((b),(c),(d))); \
- a=ROTATE(a,s); \
- a+=b; };
+#define R2(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + H((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ (a) += (b); \
+ } while (0)
-#define R3(a,b,c,d,k,s,t) { \
- a+=((k)+(t)+I((b),(c),(d))); \
- a=ROTATE(a,s); \
- a+=b; };
+#define R3(a, b, c, d, k, s, t) \
+ do { \
+ (a) += ((k) + (t) + I((b), (c), (d))); \
+ (a) = ROTATE(a, s); \
+ (a) += (b); \
+ } while (0)
#ifndef md5_block_data_order
#ifdef X
diff --git a/crypto/modes/gcm.c b/crypto/modes/gcm.c
index 69bdfdc..eb63aa0 100644
--- a/crypto/modes/gcm.c
+++ b/crypto/modes/gcm.c
@@ -74,17 +74,17 @@
#endif
#define PACK(s) ((size_t)(s) << (sizeof(size_t) * 8 - 16))
-#define REDUCE1BIT(V) \
- do { \
- if (sizeof(size_t) == 8) { \
- uint64_t T = UINT64_C(0xe100000000000000) & (0 - (V.lo & 1)); \
- V.lo = (V.hi << 63) | (V.lo >> 1); \
- V.hi = (V.hi >> 1) ^ T; \
- } else { \
- uint32_t T = 0xe1000000U & (0 - (uint32_t)(V.lo & 1)); \
- V.lo = (V.hi << 63) | (V.lo >> 1); \
- V.hi = (V.hi >> 1) ^ ((uint64_t)T << 32); \
- } \
+#define REDUCE1BIT(V) \
+ do { \
+ if (sizeof(size_t) == 8) { \
+ uint64_t T = UINT64_C(0xe100000000000000) & (0 - ((V).lo & 1)); \
+ (V).lo = ((V).hi << 63) | ((V).lo >> 1); \
+ (V).hi = ((V).hi >> 1) ^ T; \
+ } else { \
+ uint32_t T = 0xe1000000U & (0 - (uint32_t)((V).lo & 1)); \
+ (V).lo = ((V).hi << 63) | ((V).lo >> 1); \
+ (V).hi = ((V).hi >> 1) ^ ((uint64_t)T << 32); \
+ } \
} while (0)
// kSizeTWithoutLower4Bits is a mask that can be used to zero the lower four
@@ -313,7 +313,7 @@
size_t len);
#endif
-#define GCM_MUL(ctx, Xi) gcm_gmult_4bit(ctx->Xi.u, ctx->Htable)
+#define GCM_MUL(ctx, Xi) gcm_gmult_4bit((ctx)->Xi.u, (ctx)->Htable)
#if defined(GHASH_ASM)
#define GHASH(ctx, in, len) gcm_ghash_4bit((ctx)->Xi.u, (ctx)->Htable, in, len)
/* GHASH_CHUNK is "stride parameter" missioned to mitigate cache
@@ -418,10 +418,10 @@
#ifdef GCM_FUNCREF_4BIT
#undef GCM_MUL
-#define GCM_MUL(ctx, Xi) (*gcm_gmult_p)(ctx->Xi.u, ctx->Htable)
+#define GCM_MUL(ctx, Xi) (*gcm_gmult_p)((ctx)->Xi.u, (ctx)->Htable)
#ifdef GHASH
#undef GHASH
-#define GHASH(ctx, in, len) (*gcm_ghash_p)(ctx->Xi.u, ctx->Htable, in, len)
+#define GHASH(ctx, in, len) (*gcm_ghash_p)((ctx)->Xi.u, (ctx)->Htable, in, len)
#endif
#endif
diff --git a/crypto/sha/sha1.c b/crypto/sha/sha1.c
index 74e841c..0ebed99 100644
--- a/crypto/sha/sha1.c
+++ b/crypto/sha/sha1.c
@@ -119,7 +119,10 @@
#define HASH_BLOCK_DATA_ORDER sha1_block_data_order
#define ROTATE(a, n) (((a) << (n)) | ((a) >> (32 - (n))))
#define Xupdate(a, ix, ia, ib, ic, id) \
- ((a) = (ia ^ ib ^ ic ^ id), ix = (a) = ROTATE((a), 1))
+ do { \
+ (a) = ((ia) ^ (ib) ^ (ic) ^ (id)); \
+ (ix) = (a) = ROTATE((a), 1); \
+ } while (0)
#ifndef SHA1_ASM
static
@@ -143,34 +146,46 @@
#define F_40_59(b, c, d) (((b) & (c)) | (((b) | (c)) & (d)))
#define F_60_79(b, c, d) F_20_39(b, c, d)
-#define BODY_00_15(i, a, b, c, d, e, f, xi) \
- (f) = xi + (e) + K_00_19 + ROTATE((a), 5) + F_00_19((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_00_15(i, a, b, c, d, e, f, xi) \
+ do { \
+ (f) = (xi) + (e) + K_00_19 + ROTATE((a), 5) + F_00_19((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
-#define BODY_16_19(i, a, b, c, d, e, f, xi, xa, xb, xc, xd) \
- Xupdate(f, xi, xa, xb, xc, xd); \
- (f) += (e) + K_00_19 + ROTATE((a), 5) + F_00_19((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_16_19(i, a, b, c, d, e, f, xi, xa, xb, xc, xd) \
+ do { \
+ Xupdate(f, xi, xa, xb, xc, xd); \
+ (f) += (e) + K_00_19 + ROTATE((a), 5) + F_00_19((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
-#define BODY_20_31(i, a, b, c, d, e, f, xi, xa, xb, xc, xd) \
- Xupdate(f, xi, xa, xb, xc, xd); \
- (f) += (e) + K_20_39 + ROTATE((a), 5) + F_20_39((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_20_31(i, a, b, c, d, e, f, xi, xa, xb, xc, xd) \
+ do { \
+ Xupdate(f, xi, xa, xb, xc, xd); \
+ (f) += (e) + K_20_39 + ROTATE((a), 5) + F_20_39((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
-#define BODY_32_39(i, a, b, c, d, e, f, xa, xb, xc, xd) \
- Xupdate(f, xa, xa, xb, xc, xd); \
- (f) += (e) + K_20_39 + ROTATE((a), 5) + F_20_39((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_32_39(i, a, b, c, d, e, f, xa, xb, xc, xd) \
+ do { \
+ Xupdate(f, xa, xa, xb, xc, xd); \
+ (f) += (e) + K_20_39 + ROTATE((a), 5) + F_20_39((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
-#define BODY_40_59(i, a, b, c, d, e, f, xa, xb, xc, xd) \
- Xupdate(f, xa, xa, xb, xc, xd); \
- (f) += (e) + K_40_59 + ROTATE((a), 5) + F_40_59((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_40_59(i, a, b, c, d, e, f, xa, xb, xc, xd) \
+ do { \
+ Xupdate(f, xa, xa, xb, xc, xd); \
+ (f) += (e) + K_40_59 + ROTATE((a), 5) + F_40_59((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
-#define BODY_60_79(i, a, b, c, d, e, f, xa, xb, xc, xd) \
- Xupdate(f, xa, xa, xb, xc, xd); \
- (f) = xa + (e) + K_60_79 + ROTATE((a), 5) + F_60_79((b), (c), (d)); \
- (b) = ROTATE((b), 30);
+#define BODY_60_79(i, a, b, c, d, e, f, xa, xb, xc, xd) \
+ do { \
+ Xupdate(f, xa, xa, xb, xc, xd); \
+ (f) = (xa) + (e) + K_60_79 + ROTATE((a), 5) + F_60_79((b), (c), (d)); \
+ (b) = ROTATE((b), 30); \
+ } while (0)
#ifdef X
#undef X
@@ -199,51 +214,51 @@
E = state[4];
for (;;) {
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(0) = l;
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(1) = l;
BODY_00_15(0, A, B, C, D, E, T, X(0));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(2) = l;
BODY_00_15(1, T, A, B, C, D, E, X(1));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(3) = l;
BODY_00_15(2, E, T, A, B, C, D, X(2));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(4) = l;
BODY_00_15(3, D, E, T, A, B, C, X(3));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(5) = l;
BODY_00_15(4, C, D, E, T, A, B, X(4));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(6) = l;
BODY_00_15(5, B, C, D, E, T, A, X(5));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(7) = l;
BODY_00_15(6, A, B, C, D, E, T, X(6));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(8) = l;
BODY_00_15(7, T, A, B, C, D, E, X(7));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(9) = l;
BODY_00_15(8, E, T, A, B, C, D, X(8));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(10) = l;
BODY_00_15(9, D, E, T, A, B, C, X(9));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(11) = l;
BODY_00_15(10, C, D, E, T, A, B, X(10));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(12) = l;
BODY_00_15(11, B, C, D, E, T, A, X(11));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(13) = l;
BODY_00_15(12, A, B, C, D, E, T, X(12));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(14) = l;
BODY_00_15(13, T, A, B, C, D, E, X(13));
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(15) = l;
BODY_00_15(14, E, T, A, B, C, D, X(14));
BODY_00_15(15, D, E, T, A, B, C, X(15));
diff --git a/crypto/x509/x509_vpm.c b/crypto/x509/x509_vpm.c
index 9e9dbf5..924cfa7 100644
--- a/crypto/x509/x509_vpm.c
+++ b/crypto/x509/x509_vpm.c
@@ -227,8 +227,8 @@
/* Macro to test if a field should be copied from src to dest */
#define test_x509_verify_param_copy(field, def) \
- (to_overwrite || \
- ((src->field != def) && (to_default || (dest->field == def))))
+ (to_overwrite || \
+ ((src->field != (def)) && (to_default || (dest->field == (def)))))
/* As above but for ID fields */
@@ -513,7 +513,7 @@
static const X509_VERIFY_PARAM_ID _empty_id =
{ NULL, 0U, NULL, NULL, 0, NULL, 0 };
-#define vpm_empty_id (X509_VERIFY_PARAM_ID *)&_empty_id
+#define vpm_empty_id ((X509_VERIFY_PARAM_ID *)&_empty_id)
/*
* Default verify parameters: these are used for various applications and can
diff --git a/crypto/x509v3/pcy_int.h b/crypto/x509v3/pcy_int.h
index b5075f9..1e76503 100644
--- a/crypto/x509v3/pcy_int.h
+++ b/crypto/x509v3/pcy_int.h
@@ -180,8 +180,8 @@
/* Useful macros */
-#define node_data_critical(data) (data->flags & POLICY_DATA_FLAG_CRITICAL)
-#define node_critical(node) node_data_critical(node->data)
+#define node_data_critical(data) ((data)->flags & POLICY_DATA_FLAG_CRITICAL)
+#define node_critical(node) node_data_critical((node)->data)
/* Internal functions */
diff --git a/crypto/x509v3/v3_purp.c b/crypto/x509v3/v3_purp.c
index f9324d4..9152444 100644
--- a/crypto/x509v3/v3_purp.c
+++ b/crypto/x509v3/v3_purp.c
@@ -647,7 +647,7 @@
* key types.
*/
#define KU_TLS \
- KU_DIGITAL_SIGNATURE|KU_KEY_ENCIPHERMENT|KU_KEY_AGREEMENT
+ (KU_DIGITAL_SIGNATURE|KU_KEY_ENCIPHERMENT|KU_KEY_AGREEMENT)
static int check_purpose_ssl_server(const X509_PURPOSE *xp, const X509 *x,
int ca)
diff --git a/decrepit/ripemd/internal.h b/decrepit/ripemd/internal.h
index c4db4b2..cbf7a8d 100644
--- a/decrepit/ripemd/internal.h
+++ b/decrepit/ripemd/internal.h
@@ -79,15 +79,15 @@
do { \
unsigned long ll; \
ll = (c)->h[0]; \
- (void)HOST_l2c(ll, (s)); \
+ HOST_l2c(ll, (s)); \
ll = (c)->h[1]; \
- (void)HOST_l2c(ll, (s)); \
+ HOST_l2c(ll, (s)); \
ll = (c)->h[2]; \
- (void)HOST_l2c(ll, (s)); \
+ HOST_l2c(ll, (s)); \
ll = (c)->h[3]; \
- (void)HOST_l2c(ll, (s)); \
+ HOST_l2c(ll, (s)); \
ll = (c)->h[4]; \
- (void)HOST_l2c(ll, (s)); \
+ HOST_l2c(ll, (s)); \
} while (0)
#define HASH_BLOCK_DATA_ORDER ripemd160_block_data_order
diff --git a/decrepit/ripemd/ripemd.c b/decrepit/ripemd/ripemd.c
index 6ed7816..ce47c28 100644
--- a/decrepit/ripemd/ripemd.c
+++ b/decrepit/ripemd/ripemd.c
@@ -86,51 +86,51 @@
D = h[3];
E = h[4];
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(0) = l;
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(1) = l;
RIP1(A, B, C, D, E, WL00, SL00);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(2) = l;
RIP1(E, A, B, C, D, WL01, SL01);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(3) = l;
RIP1(D, E, A, B, C, WL02, SL02);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(4) = l;
RIP1(C, D, E, A, B, WL03, SL03);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(5) = l;
RIP1(B, C, D, E, A, WL04, SL04);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(6) = l;
RIP1(A, B, C, D, E, WL05, SL05);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(7) = l;
RIP1(E, A, B, C, D, WL06, SL06);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(8) = l;
RIP1(D, E, A, B, C, WL07, SL07);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(9) = l;
RIP1(C, D, E, A, B, WL08, SL08);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(10) = l;
RIP1(B, C, D, E, A, WL09, SL09);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(11) = l;
RIP1(A, B, C, D, E, WL10, SL10);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(12) = l;
RIP1(E, A, B, C, D, WL11, SL11);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(13) = l;
RIP1(D, E, A, B, C, WL12, SL12);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(14) = l;
RIP1(C, D, E, A, B, WL13, SL13);
- (void)HOST_c2l(data, l);
+ HOST_c2l(data, l);
X(15) = l;
RIP1(B, C, D, E, A, WL14, SL14);
RIP1(A, B, C, D, E, WL15, SL15);
diff --git a/include/openssl/err.h b/include/openssl/err.h
index cac50e0..f6efa12 100644
--- a/include/openssl/err.h
+++ b/include/openssl/err.h
@@ -467,7 +467,7 @@
#define ERR_R_OVERFLOW (5 | ERR_R_FATAL)
#define ERR_PACK(lib, reason) \
- (((((uint32_t)lib) & 0xff) << 24) | ((((uint32_t)reason) & 0xfff)))
+ (((((uint32_t)(lib)) & 0xff) << 24) | ((((uint32_t)(reason)) & 0xfff)))
#define ERR_GET_LIB(packed_error) ((int)(((packed_error) >> 24) & 0xff))
#define ERR_GET_FUNC(packed_error) 0
diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
index 6e0cecc..0d78754 100644
--- a/include/openssl/ssl.h
+++ b/include/openssl/ssl.h
@@ -2898,7 +2898,7 @@
/* SSL_MAX_CERT_LIST_DEFAULT is the default maximum length, in bytes, of a peer
* certificate chain. */
-#define SSL_MAX_CERT_LIST_DEFAULT 1024 * 100
+#define SSL_MAX_CERT_LIST_DEFAULT (1024 * 100)
/* SSL_CTX_get_max_cert_list returns the maximum length, in bytes, of a peer
* certificate chain accepted by |ctx|. */
@@ -3343,14 +3343,14 @@
/* SSL_get_server_tmp_key returns zero. */
OPENSSL_EXPORT int *SSL_get_server_tmp_key(SSL *ssl, EVP_PKEY **out_key);
-#define SSL_set_app_data(s, arg) (SSL_set_ex_data(s, 0, (char *)arg))
+#define SSL_set_app_data(s, arg) (SSL_set_ex_data(s, 0, (char *)(arg)))
#define SSL_get_app_data(s) (SSL_get_ex_data(s, 0))
#define SSL_SESSION_set_app_data(s, a) \
- (SSL_SESSION_set_ex_data(s, 0, (char *)a))
+ (SSL_SESSION_set_ex_data(s, 0, (char *)(a)))
#define SSL_SESSION_get_app_data(s) (SSL_SESSION_get_ex_data(s, 0))
#define SSL_CTX_get_app_data(ctx) (SSL_CTX_get_ex_data(ctx, 0))
#define SSL_CTX_set_app_data(ctx, arg) \
- (SSL_CTX_set_ex_data(ctx, 0, (char *)arg))
+ (SSL_CTX_set_ex_data(ctx, 0, (char *)(arg)))
#define OpenSSL_add_ssl_algorithms() SSL_library_init()
#define SSLeay_add_ssl_algorithms() SSL_library_init()
diff --git a/include/openssl/x509.h b/include/openssl/x509.h
index 51be320..8204486 100644
--- a/include/openssl/x509.h
+++ b/include/openssl/x509.h
@@ -286,7 +286,7 @@
/* standard trust ids */
-#define X509_TRUST_DEFAULT -1 /* Only valid in purpose settings */
+#define X509_TRUST_DEFAULT (-1) /* Only valid in purpose settings */
#define X509_TRUST_COMPAT 1
#define X509_TRUST_SSL_CLIENT 2
diff --git a/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h
index 0a45aad..1182bc2 100644
--- a/include/openssl/x509_vfy.h
+++ b/include/openssl/x509_vfy.h
@@ -110,7 +110,7 @@
*/
/* The following are legacy constants that should not be used. */
-#define X509_LU_RETRY -1
+#define X509_LU_RETRY (-1)
#define X509_LU_FAIL 0
#define X509_LU_X509 1
diff --git a/include/openssl/x509v3.h b/include/openssl/x509v3.h
index d25a125..4754f71 100644
--- a/include/openssl/x509v3.h
+++ b/include/openssl/x509v3.h
@@ -230,7 +230,7 @@
/* All existing reasons */
#define CRLDP_ALL_REASONS 0x807f
-#define CRL_REASON_NONE -1
+#define CRL_REASON_NONE (-1)
#define CRL_REASON_UNSPECIFIED 0
#define CRL_REASON_KEY_COMPROMISE 1
#define CRL_REASON_CA_COMPROMISE 2
@@ -376,8 +376,8 @@
/* onlysomereasons present */
#define IDP_REASONS 0x40
-#define X509V3_conf_err(val) ERR_add_error_data(6, "section:", val->section, \
-",name:", val->name, ",value:", val->value);
+#define X509V3_conf_err(val) ERR_add_error_data(6, "section:", (val)->section, \
+",name:", (val)->name, ",value:", (val)->value);
#define X509V3_set_ctx_test(ctx) \
X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST)
@@ -389,7 +389,7 @@
(X509V3_EXT_I2V)i2v_ASN1_BIT_STRING, \
(X509V3_EXT_V2I)v2i_ASN1_BIT_STRING, \
NULL, NULL, \
- (void *)table}
+ (void *)(table)}
#define EXT_IA5STRING(nid) { nid, 0, ASN1_ITEM_ref(ASN1_IA5STRING), \
0,0,0,0, \