- if (v[0].len != sizeof(k)) { fprintf(stderr, "AES key len\n"); exit(2); }
- if (v[1].len != sizeof(r)) { fprintf(stderr, "poly key len\n"); exit(2); }
- if (v[2].len != sizeof(n)) { fprintf(stderr, "nonce len\n"); exit(2); }
- if (v[4].len != sizeof(n)) { fprintf(stderr, "result len\n"); exit(2); }
- memcpy(k, v[0].buf, sizeof(k));
- memcpy(r, v[1].buf, sizeof(k));
- memcpy(n, v[2].buf, sizeof(k));
+ DENSURE(&dk, 16); k = (octet *)dk.buf; dk.len = 16;
+ DENSURE(&dr, 16); r = (octet *)dr.buf; dr.len = 16;
+ DENSURE(&dn, 16); n = (octet *)dn.buf; dn.len = 16;
+ DENSURE(&dt, 16); t = (octet *)dt.buf; dt.len = 16;
+ DENSURE(&dm, MSZMAX); m = (octet *)dm.buf; dm.len = MSZMAX;
+ memset(m, 0, MSZMAX);
+
+ if (v[0].len != 16) { fprintf(stderr, "AES key len\n"); exit(2); }
+ if (v[1].len != 16) { fprintf(stderr, "poly key len\n"); exit(2); }
+ if (v[2].len != 16) { fprintf(stderr, "nonce len\n"); exit(2); }
+ if (v[4].len != 16) { fprintf(stderr, "result len\n"); exit(2); }
+ memcpy(k, v[0].buf, 16);
+ memcpy(r, v[1].buf, 16);
+ memcpy(n, v[2].buf, 16);