diff --git a/lib/memdebug.c b/lib/memdebug.c
index 28b86b656d72299bd0b46b34849686a557c692a9..213906a83c5f636954f831ab16e9631cc33068a5 100644
--- a/lib/memdebug.c
+++ b/lib/memdebug.c
@@ -120,7 +120,7 @@ int curl_socket(int domain, int type, int protocol, int line, char *source)
   return sockfd;
 }
 
-int curl_accept(int s, struct sockaddr *addr, int *addrlen,
+int curl_accept(int s, struct sockaddr *addr, socklen_t *addrlen,
                 int line, char *source)
 {
   int sockfd=(accept)(s, addr, addrlen);
diff --git a/lib/memdebug.h b/lib/memdebug.h
index fc9a3222a5d6acbeccb3c93892db03e7bf2dd676..2ee523327cb9297fd8b84f408e7783d4c2194804 100644
--- a/lib/memdebug.h
+++ b/lib/memdebug.h
@@ -13,7 +13,7 @@ void curl_memdebug(char *logname);
 /* file descriptor manipulators */
 int curl_socket(int domain, int type, int protocol, int, char *);
 int curl_sclose(int sockfd, int, char *);
-int curl_accept(int s, struct sockaddr *addr, int *addrlen,
+int curl_accept(int s, struct sockaddr *addr, socklen_t *addrlen,
                 int line, char *source);
 
 /* FILE functions */