12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- /*
- Copyright (c) 1990-2008 Info-ZIP. All rights reserved.
- See the accompanying file LICENSE, version 2007-Mar-04 or later
- (the contents of which are also included in unzip.h) for terms of use.
- If, for some reason, all these files are missing, the Info-ZIP license
- also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html
- */
- /* vmmvs.h: include file for both VM/CMS and MVS ports of UnZip */
- #ifndef __vmmvs_h /* prevent multiple inclusions */
- #define __vmmvs_h
- #ifndef NULL
- # define NULL (zvoid *)0
- #endif
- #ifdef MVS
- # define _POSIX_SOURCE /* tell MVS we want full definitions */
- # define NO_STRNICMP /* MVS has no strnicmp() */
- # include <features.h>
- /* MVS complains if a function has the same name as a csect. */
- # if defined(__UNZIP_C)
- # pragma csect(STATIC,"unzip_s")
- # elif defined(__CRC32_C)
- # pragma csect(STATIC,"crc32_s")
- # elif defined(__ENVARGS_C)
- # pragma csect(STATIC,"envarg_s")
- # elif defined(__EXPLODE_C)
- # pragma csect(STATIC,"explod_s")
- # elif defined(__INFLATE_C)
- # pragma csect(STATIC,"inflat_s")
- # elif defined(__MATCH_C)
- # pragma csect(STATIC,"match_s")
- # elif defined(__UNREDUCE_C)
- # pragma csect(STATIC,"unredu_s")
- # elif defined(__UNSHRINK_C)
- # pragma csect(STATIC,"unshri_s")
- # elif defined(__ZIPINFO_C)
- # pragma csect(STATIC,"zipinf_s")
- # endif
- #endif /* MVS */
- #include <time.h> /* the usual non-BSD time functions */
- #ifdef VM_CMS
- # include "vmstat.h"
- #endif
- #ifdef MVS
- # include <sys/stat.h>
- #endif
- #define PASSWD_FROM_STDIN
- /* Kludge until we know how to open a non-echo tty channel */
- #define EBCDIC
- /* In the context of Info-ZIP, a portable "text" mode file implies the use of
- an ASCII-compatible (ISO 8859-1, or other extended ASCII) code page. */
- #ifdef MORE
- # undef MORE
- #endif
- /* Workarounds for missing RTL functionality */
- #define isatty(t) 1
- #ifdef UNZIP /* definitions for UNZIP */
- #define INBUFSIZ 8192
- #define USE_STRM_INPUT
- #define USE_FWRITE
- #define PATH_MAX 128
- #ifndef QUERY_TRNEWLN
- # define QUERY_TRNEWLN /* terminate interaction queries with '\n' */
- #endif
- #ifndef DATE_FORMAT
- # define DATE_FORMAT DF_MDY
- #endif
- #define lenEOL 1
- /* The use of "ebcdic[LF]" is not reliable; VM/CMS C/370 uses the
- * EBCDIC specific "NL" ('NewLine') control character (and not the EBCDIC
- * equivalent of the ASCII "LF" ('LineFeed')) as line terminator!
- * To work around this problem, we explicitely emit the C compiler's native
- * '\n' line terminator.
- */
- #if 0
- #define PutNativeEOL *q++ = native(LF);
- #else
- #define PutNativeEOL *q++ = '\n';
- #endif
- #endif /* UNZIP */
- #endif /* !__vmmvs_h */
|