aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2012-05-16 14:31:36 -0400
committerNick Mathewson <nickm@torproject.org>2012-05-16 14:34:17 -0400
commitf35271bf3eceadd03bff26d34c1d020892d6c6f0 (patch)
treea74fad3643e97a71fdb5325d7d47d853dbb030b0 /src
parent75fc4dbbcabaedc715f0f9e883ccab1c9634e787 (diff)
downloadtor-f35271bf3eceadd03bff26d34c1d020892d6c6f0.tar
tor-f35271bf3eceadd03bff26d34c1d020892d6c6f0.tar.gz
Fix some more FreeBSD4 issues (based on a patch from grarpamp)
Apparently, freebsd 4 doesn't like malloc.h, needs sys/param.h for MIN/MAX, and doesn't have a SIZE_MAX. For bug 3894.
Diffstat (limited to 'src')
-rw-r--r--src/common/compat.h3
-rw-r--r--src/common/torint.h10
-rw-r--r--src/common/util.c2
3 files changed, 14 insertions, 1 deletions
diff --git a/src/common/compat.h b/src/common/compat.h
index d2f1fd129..2c50ef154 100644
--- a/src/common/compat.h
+++ b/src/common/compat.h
@@ -19,6 +19,9 @@
#include <ws2tcpip.h>
#endif
#endif
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
diff --git a/src/common/torint.h b/src/common/torint.h
index 0b5c29adc..2a1ca3051 100644
--- a/src/common/torint.h
+++ b/src/common/torint.h
@@ -182,6 +182,16 @@ typedef unsigned __int64 uint64_t;
#endif
#endif
+#ifndef SIZE_MAX
+#if SIZEOF_SIZE_T == 8
+#define SIZE_MAX UINT64_MAX
+#elif SIZEOF_SIZE_T == 4
+#define SIZE_MAX UINT32_MAX
+#else
+#error "Can't define SIZE_MAX"
+#endif
+#endif
+
#ifndef HAVE_SSIZE_T
#if SIZEOF_SIZE_T == 8
typedef int64_t ssize_t;
diff --git a/src/common/util.c b/src/common/util.c
index a03a57632..f0ca4cb3a 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -77,7 +77,7 @@
#include <malloc/malloc.h>
#endif
#ifdef HAVE_MALLOC_H
-#ifndef OPENBSD
+#if !defined(OPENBSD) && !defined(__FreeBSD__)
/* OpenBSD has a malloc.h, but for our purposes, it only exists in order to
* scold us for being so stupid as to autodetect its presence. To be fair,
* they've done this since 1996, when autoconf was only 5 years old. */