On linux where no futimes syscall available, futimes wrapper uses /proc filesystem and utimes/utime. When /proc is not available, this wrapper fails with undocumented ENOENT instead of documented ENOSYS.
Created attachment 334 [details] glibc-alt-futimes.patch Proposed patch.
Subject: Bug 633 CVSROOT: /cvs/glibc Module name: libc Changes by: roland@sources.redhat.com 2005-01-07 02:42:55 Modified files: sysdeps/unix/sysv/linux: futimes.c Log message: 2005-01-06 Roland McGrath <roland@redhat.com> [BZ #633] * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values indicating file-name lookup errors, and return ENOSYS or EBADF instead. Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/futimes.c.diff?cvsroot=glibc&r1=1.6&r2=1.7
Please try the patch in CVS and tell me if you have any more trouble.
Thank you for the patch, it fixes even more potential issues than my proposal.
Subject: Bug 633 CVSROOT: /cvs/glibc Module name: libc Branch: glibc-2_3-branch Changes by: roland@sources.redhat.com 2005-02-16 10:47:27 Modified files: sysdeps/unix/sysv/linux: futimes.c Log message: 2005-01-06 Roland McGrath <roland@redhat.com> [BZ #633] * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values indicating file-name lookup errors, and return ENOSYS or EBADF instead. Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/futimes.c.diff?cvsroot=glibc&only_with_tag=glibc-2_3-branch&r1=1.6&r2=1.6.4.1