Archive-Unzip-Burst
view release on metacpan or search on metacpan
unzip-6.0/unzpriv.h view on Meta::CPAN
#endif
#ifndef STR_TO_OEM
# ifdef CRTL_CP_IS_OEM
# define STR_TO_OEM strcpy
# else
# define STR_TO_OEM str2oem
# define NEED_STR2OEM
# endif
#endif
#if (!defined(INTERN_TO_ISO) && !defined(ASCII2ISO))
# ifdef CRTL_CP_IS_OEM
/* know: "ASCII" is "OEM" */
# define ASCII2ISO(c) \
((((c) & 0x80) && oem2iso) ? oem2iso[(c) & 0x7f] : (c))
# if (defined(NEED_STR2ISO) && !defined(CRYP_USES_OEM2ISO))
# define CRYP_USES_OEM2ISO
# endif
# else
/* assume: "ASCII" is "ISO-ANSI" */
# define ASCII2ISO(c) (c)
# endif
#endif
#if (!defined(INTERN_TO_OEM) && !defined(ASCII2OEM))
# ifdef CRTL_CP_IS_OEM
/* know: "ASCII" is "OEM" */
# define ASCII2OEM(c) (c)
# else
/* assume: "ASCII" is "ISO-ANSI" */
# define ASCII2OEM(c) \
((((c) & 0x80) && iso2oem) ? iso2oem[(c) & 0x7f] : (c))
# if (defined(NEED_STR2OEM) && !defined(CRYP_USES_ISO2OEM))
# define CRYP_USES_ISO2OEM
# endif
# endif
#endif
/* codepage conversion setup for testp() in crypt.c */
#ifdef CRTL_CP_IS_ISO
# ifndef STR_TO_CP2
# define STR_TO_CP2 STR_TO_OEM
# endif
#else
# ifdef CRTL_CP_IS_OEM
# ifndef STR_TO_CP2
# define STR_TO_CP2 STR_TO_ISO
# endif
# else /* native internal CP is neither ISO nor OEM */
# ifndef STR_TO_CP1
# define STR_TO_CP1 STR_TO_ISO
# endif
# ifndef STR_TO_CP2
# define STR_TO_CP2 STR_TO_OEM
# endif
# endif
#endif
/* Convert filename (and file comment string) into "internal" charset.
* This macro assumes that Zip entry filenames are coded in OEM (IBM DOS)
* codepage when made on
* -> DOS (this includes 16-bit Windows 3.1) (FS_FAT_)
* -> OS/2 (FS_HPFS_)
* -> Win95/WinNT with Nico Mak's WinZip (FS_NTFS_ && hostver == "5.0")
* EXCEPTIONS:
* PKZIP for Windows 2.5, 2.6, and 4.0 flag their entries as "FS_FAT_", but
* the filename stored in the local header is coded in Windows ANSI (CP 1252
* resp. ISO 8859-1 on US and western Europe locale settings).
* Likewise, PKZIP for UNIX 2.51 flags its entries as "FS_FAT_", but the
* filenames stored in BOTH the local and the central header are coded
* in the local system's codepage (usually ANSI codings like ISO 8859-1).
*
* All other ports are assumed to code zip entry filenames in ISO 8859-1.
*/
#ifndef Ext_ASCII_TO_Native
# define Ext_ASCII_TO_Native(string, hostnum, hostver, isuxatt, islochdr) \
if (((hostnum) == FS_FAT_ && \
!(((islochdr) || (isuxatt)) && \
((hostver) == 25 || (hostver) == 26 || (hostver) == 40))) || \
(hostnum) == FS_HPFS_ || \
((hostnum) == FS_NTFS_ && (hostver) == 50)) { \
_OEM_INTERN((string)); \
} else { \
_ISO_INTERN((string)); \
}
#endif
/**********************/
/* Global constants */
/**********************/
extern ZCONST unsigned near mask_bits[17];
extern ZCONST char *fnames[2];
#ifdef EBCDIC
extern ZCONST uch ebcdic[];
#endif
#ifdef IZ_ISO2OEM_ARRAY
extern ZCONST uch Far *iso2oem;
extern ZCONST uch Far iso2oem_850[];
#endif
#ifdef IZ_OEM2ISO_ARRAY
extern ZCONST uch Far *oem2iso;
extern ZCONST uch Far oem2iso_850[];
#endif
extern ZCONST char Far VersionDate[];
extern ZCONST char Far CentSigMsg[];
#ifndef SFX
extern ZCONST char Far EndSigMsg[];
#endif
extern ZCONST char Far SeekMsg[];
extern ZCONST char Far FilenameNotMatched[];
extern ZCONST char Far ExclFilenameNotMatched[];
extern ZCONST char Far ReportMsg[];
#ifndef SFX
( run in 0.487 second using v1.01-cache-2.11-cpan-0b5f733616e )