bug-tar
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-tar] 1.23: FreeBSD 7 bug affects GNU tar


From: Christian Weisgerber
Subject: [Bug-tar] 1.23: FreeBSD 7 bug affects GNU tar
Date: Mon, 29 Mar 2010 22:12:02 +0200
User-agent: Mutt/1.4.2.3i

There is a stupid, stupid bug in FreeBSD 7 (up to and including the
7.3 release):  The fdopendir() function is present in libc, but the
prototype is missing from <dirent.h>.

GNU tar's configure picks up fdopendir(), but since there is no
prototype, it ends up typed as

  int fdopendir();

This is bad.  fdopendir() returns a pointer, which is truncated
from 64 to 32 bits on LP64 platforms.  Running GNU tar's "make
check" leaves a trail of coredumps behind...

The macro complex around m4/dirent*.m4 and m4/fdopendir.m4 needs
some sort of check if fdopendir() is declared, and if not, must
provide a prototype.  These macros are probably used in other GNU
projects as well, and bug-tar may not be the right address, but I'm
throwing it out there in the hope that it will reach somebody who
knows how to deal with this properly.

-- 
Christian "naddy" Weisgerber                          address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]