2016-03-15 Niels Möller <nisse@lysator.liu.se>
+ * blowfish.c (blowfish_encrypt, blowfish_decrypt): Use READ_UINT32
+ macro. Fixes an undefined shift, reported by Nikos
+ Mavrogiannopoulos.
+
From Nikos Mavrogiannopoulos.
* configure.ac (HOGWEED_EXTRA_SYMBOLS): Add "mp_*", when building
with mini-gmp.
{
uint32_t d1, d2;
- d1 = src[0] << 24 | src[1] << 16 | src[2] << 8 | src[3];
- d2 = src[4] << 24 | src[5] << 16 | src[6] << 8 | src[7];
+ d1 = READ_UINT32(src);
+ d2 = READ_UINT32(src+4);
encrypt (ctx, &d1, &d2);
dst[0] = (d1 >> 24) & 0xff;
dst[1] = (d1 >> 16) & 0xff;
{
uint32_t d1, d2;
- d1 = src[0] << 24 | src[1] << 16 | src[2] << 8 | src[3];
- d2 = src[4] << 24 | src[5] << 16 | src[6] << 8 | src[7];
+ d1 = READ_UINT32(src);
+ d2 = READ_UINT32(src+4);
decrypt (ctx, &d1, &d2);
dst[0] = (d1 >> 24) & 0xff;
dst[1] = (d1 >> 16) & 0xff;