diff options
| author | Bruce Momjian <bruce@momjian.us> | 2001-10-25 00:55:48 +0000 |
|---|---|---|
| committer | Bruce Momjian <bruce@momjian.us> | 2001-10-25 00:55:48 +0000 |
| commit | b4a57b06486df001e9b4e4350c493e2c15e76380 (patch) | |
| tree | c439b48db1ed46f7c88775d95a3d90428cbd9fee /contrib/pgcrypto | |
| parent | 309a04f5b8e77f82b6ce703ff15fcb89368b067c (diff) | |
| download | postgresql-b4a57b06486df001e9b4e4350c493e2c15e76380.tar.gz | |
Add more missing 'do { ... } while (0)' in missing macros. Without it,
these macros fail in if/else cases:
#define X \
{ \
... \
}
{
if (...)
X;
else
...
}
with proper setup:
#define X \
do { \
... \
} while (0)
it works fine.
Diffstat (limited to 'contrib/pgcrypto')
| -rw-r--r-- | contrib/pgcrypto/crypt-blowfish.c | 4 | ||||
| -rw-r--r-- | contrib/pgcrypto/rijndael.c | 12 |
2 files changed, 8 insertions, 8 deletions
diff --git a/contrib/pgcrypto/crypt-blowfish.c b/contrib/pgcrypto/crypt-blowfish.c index 1a9dba7dff..d60807f241 100644 --- a/contrib/pgcrypto/crypt-blowfish.c +++ b/contrib/pgcrypto/crypt-blowfish.c @@ -359,13 +359,13 @@ static unsigned char BF_atoi64[0x60] = { }; #define BF_safe_atoi64(dst, src) \ -{ \ +do { \ tmp = (unsigned char)(src); \ if ((unsigned int)(tmp -= 0x20) >= 0x60) return -1; \ tmp = BF_atoi64[tmp]; \ if (tmp > 63) return -1; \ (dst) = tmp; \ -} +} while (0) static int BF_decode(BF_word *dst, const char *src, int size) { diff --git a/contrib/pgcrypto/rijndael.c b/contrib/pgcrypto/rijndael.c index 15a88aaf3b..258202fa99 100644 --- a/contrib/pgcrypto/rijndael.c +++ b/contrib/pgcrypto/rijndael.c @@ -255,25 +255,25 @@ gen_tabs(void) /* initialise the key schedule from the user supplied key */ #define loop4(i) \ -{ t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ +do { t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ t ^= e_key[4 * i]; e_key[4 * i + 4] = t; \ t ^= e_key[4 * i + 1]; e_key[4 * i + 5] = t; \ t ^= e_key[4 * i + 2]; e_key[4 * i + 6] = t; \ t ^= e_key[4 * i + 3]; e_key[4 * i + 7] = t; \ -} +} while (0) #define loop6(i) \ -{ t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ +do { t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ t ^= e_key[6 * i]; e_key[6 * i + 6] = t; \ t ^= e_key[6 * i + 1]; e_key[6 * i + 7] = t; \ t ^= e_key[6 * i + 2]; e_key[6 * i + 8] = t; \ t ^= e_key[6 * i + 3]; e_key[6 * i + 9] = t; \ t ^= e_key[6 * i + 4]; e_key[6 * i + 10] = t; \ t ^= e_key[6 * i + 5]; e_key[6 * i + 11] = t; \ -} +} while (0) #define loop8(i) \ -{ t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ +do { t = ls_box(rotr(t, 8)) ^ rco_tab[i]; \ t ^= e_key[8 * i]; e_key[8 * i + 8] = t; \ t ^= e_key[8 * i + 1]; e_key[8 * i + 9] = t; \ t ^= e_key[8 * i + 2]; e_key[8 * i + 10] = t; \ @@ -283,7 +283,7 @@ gen_tabs(void) t ^= e_key[8 * i + 5]; e_key[8 * i + 13] = t; \ t ^= e_key[8 * i + 6]; e_key[8 * i + 14] = t; \ t ^= e_key[8 * i + 7]; e_key[8 * i + 15] = t; \ -} +} while (0) rijndael_ctx * rijndael_set_key(rijndael_ctx *ctx, const u4byte *in_key, const u4byte key_len, |
