Implement the use of heap manipulator implementions
authorRichard Levitte <levitte@openssl.org>
Wed, 17 Feb 2016 01:24:25 +0000 (02:24 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 17 Feb 2016 09:12:49 +0000 (10:12 +0100)
commit05c7b1631b4f6884b9ef5f0943a3d16d36383f52
tree1c835de8d3de04a28174f1178b5b8360ed3e6aa1
parente159fd154362dbaa03c2aaa80e758312bd99fbab
Implement the use of heap manipulator implementions

- Make use of the functions given through CRYPTO_set_mem_functions().
- CRYPTO_free(), CRYPTO_clear_free() and CRYPTO_secure_free() now receive
  __FILE__ and __LINE__.
- The API for CRYPTO_set_mem_functions() and CRYPTO_get_mem_functions()
  is slightly changed, the implementation for free() now takes a couple
  of extra arguments, taking __FILE__ and __LINE__.
- The CRYPTO_ memory functions will *always* receive __FILE__ and __LINE__
  from the corresponding OPENSSL_ macros, regardless of if crypto-mdebug
  has been enabled or not.  The reason is that if someone swaps out the
  malloc(), realloc() and free() implementations, we can't know if they
  will use them or not.

Reviewed-by: Rich Salz <rsalz@openssl.org>
crypto/mem.c
crypto/mem_dbg.c
crypto/mem_sec.c
include/openssl/crypto.h
ssl/t1_enc.c