diff --git a/apps/openssl.c b/apps/openssl.c index bbee18d1d1bb75fbad98beae90149741fb9ed04d..e910faf701076387e5ccfb5dcd3903c71f06271d 100644 --- a/apps/openssl.c +++ b/apps/openssl.c @@ -237,8 +237,9 @@ end: ERR_free_strings(); #ifdef LEVITTE_DEBUG - CRYPTO_add_info("Just to make sure I get a memory leak I can see :-)"); + CRYPTO_push_info("Just to make sure I get a memory leak I can see :-)"); (void)Malloc(1024); + CRYPTO_pop_info(); #endif CRYPTO_mem_leaks(bio_err); diff --git a/crypto/crypto.h b/crypto/crypto.h index 7d2b09ee9bd2f3d253860611b275f06eb9b03bca..e890c6926ba24fc12d320ddb0784d69764ad9238 100644 --- a/crypto/crypto.h +++ b/crypto/crypto.h @@ -302,10 +302,10 @@ void *CRYPTO_remalloc(void *addr,int num, char *file, int line); void CRYPTO_set_mem_debug_options(long bits); long CRYPTO_get_mem_debug_options(); -#define CRYPTO_add_info(info) \ - CRYPTO_add_info_(info, __FILE__, __LINE__); -int CRYPTO_add_info_(const char *info, const char *file, int line); -int CRYPTO_remove_info(void); +#define CRYPTO_push_info(info) \ + CRYPTO_push_info_(info, __FILE__, __LINE__); +int CRYPTO_push_info_(const char *info, const char *file, int line); +int CRYPTO_pop_info(void); int CRYPTO_remove_all_info(void); /* The last argument has the following significance: diff --git a/crypto/mem_dbg.c b/crypto/mem_dbg.c index b80fcea44f2e88a810cb0b8ce7ec9a959d81d7c8..7f9cc0ec74c8dd86d84c1453bd534920114f8f3c 100644 --- a/crypto/mem_dbg.c +++ b/crypto/mem_dbg.c @@ -88,9 +88,9 @@ typedef struct app_mem_info_st /* For application-defined information (static C-string `info') * to be displayed in memory leak list. * Each thread has its own stack. For applications, there is - * CRYPTO_add_info("...") to push an entry, - * CRYPTO_remove_info() to pop an entry, - * CRYPTO_remove_all_info() to pop all entries. + * CRYPTO_push_info("...") to push an entry, + * CRYPTO_pop_info() to pop an entry, + * CRYPTO_remove_all_info() to pop all entries. */ { unsigned long thread; @@ -249,7 +249,7 @@ static unsigned long app_info_hash(APP_INFO *a) return(ret); } -static APP_INFO *remove_info() +static APP_INFO *pop_info() { APP_INFO tmp; APP_INFO *ret = NULL; @@ -269,7 +269,7 @@ static APP_INFO *remove_info() #ifdef LEVITTE_DEBUG if (ret->thread != tmp.thread) { - fprintf(stderr, "remove_info(): deleted info has other thread ID (%lu) than the current thread (%lu)!!!!\n", + fprintf(stderr, "pop_info(): deleted info has other thread ID (%lu) than the current thread (%lu)!!!!\n", ret->thread, tmp.thread); abort(); } @@ -286,7 +286,7 @@ static APP_INFO *remove_info() return(ret); } -int CRYPTO_add_info_(const char *info, const char *file, int line) +int CRYPTO_push_info_(const char *info, const char *file, int line) { APP_INFO *ami, *amim; int ret=0; @@ -322,7 +322,7 @@ int CRYPTO_add_info_(const char *info, const char *file, int line) #ifdef LEVITTE_DEBUG if (ami->thread != amim->thread) { - fprintf(stderr, "CRYPTO_add_info(): previous info has other thread ID (%lu) than the current thread (%lu)!!!!\n", + fprintf(stderr, "CRYPTO_push_info(): previous info has other thread ID (%lu) than the current thread (%lu)!!!!\n", amim->thread, ami->thread); abort(); } @@ -336,7 +336,7 @@ int CRYPTO_add_info_(const char *info, const char *file, int line) return(ret); } -int CRYPTO_remove_info(void) +int CRYPTO_pop_info(void) { int ret=0; @@ -344,7 +344,7 @@ int CRYPTO_remove_info(void) { MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */ - ret=(remove_info() != NULL); + ret=(pop_info() != NULL); MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */ } @@ -359,7 +359,7 @@ int CRYPTO_remove_all_info(void) { MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */ - while(remove_info() != NULL) + while(pop_info() != NULL) ret++; MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */ diff --git a/util/libeay.num b/util/libeay.num index 6702bf9436e5b3d38b01c8f4e10fc10a1d41be87..1c371fdb749012e8ff20b3408573a651e5bc9697 100755 --- a/util/libeay.num +++ b/util/libeay.num @@ -2129,3 +2129,11 @@ PKCS7_simple_smimecap 2153 PKCS7_get_smimecap 2154 PKCS7_sign 2155 PKCS7_add_attrib_smimecap 2156 +CRYPTO_dbg_set_options 2157 +CRYPTO_remove_all_info 2158 +CRYPTO_get_mem_debug_functions 2159 +CRYPTO_is_mem_check_on 2160 +CRYPTO_set_mem_debug_functions 2161 +CRYPTO_pop_info 2162 +CRYPTO_push_info_ 2163 +CRYPTO_set_mem_debug_options 2164