OSDN Git Service

Patch from Marko Kreen:
authorNeil Conway <neilc@samurai.com>
Sat, 18 Feb 2006 20:48:51 +0000 (20:48 +0000)
committerNeil Conway <neilc@samurai.com>
Sat, 18 Feb 2006 20:48:51 +0000 (20:48 +0000)
commitce9b75db6bb1beeb1561150f6e59a2a5c5a4ec83
tree16c266b0b3c9c45649cd360b16be53378da24659
parent1b658473eaa411cc722f0eeb0c576a5f459ca360
Patch from Marko Kreen:

pgcrypto crypt()/md5 and hmac() leak memory when compiled against
OpenSSL as openssl.c digest ->reset will do two DigestInit calls
against a context.  This happened to work with OpenSSL 0.9.6
but not with 0.9.7+.

Reason for the messy code was that I tried to avoid creating
wrapper structure to transport algorithm info and tried to use
OpenSSL context for it.  The fix is to create wrapper structure.

It also uses newer digest API to avoid memory allocations
on reset with newer OpenSSLs.

Thanks to Daniel Blaisdell for reporting it.
contrib/pgcrypto/openssl.c