+static void aead_fmtnonce(aead_ctx *bc, octet *n, uint32 seq, unsigned ty)
+{
+ assert(bc->nsz <= AEAD_NONCEMAX); assert(ty <= 255);
+ STORE32(n, seq);
+ switch (bc->nsz) {
+ case 5: STORE8(n + SEQSZ, ty); break;
+ case 6: STORE16(n + SEQSZ, ty); break;
+ case 7: STORE24(n + SEQSZ, ty); break;
+ default: memset(n + 8, 0, bc->nsz - 8); /* and continue */
+ case 8: STORE32(n + SEQSZ, ty); break;
+ }
+ TRACE_IV(n, bc->nsz);
+}
+