2
Copyright (c) 1990-2000 Info-ZIP. All rights reserved.
4
See the accompanying file LICENSE, version 2000-Apr-09 or later
5
(the contents of which are also included in unzip.h) for terms of use.
6
If, for some reason, all these files are missing, the Info-ZIP license
7
also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html
9
/*---------------------------------------------------------------------------
13
OS/2-specific structures and data to be included in the global data struc-
16
---------------------------------------------------------------------------*/
20
#define MAXPATHLEN 256
21
#define MAXLEN 256 /* temporary buffer length */
22
#define IBUF_LEN 4096 /* input buffer length */
27
#define INCL_DOSPROCESS
28
#define INCL_DOSDEVICES
29
#define INCL_DOSDEVIOCTL
30
#define INCL_DOSERRORS
33
#if (defined(OS2DLL) && !defined(DLL))
47
ino_t d_ino; /* a bit of a farce */
48
int d_reclen; /* more farce */
49
int d_namlen; /* length of d_name */
50
char d_name[MAXNAMLEN + 1]; /* null terminated */
51
/* nonstandard fields */
52
long d_size; /* size in bytes */
53
unsigned d_mode; /* MS-DOS or OS/2 file attributes */
58
/* The fields d_size and d_mode are extensions by me (Kai Uwe Rommel). The
59
* find_first and find_next calls deliver these data without any extra cost.
60
* If these data are needed, the fields save a lot of extra calls to stat()
61
* (each stat() again performs a find_first call !).
68
unsigned _d_mode, _d_time, _d_date;
69
struct _dircontents *_d_next;
72
typedef struct _dirdesc
74
int dd_id; /* uniquely identify each open directory */
75
long dd_loc; /* where we are in directory entry is this */
76
struct _dircontents *dd_contents; /* pointer to contents of dir */
77
struct _dircontents *dd_cp; /* pointer to current position */
95
int created_dir; /* used by mapname(), checkdir() */
96
int renamed_fullpath; /* ditto */
97
int fnlen; /* ditto */
99
ULONG nLabelDrive; /* ditto */
103
int longnameEA; /* checkdir(), close_outfile() */
104
char *lastpathcomp; /* ditto */
108
USHORT nLastDrive, nResult;
111
ZCONST char *wildname;
112
char *dirname, matchname[FILNAMSIZ];
113
int notfirstcall, have_dirname, dirnamelen;
115
int rootlen; /* length of rootpath */
116
char *rootpath; /* user's "extract-to" directory */
117
char *buildpathHPFS; /* full path (so far) to extracted file, */
118
char *buildpathFAT; /* both HPFS/EA (main) and FAT versions */
119
char *endHPFS; /* corresponding pointers to end of */
120
char *endFAT; /* buildpath ('\0') */
123
char buffer[IBUF_LEN];
124
char output_var[MAXLEN];
125
char getvar_buf[MAXLEN];
139
#define SYSTEM_SPECIFIC_GLOBALS struct os2Global os2;
140
#define SYSTEM_SPECIFIC_CTOR os2GlobalsCtor
144
# define SYSTEM_API_BRIEF REXXBrief
145
# define SYSTEM_API_DETAILS REXXDetails
146
extern char *REXXBrief;
147
extern APIDocStruct REXXDetails[];