diff --git a/configure.in b/configure.in
index 1547e9b..eda5fb1 100644
--- a/configure.in
+++ b/configure.in
@@ -12,6 +12,8 @@ ALL_LINGUAS="de"
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
 
+AC_CHECK_HEADERS([pty.h utmp.h])
+
 if test x"$ac_default_prefix" = x"/usr"
 then
 	if test x"${mandir}" = x'${prefix}/man'
diff --git a/telnet/commands.c b/telnet/commands.c
index c0d349c..fa2cf8a 100644
--- a/telnet/commands.c
+++ b/telnet/commands.c
@@ -29,11 +29,13 @@
 
 #include "telnet_locl.h"
 #include <err.h>
+#include <unistd.h>
 
 #if	defined(IPPROTO_IP) && defined(IP_TOS)
 int tos = -1;
 #endif /* defined(IPPROTO_IP) && defined(IP_TOS) */
 
+extern char **environ;
 char *hostname;
 
 typedef int (*intrtn_t) __P ((int, char **));
diff --git a/telnet/ring.h b/telnet/ring.h
index 66f7191..9ef8fb8 100644
--- a/telnet/ring.h
+++ b/telnet/ring.h
@@ -29,6 +29,7 @@
  */
 
 #include <sys/cdefs.h>
+#include <sys/types.h>
 #define P __P
 
 /*
diff --git a/telnetd/setproctitle.c b/telnetd/setproctitle.c
index f332277..b2adc92 100644
--- a/telnetd/setproctitle.c
+++ b/telnetd/setproctitle.c
@@ -72,6 +72,7 @@ char setproctitle_rcsid[] =
 static char **Argv = NULL;		/* pointer to argument vector */
 static char *LastArgv = NULL;		/* end of argv */
 static char Argv0[128];			/* program name */
+extern char **environ;
 
 void
 initsetproctitle(int argc, char **argv, char **envp)
@@ -86,10 +87,10 @@ initsetproctitle(int argc, char **argv, char **envp)
 
 	for (i = 0; envp[i] != NULL; i++)
 		continue;
-	__environ = (char **) malloc(sizeof (char *) * (i + 1));
+	environ = (char **) malloc(sizeof (char *) * (i + 1));
 	for (i = 0; envp[i] != NULL; i++)
-		__environ[i] = strdup(envp[i]);
-	__environ[i] = NULL;
+		environ[i] = strdup(envp[i]);
+	environ[i] = NULL;
 
 	/*
 	**  Save start and extent of argv for setproctitle.
diff --git a/telnetd/sys_term.c b/telnetd/sys_term.c
index 1235428..6fcc601 100644
--- a/telnetd/sys_term.c
+++ b/telnetd/sys_term.c
@@ -27,8 +27,15 @@
  * SUCH DAMAGE.
  */
 
+#include <config.h>
+
+#include <sys/types.h>
+#ifdef HAVE_UTMP_H 
 #include <utmp.h>
+#endif
+#ifdef HAVE_PTY_H
 #include <pty.h>
+#endif
 
 #include "telnetd.h"
 #include "pathnames.h"
@@ -820,6 +827,7 @@ addarg (struct argv_stuff *avs, const char *val)
 void
 cleanup (int sig)
 {
+#if !defined(__FreeBSD__) || __FreeBSD__ < 9
   sigset_t sigset;
   char *p;
   (void) sig;
@@ -847,6 +855,7 @@ cleanup (int sig)
   *p = 'p';
   chmod (line, 0666);
   chown (line, 0, 0);
+#endif
   shutdown (net, 2);
   exit (1);
 }
