[1275] in Kerberos-V5-bugs
krb5b4pl3: appl/bsd/krlogin.c: GNU C library uses union wait * for wait, int * for waitpid
daemon@ATHENA.MIT.EDU (Jonathan I. Kamens)
Fri Mar 24 14:02:19 1995
From: "Jonathan I. Kamens" <jik@cam.ov.com>
Date: Fri, 24 Mar 1995 14:04:52 -0500
To: krb5-bugs@MIT.EDU
Unfortunately, the GNU C library uses union wait * as the type to pass
into wait(), but int * as the type to pass into waitpid(). This makes
WAIT_USES_INT insufficient.
Perhaps there's a better fix than the one below, but here's what I did
to make krlogin.c compile without warnings in this area under Linux:
--- krlogin.c 1995/03/23 20:27:36 1.14
+++ krlogin.c 1995/03/24 18:51:34
@@ -920,7 +920,7 @@
krb5_sigtype
catchild()
{
-#ifdef WAIT_USES_INT
+#if defined(WAIT_USES_INT) || defined(__GNU_LIBRARY__)
int status;
#else
union wait status;
@@ -938,7 +938,7 @@
/*
* if the child (reader) dies, just quit
*/
-#ifdef WAIT_USES_INT
+#if defined(WAIT_USES_INT) || defined(__GNU_LIBRARY__)
if (pid < 0 || (pid == child && !WIFSTOPPED(status)))
done(status);
#else