* Read the IV as octets (big-endian) rather than as a machine word.
* Advertise a `block size' of 4 octets.
This is a compatibility break, but I don't think anyone was using SEAL,
and it was nearly impossible to use correctly through this interface
anyway.
static void gsetiv(gcipher *c, const void *iv)
{
gctx *g = (gctx *)c;
- uint32 n = *(const uint32 *)iv;
- seal_initctx(&g->cc, &g->k, n);
+ const octet *ivp = iv;
+ seal_initctx(&g->cc, &g->k, LOAD32(ivp));
}
static void gdestroy(gcipher *c)
};
const gccipher seal = {
- "seal", seal_keysz, 0,
+ "seal", seal_keysz, 4,
ginit
};