#endif
/* Set standard debugging functions (not done by default
- * unless CRYPTO_MDEBUG ist defined) */
+ * unless CRYPTO_MDEBUG is defined) */
#define CRYPTO_malloc_debug_init() do {\
CRYPTO_set_mem_debug_functions(\
(void (*)())CRYPTO_dbg_malloc,\
#define CRYPTO_add_info(info) \
CRYPTO_add_info_(info, __FILE__, __LINE__);
-int CRYPTO_add_info_(const char *file, int line, const char *info);
+int CRYPTO_add_info_(const char *info, const char *file, int line);
int CRYPTO_remove_info(void);
int CRYPTO_remove_all_info(void);
return(ret);
}
-int CRYPTO_add_info_(const char *file, int line, const char *info)
+int CRYPTO_add_info_(const char *info, const char *file, int line)
{
APP_INFO *ami, *amim;
int ret=0;
if (is_MemCheck_on())
{
- MemCheck_off();
+ MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
if ((ami = (APP_INFO *)Malloc(sizeof(APP_INFO))) == NULL)
{
ami->next=amim;
}
err:
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
return(ret);
{
int ret=0;
- if (is_MemCheck_on()) /* _must_ be true, or something went severly wrong */
+ if (is_MemCheck_on()) /* _must_ be true, or something went severely wrong */
{
- MemCheck_off();
- CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
+ MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
ret=(remove_info() != NULL);
- CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
return(ret);
}
if (is_MemCheck_on()) /* _must_ be true */
{
- MemCheck_off();
- CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
+ MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
while(remove_info() != NULL)
ret++;
- CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
return(ret);
}
if (is_MemCheck_on())
{
- MemCheck_off();
+ MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
if ((m=(MEM *)Malloc(sizeof(MEM))) == NULL)
{
Free(addr);
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
return;
}
- CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
if (mh == NULL)
{
if ((mh=lh_new(mem_hash,mem_cmp)) == NULL)
Free(mm);
}
err:
- CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
break;
}
Free(mp);
}
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
break;
case 1:
if (is_MemCheck_on())
{
- MemCheck_off();
- CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
+ MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
m.addr=addr1;
mp=(MEM *)lh_delete(mh,(char *)&m);
lh_insert(mh,(char *)mp);
}
- CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
- MemCheck_on();
+ MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
}
break;
}
ami_cnt++;
memset(buf,'>',ami_cnt);
sprintf(buf + ami_cnt,
- "thread=%lu, file=%s, line=%d, info=\"",
+ " thread=%lu, file=%s, line=%d, info=\"",
amip->thread, amip->file, amip->line);
buf_len=strlen(buf);
info_len=strlen(amip->info);