mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
Curl_MD5_init: fix OOM memory leak
Bug: http://curl.haxx.se/mail/lib-2012-04/0246.html Reported by: Michael Mueller
This commit is contained in:
parent
dd18e714ff
commit
bd9eb30ffd
12
lib/md5.c
12
lib/md5.c
@ -426,9 +426,9 @@ void Curl_md5it(unsigned char *outbuffer, /* 16 bytes */
|
|||||||
MD5_Final(outbuffer, &ctx);
|
MD5_Final(outbuffer, &ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
MD5_context * Curl_MD5_init(const MD5_params *md5params)
|
MD5_context *Curl_MD5_init(const MD5_params *md5params)
|
||||||
{
|
{
|
||||||
MD5_context* ctxt;
|
MD5_context *ctxt;
|
||||||
|
|
||||||
/* Create MD5 context */
|
/* Create MD5 context */
|
||||||
ctxt = malloc(sizeof *ctxt);
|
ctxt = malloc(sizeof *ctxt);
|
||||||
@ -438,12 +438,14 @@ MD5_context * Curl_MD5_init(const MD5_params *md5params)
|
|||||||
|
|
||||||
ctxt->md5_hashctx = malloc(md5params->md5_ctxtsize);
|
ctxt->md5_hashctx = malloc(md5params->md5_ctxtsize);
|
||||||
|
|
||||||
if(!ctxt->md5_hashctx)
|
if(!ctxt->md5_hashctx) {
|
||||||
return ctxt->md5_hashctx;
|
free(ctxt);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
ctxt->md5_hash = md5params;
|
ctxt->md5_hash = md5params;
|
||||||
|
|
||||||
(*md5params->md5_init)(ctxt->md5_hashctx);
|
md5params->md5_init(ctxt->md5_hashctx);
|
||||||
|
|
||||||
return ctxt;
|
return ctxt;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user