Copyright (c) 1990-2005 Info-ZIP. All rights reserved.
See the accompanying file LICENSE, version 2004-May-22 or later
(the contents of which are also included in zip.h) for terms of use.
If, for some reason, both of these files are missing, the Info-ZIP license
also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html
*/
#ifndef _ZIPAPI_H
#define _ZIPAPI_H
#include "zip.h"
#ifdef WIN32
# ifndef PATH_MAX
# define PATH_MAX 260
# endif
#else
# ifndef PATH_MAX
# define PATH_MAX 128
# endif
#endif
#if defined(WINDLL) || defined(API)
#include <windows.h>
#ifdef WIN32
# define far
# define _far
# define __far
# define near
# define _near
# define __near
#endif
Prototypes for public Zip API (DLL) functions.
---------------------------------------------------------------------------*/
#define ZPVER_LEN sizeof(ZpVer)
with a dll.
*/
#define D2_MAJORVER 0
#define D2_MINORVER 0
#define D2_PATCHLEVEL 0
typedef struct _zip_ver {
uch major;
uch minor;
uch patchlevel;
uch not_used;
} _zip_version_type;
typedef struct _ZpVer {
ulg structlen;
ulg flag;
char betalevel[10];
char date[20];
char zlib_version[10];
_zip_version_type zip;
_zip_version_type os2dll;
_zip_version_type windll;
} ZpVer;
# ifndef EXPENTRY
# define EXPENTRY WINAPI
# endif
#ifndef DEFINED_ONCE
#define DEFINED_ONCE
typedef int (WINAPI DLLPRNT) (LPSTR, unsigned long);
typedef int (WINAPI DLLPASSWORD) (LPSTR, int, LPCSTR, LPCSTR);
typedef int (WINAPI DLLSERVICE) (LPCSTR, unsigned long);
#endif
typedef int (WINAPI DLLCOMMENT)(LPSTR);
typedef struct {
LPSTR Date;
LPSTR szRootDir;
LPSTR szTempDir;
BOOL fTemp;
BOOL fSuffix;
BOOL fEncrypt;
BOOL fSystem;
BOOL fVolume;
BOOL fExtra;
BOOL fNoDirEntries;
BOOL fExcludeDate;
BOOL fIncludeDate;
BOOL fVerbose;
BOOL fQuiet;
BOOL fCRLF_LF;
BOOL fLF_CRLF;
BOOL fJunkDir;
BOOL fGrow;
BOOL fForce;
BOOL fMove;
BOOL fDeleteEntries;
BOOL fUpdate;
BOOL fFreshen;
BOOL fJunkSFX;
BOOL fLatestTime;
BOOL fComment;
BOOL fOffsets;
BOOL fPrivilege;
BOOL fEncryption;
this is a read only flag */
int fRecurse;
int fRepair;
char fLevel;
} ZPOPT, _far *LPZPOPT;
typedef struct {
int argc;
LPSTR lpszZipFN;
char **FNV;
} ZCL, _far *LPZCL;
typedef struct {
DLLPRNT *print;
DLLCOMMENT *comment;
DLLPASSWORD *password;
DLLSERVICE *ServiceApplication;
} ZIPUSERFUNCTIONS, far * LPZIPUSERFUNCTIONS;
extern LPZIPUSERFUNCTIONS lpZipUserFunctions;
void EXPENTRY ZpVersion(ZpVer far *);
int EXPENTRY ZpInit(LPZIPUSERFUNCTIONS lpZipUserFunc);
BOOL EXPENTRY ZpSetOptions(LPZPOPT Opts);
ZPOPT EXPENTRY ZpGetOptions(void);
int EXPENTRY ZpArchive(ZCL C);
#if defined(ZIPLIB) || defined(COM_OBJECT)
# define ydays zp_ydays
#endif
#if 0
int EXPENTRY ZpMain (int argc, char **argv);
int EXPENTRY ZpAltMain (int argc, char **argv, ZpInit *init);
#endif
#endif
#endif