From 663b0025294cd3e42a60283b65b68fac76ecaaf9 Mon Sep 17 00:00:00 2001 From: Giacomo Tesio Date: Tue, 17 Jan 2017 20:30:01 +0100 Subject: [PATCH] libsec: mark DigestState as stack var in ccpoly_* CID 160099 and CID 160100 (#1 of 1): Free of address-of expression (BAD_FREE) address_free: ccpolylen frees address of ds --- sys/src/lib/sec/port/ccpoly.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/src/lib/sec/port/ccpoly.c b/sys/src/lib/sec/port/ccpoly.c index d3b21a4..7366b93 100644 --- a/sys/src/lib/sec/port/ccpoly.c +++ b/sys/src/lib/sec/port/ccpoly.c @@ -50,6 +50,7 @@ ccpoly_encrypt(uint8_t *dat, uint32_t ndat, uint8_t *aad, uint32_t naad, uint8_t DigestState ds; ccpolyotk(cs, &ds); + ds.malloced = 0; if(cs->ivwords == 2){ poly1305(aad, naad, nil, 0, nil, &ds); ccpolylen(naad, nil, &ds); @@ -72,6 +73,7 @@ ccpoly_decrypt(uint8_t *dat, uint32_t ndat, uint8_t *aad, uint32_t naad, uint8_t uint8_t tmp[16]; ccpolyotk(cs, &ds); + ds.malloced = 0; if(cs->ivwords == 2){ poly1305(aad, naad, nil, 0, nil, &ds); ccpolylen(naad, nil, &ds);