diff --git a/astmm.c b/astmm.c
index c3ec2b64446bd927d89fdac8935fbe93c0855620..6087f7ff68f853105d4d964d7f949fb4ee8d1251 100755
--- a/astmm.c
+++ b/astmm.c
@@ -13,7 +13,6 @@
 
 #ifdef __AST_DEBUG_MALLOC
 
-#include <malloc.h>
 #include <stdio.h>
 #include <string.h>
 #include <time.h>
diff --git a/include/asterisk/strings.h b/include/asterisk/strings.h
index 37a5faccdbc5ef64f22f45448477ab1ef57c3d8e..e0e5148a3f639442e77461c1ff55a9d77697f797 100755
--- a/include/asterisk/strings.h
+++ b/include/asterisk/strings.h
@@ -214,7 +214,7 @@ struct ast_realloca {
 char *strcasestr(const char *, const char *);
 #endif
 
-#ifndef HAVE_STRNDUP
+#if !defined(HAVE_STRNDUP) && !defined(__AST_DEBUG_MALLOC)
 char *strndup(const char *, size_t);
 #endif
 
@@ -222,7 +222,7 @@ char *strndup(const char *, size_t);
 size_t strnlen(const char *, size_t);
 #endif
 
-#ifndef HAVE_VASPRINTF
+#if !defined(HAVE_VASPRINTF) && !defined(__AST_DEBUG_MALLOC)
 int vasprintf(char **strp, const char *fmt, va_list ap);
 #endif
 
diff --git a/utils.c b/utils.c
index 282c2e18ea7db05043ae018eedd7d7342dcacfb0..a3423b8051d86ab3f38d5f133c485ded560a4977 100755
--- a/utils.c
+++ b/utils.c
@@ -658,7 +658,7 @@ size_t strnlen(const char *s, size_t n)
 }
 #endif
 
-#ifndef HAVE_STRNDUP
+#if !defined(HAVE_STRNDUP) && !defined(__AST_DEBUG_MALLOC)
 char *strndup(const char *s, size_t n)
 {
 	size_t len = strnlen(s, n);
@@ -672,7 +672,7 @@ char *strndup(const char *s, size_t n)
 }
 #endif
 
-#ifndef HAVE_VASPRINTF
+#if !defined(HAVE_VASPRINTF) && !defined(__AST_DEBUG_MALLOC)
 int vasprintf(char **strp, const char *fmt, va_list ap)
 {
 	int size;