diff options
author | Jeremy Allison <jra@samba.org> | 2011-02-25 17:25:36 -0800 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2011-02-26 04:19:55 +0100 |
commit | c8a242d9fcb16df41a36b67ce2a8d43a3853b103 (patch) | |
tree | 08eef2215c559b4ad876e57a6649056020266e85 /source3/lib | |
parent | ebb2fb7efb1beea63720d3753685bb2eab5f19ee (diff) | |
download | samba-c8a242d9fcb16df41a36b67ce2a8d43a3853b103.tar.gz samba-c8a242d9fcb16df41a36b67ce2a8d43a3853b103.tar.bz2 samba-c8a242d9fcb16df41a36b67ce2a8d43a3853b103.zip |
dirfd doesn't exist in some platforms.
Hack that should get the buildfarm back to green.
Ensure dirfd() needs to be defined before we properly return fdopendir.
This will do until we get a proper dirfd() defined in libreplace.
From http://www.gnu.org/software/hello/manual/gnulib/dirfd.html
This function is missing on some platforms: AIX 7.1, HP-UX 11, OSF/1 5.1, Solaris 10, mingw.
Jeremy.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Feb 26 04:19:55 CET 2011 on sn-devel-104
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/system.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/lib/system.c b/source3/lib/system.c index 24d3c09d58..092287a602 100644 --- a/source3/lib/system.c +++ b/source3/lib/system.c @@ -868,13 +868,15 @@ SMB_STRUCT_DIR *sys_opendir(const char *name) /******************************************************************* An fdopendir wrapper that will deal with 64 bit filesizes. + Ugly hack - we need dirfd for this to work correctly in the + calling code.. JRA. ********************************************************************/ SMB_STRUCT_DIR *sys_fdopendir(int fd) { -#if defined(HAVE_EXPLICIT_LARGEFILE_SUPPORT) && defined(HAVE_FDOPENDIR64) +#if defined(HAVE_EXPLICIT_LARGEFILE_SUPPORT) && defined(HAVE_FDOPENDIR64) && defined(HAVE_DIRFD) return fdopendir64(fd); -#elif defined(HAVE_FDOPENDIR) +#elif defined(HAVE_FDOPENDIR) && defined(HAVE_DIRFD) return fdopendir(fd); #else errno = ENOSYS; |