📄 globals.h
字号:
min_info info[DIR_BLKSIZ]; min_info *pInfo;#endif /* !FUNZIP */ union work area; /* see unzpriv.h for definition of work */#ifndef FUNZIP# if (!defined(USE_ZLIB) || defined(USE_OWN_CRCTAB)) ZCONST ulg near *crc_32_tab;# else ZCONST ulg Far *crc_32_tab;# endif#endif ulg crc32val; /* CRC shift reg. (was static in funzip) */#ifdef FUNZIP FILE *in; /* file descriptor of compressed stream */#endif uch *inbuf; /* input buffer (any size is OK) */ uch *inptr; /* pointer into input buffer */ int incnt;#ifndef FUNZIP ulg bitbuf; int bits_left; /* unreduce and unshrink only */ int zipeof; char *argv0; /* used for NT and EXE_EXTENSION */ char *wildzipfn; char *zipfn; /* GRR: WINDLL: must nuke any malloc'd zipfn... */#ifdef USE_STRM_INPUT FILE *zipfd; /* zipfile file descriptor */#else int zipfd; /* zipfile file handle */#endif LONGINT ziplen; LONGINT cur_zipfile_bufstart; /* extract_or_test, readbuf, ReadByte */ LONGINT extra_bytes; /* used in unzip.c, misc.c */ uch *extra_field; /* Unix, VMS, Mac, OS/2, Acorn, ... */ uch *hold; local_file_hdr lrec; /* used in unzip.c, extract.c */ cdir_file_hdr crec; /* used in unzip.c, extract.c, misc.c */ ecdir_rec ecrec; /* used in unzip.c, extract.c */ struct stat statbuf; /* used by main, mapname, check_for_newer */ int mem_mode; uch *outbufptr; /* extract.c static */ ulg outsize; /* extract.c static */ int reported_backslash; /* extract.c static */ int disk_full; int newfile; int didCRlast; /* fileio static */ ulg numlines; /* fileio static: number of lines printed */ int sol; /* fileio static: at start of line */ int no_ecrec; /* process static */#ifdef SYMLINKS int symlnk;#endif#ifdef NOVELL_BUG_FAILSAFE int dne; /* true if stat() says file doesn't exist */#endif FILE *outfile; uch *outbuf; uch *realbuf;#ifndef VMS /* if SMALL_MEM, outbuf2 is initialized in */ uch *outbuf2; /* process_zipfiles() (never changes); */#endif /* else malloc'd ONLY if unshrink and -a */#endif /* !FUNZIP */ uch *outptr; ulg outcnt; /* number of chars stored in outbuf */#ifndef FUNZIP char filename[FILNAMSIZ]; /* also used by NT for temporary SFX path */#ifdef CMS_MVS char *tempfn; /* temp file used; erase on close */#endif char *key; /* crypt static: decryption password or NULL */ int nopwd; /* crypt static */#endif /* !FUNZIP */ ulg keys[3]; /* crypt static: keys defining pseudo-random sequence */#if (!defined(DOS_FLX_H68_NLM_OS2_W32) && !defined(AMIGA) && !defined(RISCOS))#if (!defined(MACOS) && !defined(ATARI) && !defined(VMS)) int echofd; /* ttyio static: file descriptor whose echo is off */#endif /* !(MACOS || ATARI || VMS) */#endif /* !(DOS_FLX_H68_NLM_OS2_W32 || AMIGA || RISCOS) */ unsigned hufts; /* track memory usage */#ifdef USE_ZLIB int inflInit; /* inflate static: zlib inflate() initialized */ z_stream dstrm; /* inflate global: decompression stream */#else struct huft *fixed_tl; /* inflate static */ struct huft *fixed_td; /* inflate static */ int fixed_bl, fixed_bd; /* inflate static */#ifdef USE_DEFLATE64 struct huft *fixed_tl64; /* inflate static */ struct huft *fixed_td64; /* inflate static */ int fixed_bl64, fixed_bd64; /* inflate static */ struct huft *fixed_tl32; /* inflate static */ struct huft *fixed_td32; /* inflate static */ int fixed_bl32, fixed_bd32; /* inflate static */ ZCONST ush *cplens; /* inflate static */ ZCONST uch *cplext; /* inflate static */ ZCONST uch *cpdext; /* inflate static */#endif unsigned wp; /* inflate static: current position in slide */ ulg bb; /* inflate static: bit buffer */ unsigned bk; /* inflate static: bits in bit buffer */#endif /* ?USE_ZLIB */#ifndef FUNZIP#ifdef SMALL_MEM char rgchBigBuffer[512]; char rgchSmallBuffer[96]; char rgchSmallBuffer2[160]; /* boosted to 160 for local3[] in unzip.c */#endif MsgFn *message; InputFn *input; PauseFn *mpause; PasswdFn *decr_passwd; StatCBFn *statreportcb;#ifdef WINDLL LPUSERFUNCTIONS lpUserFunctions;#endif int incnt_leftover; /* so improved NEXTBYTE does not waste input */ uch *inptr_leftover;#ifdef VMS_TEXT_CONV unsigned VMS_line_length; /* so native VMS variable-length text files */ int VMS_line_state; /* are readable on other platforms */ int VMS_line_pad;#endif#if (defined(SFX) && defined(CHEAP_SFX_AUTORUN)) char autorun_command[FILNAMSIZ];#endif#endif /* !FUNZIP */#ifdef SYSTEM_SPECIFIC_GLOBALS SYSTEM_SPECIFIC_GLOBALS#endif} Uz_Globs; /* end of struct Globals *//***************************************************************************/#ifdef FUNZIP# if (!defined(USE_ZLIB) || defined(USE_OWN_CRCTAB)) extern ZCONST ulg near crc_32_tab[256];# else extern ZCONST ulg Far *crc_32_tab;# endif# define CRC_32_TAB crc_32_tab#else# define CRC_32_TAB G.crc_32_tab#endifUz_Globs *globalsCtor OF((void));/* pseudo constant sigs; they are initialized at runtime so unzip executable * won't look like a zipfile */extern char local_hdr_sig[4];extern char central_hdr_sig[4];extern char end_central_sig[4];/* extern char extd_local_sig[4]; NOT USED YET */#ifdef REENTRANT# define G (*(Uz_Globs *)pG)# define __G pG# define __G__ pG,# define __GPRO Uz_Globs *pG# define __GPRO__ Uz_Globs *pG,# define __GDEF Uz_Globs *pG;# ifdef USETHREADID extern int lastScan; void deregisterGlobalPointer OF((__GPRO)); Uz_Globs *getGlobalPointer OF((void));# define GETGLOBALS() Uz_Globs *pG = getGlobalPointer()# define DESTROYGLOBALS() do {free_G_buffers(pG); \ deregisterGlobalPointer(pG);} while (0)# else extern Uz_Globs *GG;# define GETGLOBALS() Uz_Globs *pG = GG# define DESTROYGLOBALS() do {free_G_buffers(pG); free(pG);} while (0)# endif /* ?USETHREADID */# define CONSTRUCTGLOBALS() Uz_Globs *pG = globalsCtor()#else /* !REENTRANT */ extern Uz_Globs G;# define __G# define __G__# define __GPRO void# define __GPRO__# define __GDEF# define GETGLOBALS()# define CONSTRUCTGLOBALS() globalsCtor()# define DESTROYGLOBALS()#endif /* ?REENTRANT */#define uO G.UzO#endif /* __globals_h */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -