home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / zip22.zip / vms / osdep.h < prev    next >
C/C++ Source or Header  |  1997-06-19  |  2KB  |  60 lines

  1. /*
  2.  
  3.  Copyright (C) 1990-1997 Mark Adler, Richard B. Wales, Jean-loup Gailly,
  4.  Kai Uwe Rommel, Christian Spieler, Onno van der Linden and Igor Mandrichenko.
  5.  Permission is granted to any individual or institution to use, copy, or
  6.  redistribute this software so long as all of the original files are included,
  7.  that it is not sold for profit, and that this copyright notice is retained.
  8.  
  9. */
  10.  
  11. #ifndef VMS
  12. #  define VMS 1
  13. #endif
  14.  
  15. #if !(defined(__DECC) || defined(__DECCXX) || defined(__GNUC__))
  16.      /* VAX C does not properly support the void keyword. (Only functions
  17.         are allowed to have the type "void".)  */
  18. #  ifndef NO_TYPEDEF_VOID
  19. #    define NO_TYPEDEF_VOID
  20. #  endif
  21. #  define NO_FCNTL_H        /* VAXC does not supply fcntl.h. */
  22. #endif /* VAX C */
  23.  
  24. #define NO_UNISTD_H
  25.  
  26. #define USE_CASE_MAP
  27. #define PROCNAME(n) (action == ADD || action == UPDATE ? wild(n) : procname(n))
  28.  
  29. #include <types.h>
  30. #include <stat.h>
  31. #include <unixio.h>
  32.  
  33. #ifdef ZCRYPT_INTERNAL
  34. #  include <unixlib.h>          /* getpid() declaration for srand seed */
  35. #endif
  36.  
  37. #if !defined(NO_EF_UT_TIME) && !defined(USE_EF_UT_TIME)
  38. #  if (defined(__VMS_VER) && (__VMS_VER >= 70000000))
  39. #    define USE_EF_UT_TIME
  40. #  endif
  41. #endif
  42.  
  43. #if defined(VMS_PK_EXTRA) && defined(VMS_IM_EXTRA)
  44. #  undef VMS_IM_EXTRA                 /* PK style takes precedence */
  45. #endif
  46. #if !defined(VMS_PK_EXTRA) && !defined(VMS_IM_EXTRA)
  47. #  define VMS_PK_EXTRA 1              /* PK style VMS support is default */
  48. #endif
  49.  
  50. #define unlink delete
  51. #define NO_SYMLINK
  52. #define SSTAT vms_stat
  53. #define EXIT(exit_code) vms_exit(exit_code)
  54. #define RETURN(exit_code) {vms_exit(exit_code); return 1;}
  55.  
  56. /* File operations--use "b" for binary if allowed or fixed length 512 on VMS */
  57. #define FOPR  "rb","ctx=stm","mbc=64"
  58. #define FOPM  "r+b","ctx=stm","rfm=fix","mrs=512","mbc=64"
  59. #define FOPW  "wb","ctx=stm","rfm=fix","mrs=512","mbc=64"
  60.