Under AIX 4.3.3, the strerror_r() call returns an integer, not a string pointer as expected by lib/error.c in the fileutils-4.0 distribution. The same source file is used in both the sh-utils-2.0 and textutils-2.0 distributions, and seems to have been fixed in both places. I've attached a patch which shows the difference between the version from fileutils-4.0 and the version from textutils-2.0. Also, when is the next release of GNU fileutils expected to occur? Back in March '99, I submitted a patch related to GNU df and the AIX automounter, and I'd like to see both that patch and this fix make it into a new release so that others can benefit from them. Thanks! -- Mark D. Roth <[EMAIL PROTECTED]> System Administrator, CCSO Production Systems Group http://www.uiuc.edu/ph/www/roth
--- fileutils-4.0/lib/error.c Fri Mar 27 11:22:34 1998 +++ textutils-2.0/lib/error.c Sun Dec 13 11:24:40 1998 @@ -152,7 +152,10 @@ { #if defined HAVE_STRERROR_R || defined _LIBC char errbuf[1024]; - fprintf (stderr, ": %s", __strerror_r (errnum, errbuf, sizeof errbuf)); + /* Don't use __strerror_r's return value because on some systems + (at least DEC UNIX 4.0[A-D]) strerror_r returns `int'. */ + __strerror_r (errnum, errbuf, sizeof errbuf); + fprintf (stderr, ": %s", errbuf); #else fprintf (stderr, ": %s", strerror (errnum)); #endif