this gets rid of a linker warning. the impression i get is that EVP_CipherFinal_ex explicitely does not do cleanup of the cipher context thing, while EVP_CipherFinal could if it wanted to.
ok? Index: usm.c =================================================================== RCS file: /cvs/src/usr.sbin/snmpd/usm.c,v retrieving revision 1.9 diff -u -p -r1.9 usm.c --- usm.c 16 Jan 2015 00:05:13 -0000 1.9 +++ usm.c 2 Oct 2016 05:32:03 -0000 @@ -605,7 +605,7 @@ usm_crypt(struct snmp_message *msg, u_ch EVP_CIPHER_CTX_set_padding(&ctx, 0); if (EVP_CipherUpdate(&ctx, outbuf, &len, inbuf, inlen) && - EVP_CipherFinal(&ctx, outbuf + len, &len2)) + EVP_CipherFinal_ex(&ctx, outbuf + len, &len2)) rv = len + len2; else rv = -1;