diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 76d1794c520f03523e45fe94ec2fe23e8213000e..4fe3db990113e52a02c312a7024c2ceb1aeab26c 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -50,8 +50,7 @@
 
 ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 
-#include <values.h>
-#ifdef __NetBSD__
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 #include <pthread.h>
 #include <signal.h>
 #else
@@ -4203,7 +4202,7 @@ static int drc_sample(int sample, float drc)
 {
 	float neg;
 	float shallow, steep;
-	float max = MAXSHORT;
+	float max = SHRT_MAX;
 	
 	neg = (sample < 0 ? -1 : 1);
 	steep = drc*sample;