@@ -259,14 +259,16 @@ gen_tabs(void)
259
259
#define star_x (x ) (((x) & 0x7f7f7f7f) << 1) ^ ((((x) & 0x80808080) >> 7) * 0x1b)
260
260
261
261
#define imix_col (y ,x )\
262
+ do { \
262
263
u= star_x(x);\
263
264
v= star_x(u);\
264
265
w= star_x(v);\
265
266
t= w ^ (x);\
266
267
(y)= u ^ v ^ w;\
267
268
(y) ^= rotr(u ^ t, 8) ^ \
268
269
rotr(v ^ t, 16) ^ \
269
- rotr(t,24)
270
+ rotr(t,24);\
271
+ } while (0)
270
272
271
273
/* initialise the key schedule from the user supplied key*/
272
274
@@ -367,17 +369,21 @@ rijndael_set_key(rijndael_ctx * ctx, const u4byte * in_key, const u4byte key_len
367
369
/* encrypt a block of text*/
368
370
369
371
#define f_nround (bo ,bi ,k ) \
372
+ do { \
370
373
f_rn(bo, bi, 0, k);\
371
374
f_rn(bo, bi, 1, k);\
372
375
f_rn(bo, bi, 2, k);\
373
376
f_rn(bo, bi, 3, k);\
374
- k += 4
377
+ k += 4;\
378
+ } while (0)
375
379
376
380
#define f_lround (bo ,bi ,k ) \
381
+ do { \
377
382
f_rl(bo, bi, 0, k);\
378
383
f_rl(bo, bi, 1, k);\
379
384
f_rl(bo, bi, 2, k);\
380
- f_rl(bo, bi, 3, k)
385
+ f_rl(bo, bi, 3, k);\
386
+ } while (0)
381
387
382
388
void
383
389
rijndael_encrypt (rijndael_ctx * ctx ,const u4byte * in_blk ,u4byte * out_blk )
@@ -427,17 +433,21 @@ rijndael_encrypt(rijndael_ctx * ctx, const u4byte * in_blk, u4byte * out_blk)
427
433
/* decrypt a block of text*/
428
434
429
435
#define i_nround (bo ,bi ,k ) \
436
+ do { \
430
437
i_rn(bo, bi, 0, k);\
431
438
i_rn(bo, bi, 1, k);\
432
439
i_rn(bo, bi, 2, k);\
433
440
i_rn(bo, bi, 3, k);\
434
- k -= 4
441
+ k -= 4;\
442
+ } while (0)
435
443
436
444
#define i_lround (bo ,bi ,k ) \
445
+ do { \
437
446
i_rl(bo, bi, 0, k);\
438
447
i_rl(bo, bi, 1, k);\
439
448
i_rl(bo, bi, 2, k);\
440
- i_rl(bo, bi, 3, k)
449
+ i_rl(bo, bi, 3, k);\
450
+ } while (0)
441
451
442
452
void
443
453
rijndael_decrypt (rijndael_ctx * ctx ,const u4byte * in_blk ,u4byte * out_blk )