/********************************************************************
* wilkinson
* 3.9VMS
* 1995/09/25 10:55
* gopher_root:[gopher.g2.vms2_13.object]Dirent.h,v
* Exp
*
* Paul Lindner, University of Minnesota CIS.
*
* Copyright 1991, 1992 by the Regents of the University of Minnesota
* see the file "Copyright" in the distribution for conditions of use.
*********************************************************************
* MODULE: Dirent.h
* Portably include dir.h dirent.h, etc.
*********************************************************************
* Revision History:
* Dirent.h,v
* Revision 3.9VMS 1995/09/25 10:55 wilkinson
* Consolodate VMS/Unix source code for server as well as client
* - use __VMS instead of VMS as trigger for VMS items
*
* Revision 3.9 1995/02/01 21:43:13 lindner
* Put back an AIX dirent fix..
*
* Revision 3.8 1994/12/12 17:43:27 lindner
* Hack around AIX
*
* Revision 3.7 1994/11/18 21:43:35 lindner
* Fix error msgs on NeXTstep
*
* Revision 3.6 1994/03/17 04:37:12 lindner
* Lame VMS port
*
* Revision 3.5 1993/12/27 16:12:07 lindner
* Mods for Apollo Domain systems
*
* Revision 3.4 1993/09/30 23:18:25 lindner
* pl8
*
* Revision 3.3 1993/07/13 04:03:59 lindner
* added 386BSD
*
* Revision 3.2 1993/05/25 22:02:10 lindner
* Fix problems with CDC epix systems
*
* Revision 3.1.1.1 1993/02/11 18:03:02 lindner
* Gopher+1.2beta release
*
* Revision 1.1 1992/12/10 23:27:52 lindner
* gopher 1.1 release
*
*
*********************************************************************/
#if !defined(GDIRENT_H)
#define GDIRENT_H
/*** These need dir.h for sure ***/
#ifndef __VMS
#if defined(NeXT) || defined(n16) || defined(sequent) || defined(apollo)|| defined(NO_DIRENT)
# include <sys/types.h>
# include <sys/dir.h>
# define dirent direct
# if defined(apollo)
# include <sys/stat.h>
# else
# ifndef S_ISDIR
# define S_ISDIR(m) (((m)&S_IFMT) == S_IFDIR)
# define S_ISREG(m) (((m)&S_IFMT) == S_IFREG)
# endif
# endif
/*** These can use dirent for sure ***/
#else
# if defined(sun) || defined(ultrix) || defined(hpux) || defined(__sgi)
# undef NO_DIRENT
# endif
# if defined(_AIX) || defined(_SYSV_SOURCE) || defined(sgi) || defined(cray)
# undef NO_DIRENT
# endif
# if defined (_POSIX_SOURCE) || defined(_SEQUENT_) || defined(M_XENIX)
# undef NO_DIRENT
# endif
# if defined(__386BSD__)
# undef NO_DIRENT
# endif
/********************************************************************/
# if !defined(NO_DIRENT)
# include <dirent.h>
/*** Everyone else gets dir.h, plus some funky definitions ***/
# else
# include <sys/types.h>
# include <sys/dir.h>
# define dirent direct
# define S_ISDIR(m) (((m)&S_IFMT) == S_IFDIR)
# define S_ISREG(m) (((m)&S_IFMT) == S_IFREG)
# endif
#endif
#else /* It's __VMS... */
#ifdef VMS_SERVER
# define DIR char
# define S_ISDIR(m) (((m)&S_IFMT) == S_IFDIR)
# define S_ISREG(m) (((m)&S_IFMT) == S_IFREG)
#endif
#endif
#endif /* GDIRENT_H */
.
Response:
text/plain