summaryrefslogtreecommitdiffstats
path: root/providers/implementations/macs/poly1305_prov.c
diff options
context:
space:
mode:
authorPauli <paul.dale@oracle.com>2020-08-05 15:26:48 +1000
committerPauli <paul.dale@oracle.com>2020-08-07 08:07:07 +1000
commit5f6a0b2ff055cf3ad09a1d49a4b95b13e1106b35 (patch)
treedcf50d5c3e37b6a2ca3a18dac9e44bab58a910ed /providers/implementations/macs/poly1305_prov.c
parent992492f5e82e0cf9b24acc14ea90ce8afd4c447a (diff)
mac: add some consistency to setting the XXX_final output length.
The various MACs were all over the place with respects to what they did with the output length in the final call. Now they all unconditionally set the output length and the EVP layer handles the possibility of a NULL pointer. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/12582)
Diffstat (limited to 'providers/implementations/macs/poly1305_prov.c')
-rw-r--r--providers/implementations/macs/poly1305_prov.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/providers/implementations/macs/poly1305_prov.c b/providers/implementations/macs/poly1305_prov.c
index eef546047f..748cafbaca 100644
--- a/providers/implementations/macs/poly1305_prov.c
+++ b/providers/implementations/macs/poly1305_prov.c
@@ -94,6 +94,7 @@ static int poly1305_final(void *vmacctx, unsigned char *out, size_t *outl,
struct poly1305_data_st *ctx = vmacctx;
Poly1305_Final(&ctx->poly1305, out);
+ *outl = poly1305_size();
return 1;
}