diff options
Diffstat (limited to 'net-misc/telnet-bsd/files/telnet-bsd-1.2-fbsd.patch')
-rw-r--r-- | net-misc/telnet-bsd/files/telnet-bsd-1.2-fbsd.patch | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/net-misc/telnet-bsd/files/telnet-bsd-1.2-fbsd.patch b/net-misc/telnet-bsd/files/telnet-bsd-1.2-fbsd.patch new file mode 100644 index 000000000000..7c39d6ad81cb --- /dev/null +++ b/net-misc/telnet-bsd/files/telnet-bsd-1.2-fbsd.patch @@ -0,0 +1,105 @@ +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); + } |