changeset 1571:d4efb7801fcd

Attempt to fix m_free for libtomcrypt/libtommath
author Matt Johnston <matt@ucc.asn.au>
date Fri, 02 Mar 2018 00:02:06 +0800
parents 67cb1983500b
children 56ec2214144f
files dbmalloc.h libtomcrypt/src/headers/tomcrypt_custom.h libtommath/tommath_class.h
diffstat 3 files changed, 8 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/dbmalloc.h	Thu Mar 01 23:47:46 2018 +0800
+++ b/dbmalloc.h	Fri Mar 02 00:02:06 2018 +0800
@@ -1,7 +1,9 @@
 #ifndef DBMALLOC_H_
 #define DBMALLOC_H_
 
-#include "includes.h"
+#include "stdint.h"
+#include "stdlib.h"
+#include "options.h"
 
 void * m_malloc(size_t size);
 void * m_calloc(size_t nmemb, size_t size);
@@ -10,16 +12,16 @@
 
 #if DROPBEAR_TRACKING_MALLOC
 void m_free_direct(void* ptr);
-#define m_free(X) do {m_free_direct(X); (X) = NULL;} while (0)
 void m_malloc_set_epoch(unsigned int epoch);
 void m_malloc_free_epoch(unsigned int epoch, int dofree);
 
 #else
 /* plain wrapper */
-
-#define m_free(X) do {free(X); (X) = NULL;} while (0)
+#define m_free_direct free
 
 #endif
 
+#define m_free(X) do {m_free_direct(X); (X) = NULL;} while (0)
+
 
 #endif /* DBMALLOC_H_ */
--- a/libtomcrypt/src/headers/tomcrypt_custom.h	Thu Mar 01 23:47:46 2018 +0800
+++ b/libtomcrypt/src/headers/tomcrypt_custom.h	Fri Mar 02 00:02:06 2018 +0800
@@ -12,12 +12,7 @@
 
 #include "tomcrypt_dropbear.h"
 
-void * m_malloc(size_t size);
-/* m_calloc is limited in size, enough for libtomcrypt */
-void * m_calloc(size_t nmemb, size_t size);
-void * m_realloc(void* ptr, size_t size);
-void m_free_direct(void* ptr);
-
+#include "dbmalloc.h"
 #define XMALLOC m_malloc
 #define XFREE m_free_direct
 #define XREALLOC m_realloc
--- a/libtommath/tommath_class.h	Thu Mar 01 23:47:46 2018 +0800
+++ b/libtommath/tommath_class.h	Fri Mar 02 00:02:06 2018 +0800
@@ -1062,12 +1062,7 @@
 #undef BN_MP_TOOM_MUL_C
 #undef BN_MP_TOOM_SQR_C
 
-void * m_malloc(size_t size);
-/* m_calloc is limited in size, enough for libtomcrypt */
-void * m_calloc(size_t nmemb, size_t size);
-void * m_realloc(void* ptr, size_t size);
-void m_free_direct(void* ptr);
-
+#include "dbmalloc.h"
 #define XMALLOC m_malloc
 #define XFREE m_free_direct
 #define XREALLOC m_realloc