Package: inetutils
Version: 2:1.4.2+20040207-5
Severity: important
Tags: patch
Our automated buildd log filter[1] detected a problem that will cause
your package to segfault on architectures where the size of a pointer is
greater than the size of an integer, such as ia64.
[1]http://people.debian.org/~dannf/check-implicit-pointer-functions
diff -urN inetutils-1.4.2+20040207.orig/ftp/main.c
inetutils-1.4.2+20040207/ftp/main.c
--- inetutils-1.4.2+20040207.orig/ftp/main.c 2002-04-29 14:40:30.000000000
-0600
+++ inetutils-1.4.2+20040207/ftp/main.c 2005-07-17 04:21:01.282833004 -0600
@@ -55,6 +55,10 @@
#include <unistd.h>
#include <getopt.h>
+#if HAVE_LIBREADLINE
+#include <readline/readline.h>
+#endif
+
/* Define macro to nothing so declarations in ftp_var.h become definitions. */
#define FTP_EXTERN
#include "ftp_var.h"
diff -urN inetutils-1.4.2+20040207.orig/headers/utmp_init.h
inetutils-1.4.2+20040207/headers/utmp_init.h
--- inetutils-1.4.2+20040207.orig/headers/utmp_init.h 1969-12-31
17:00:00.000000000 -0700
+++ inetutils-1.4.2+20040207/headers/utmp_init.h 2005-07-17
04:04:55.086555778 -0600
@@ -0,0 +1,45 @@
+/* utmp_init.h --
+ Copyright (C) 2005 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef UTMP_INIT_H_
+# define UTMP_INIT_H_
+
+# ifndef PARAMS
+# if defined PROTOTYPES || (defined __STDC__ && __STDC__)
+# define PARAMS(Args) Args
+# else
+# define PARAMS(Args) ()
+# endif
+# endif
+
+# ifndef __attribute__
+# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__
+# define __attribute__(x)
+# endif
+# endif
+
+# ifndef ATTRIBUTE_NORETURN
+# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))
+# endif
+
+/* utmp_init - update utmp and wtmp before login */
+void utmp_init(char *line, char *user, char *id);
+
+/* utmp_ptsid - generate utmp id for pseudo terminal */
+char *utmp_ptsid(char *line, char *tag);
+
+#endif /* !UTMP_INIT_H_ */
diff -urN inetutils-1.4.2+20040207.orig/rlogind/rlogind.c
inetutils-1.4.2+20040207/rlogind/rlogind.c
--- inetutils-1.4.2+20040207.orig/rlogind/rlogind.c 2003-04-05
10:03:39.000000000 -0700
+++ inetutils-1.4.2+20040207/rlogind/rlogind.c 2005-07-17 04:07:25.644171121
-0600
@@ -73,6 +73,8 @@
#include <sys/ioctl.h>
#include <sys/stat.h> /* Needed for chmod() */
+#include "utmp_init.h"
+
/*
The TIOCPKT_* macros may not be implemented in the pty driver.
Defining them here allows the program to be compiled. */
@@ -129,6 +131,7 @@
#endif
extern int __check_rhosts_file;
+extern char *localhost __P ((void));
struct auth_data
{
@@ -603,9 +606,6 @@
}
#ifdef UTMPX
-char *utmp_ptsid (); /*FIXME*/
-void utmp_init ();
-
void
setup_utmp (char *line)
{
--- inetutils-1.4.2+20040207/headers/Makefile.am~ 2004-01-30
06:16:17.000000000 -0700
+++ inetutils-1.4.2+20040207/headers/Makefile.am 2005-07-17
06:29:09.444848199 -0600
@@ -1,5 +1,5 @@
EXTRA_DIST = crypt.h err.h getopt.h obstack.h osockaddr.h paths.h poll.h \
- syslog-int.h tftpsubs.h confpaths.h.in stamp-h.in
+ syslog-int.h tftpsubs.h confpaths.h.in stamp-h.in utmp_init.h
header_dirs = arpa protocols
--- inetutils-1.4.2+20040207/headers/Makefile.in~ 2005-07-17
06:23:45.277859983 -0600
+++ inetutils-1.4.2+20040207/headers/Makefile.in 2005-07-17
06:34:12.498555424 -0600
@@ -40,7 +40,8 @@
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(srcdir)/crypt.h $(srcdir)/err.h $(srcdir)/getopt.h \
$(srcdir)/obstack.h $(srcdir)/osockaddr.h $(srcdir)/poll.h \
- $(srcdir)/syslog-int.h $(srcdir)/tftpsubs.h ChangeLog
+ $(srcdir)/syslog-int.h $(srcdir)/tftpsubs.h $(srcdir)/utmp_init.h \
+ ChangeLog
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
--- inetutils-1.4.2+20040207/configure.ac~ 2005-07-17 06:34:56.595234572
-0600
+++ inetutils-1.4.2+20040207/configure.ac 2005-07-17 06:42:00.937026248
-0600
@@ -33,7 +33,7 @@
# Include files that we link into our own include directory from headers.
# Initialize it with the things we always want to use.
IU_CONFIG_LINKS([crypt.h, arpa/telnet.h, arpa/ftp.h, arpa/tftp.h,
- protocols/talkd.h, tftpsubs.h])
+ protocols/talkd.h, tftpsubs.h, utmp_init.h])
dnl For now, we always use libexecdir; later we may want to vary where the
dnl daemons go.
--- inetutils-1.4.2+20040207/telnetd/pty.c~ 2002-04-07 08:31:37.000000000
-0600
+++ inetutils-1.4.2+20040207/telnetd/pty.c 2005-07-17 06:51:11.121589821
-0600
@@ -18,6 +18,7 @@
Boston, MA 02111-1307, USA. */
#include "telnetd.h"
+#include "utmp_init.h"
#include <sys/wait.h>
#ifdef AUTHENTICATION
--
dann frazier <[EMAIL PROTECTED]>
--- Begin Message ---
Function `utmp_ptsid' implicitly converted to pointer at
/build/buildd/inetutils-1.4.2+20040207/build-tree/inetutils-1.4.2+20040207/telnetd/pty.c:31
Function `localhost' implicitly converted to pointer at
/build/buildd/inetutils-1.4.2+20040207/build-tree/inetutils-1.4.2+20040207/rlogind/rlogind.c:342
Function `readline' implicitly converted to pointer at
/build/buildd/inetutils-1.4.2+20040207/build-tree/inetutils-1.4.2+20040207/ftp/main.c:317
--- End Message ---