unzip.c File Reference

#include "unzip.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include "crypt.h"
Include dependency graph for unzip.c:

Go to the source code of this file.

Data Structures

struct  unz_file_info_internal_s
struct  file_in_zip_read_info_s
struct  unz_s

Defines

#define local   static
#define CASESENSITIVITYDEFAULT_NO
#define UNZ_BUFSIZE   (16384)
#define UNZ_MAXFILENAMEINZIP   (256)
#define ALLOC(size)   (malloc(size))
#define TRYFREE(p)   {if (p) free(p);}
#define SIZECENTRALDIRITEM   (0x2e)
#define SIZEZIPLOCALHEADER   (0x1e)
#define CASESENSITIVITYDEFAULTVALUE   2
#define STRCMPCASENOSENTIVEFUNCTION   strcmpcasenosensitive_internal
#define BUFREADCOMMENT   (0x400)

Typedefs

typedef struct
unz_file_info_internal_s 
unz_file_info_internal

Functions

local int unzlocal_getByte OF ((const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, int *pi))
local int unzlocal_getByte (zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, int *pi) const
local int unzlocal_getShort OF ((const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, uLong *pX))
local int unzlocal_getShort (zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) const
local int unzlocal_getLong (zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) const
local int strcmpcasenosensitive_internal (char *fileName1, const char *fileName2) const
int ZEXPORT unzStringFileNameCompare (char *fileName1, const char *fileName2, int iCaseSensitivity) const
local uLong
unzlocal_SearchCentralDir 
OF ((const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream))
local uLong unzlocal_SearchCentralDir (zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream) const
unzFile ZEXPORT unzOpen2 (char *path, zlib_filefunc_def *pzlib_filefunc_def) const
unzFile ZEXPORT unzOpen (char *path) const
int ZEXPORT unzClose (unzFile file)
int ZEXPORT unzGetGlobalInfo (unzFile file, unz_global_info *pglobal_info)
local void unzlocal_DosDateToTmuDate (uLong ulDosDate, tm_unz *ptm)
local int
unzlocal_GetCurrentFileInfoInternal 
OF ((unzFile file, unz_file_info *pfile_info, unz_file_info_internal *pfile_info_internal, char *szFileName, uLong fileNameBufferSize, void *extraField, uLong extraFieldBufferSize, char *szComment, uLong commentBufferSize))
 Get info about the current file in the zipfile, with internal only info.
local int unzlocal_GetCurrentFileInfoInternal (unzFile file, unz_file_info *pfile_info, unz_file_info_internal *pfile_info_internal, char *szFileName, uLong fileNameBufferSize, void *extraField, uLong extraFieldBufferSize, char *szComment, uLong commentBufferSize)
int ZEXPORT unzGetCurrentFileInfo (unzFile file, unz_file_info *pfile_info, char *szFileName, uLong fileNameBufferSize, void *extraField, uLong extraFieldBufferSize, char *szComment, uLong commentBufferSize)
int ZEXPORT unzGoToFirstFile (unzFile file)
int ZEXPORT unzGoToNextFile (unzFile file)
int ZEXPORT unzLocateFile (unzFile file, const char *szFileName, int iCaseSensitivity)
int ZEXPORT unzGetFilePos (unzFile file, unz_file_pos *file_pos)
int ZEXPORT unzGoToFilePos (unzFile file, unz_file_pos *file_pos)
local int unzlocal_CheckCurrentFileCoherencyHeader (unz_s *s, uInt *piSizeVar, uLong *poffset_local_extrafield, uInt *psize_local_extrafield)
int ZEXPORT unzOpenCurrentFile3 (unzFile file, int *method, int *level, int raw, const char *password)
int ZEXPORT unzOpenCurrentFile (unzFile file)
int ZEXPORT unzOpenCurrentFilePassword (unzFile file, const char *password)
int ZEXPORT unzOpenCurrentFile2 (unzFile file, int *method, int *level, int raw)
int ZEXPORT unzReadCurrentFile (unzFile file, voidp buf, unsigned len)
z_off_t ZEXPORT unztell (unzFile file)
int ZEXPORT unzeof (unzFile file)
int ZEXPORT unzGetLocalExtrafield (unzFile file, voidp buf, unsigned len)
int ZEXPORT unzCloseCurrentFile (unzFile file)
int ZEXPORT unzGetGlobalComment (unzFile file, char *szComment, uLong uSizeBuf)
uLong ZEXPORT unzGetOffset (unzFile file)
int ZEXPORT unzSetOffset (unzFile file, uLong pos)
int ZEXPORT unzSetCurrentFileInfoPosition (unzFile file, unsigned long pos)
int ZEXPORT unzGetCurrentFileInfoPosition (unzFile file, unsigned long *pos)

Variables

const char unz_copyright []

Define Documentation

#define ALLOC ( size   )     (malloc(size))

Definition at line 76 of file unzip.c.

Referenced by unzlocal_SearchCentralDir(), unzOpen2(), and unzOpenCurrentFile3().

#define BUFREADCOMMENT   (0x400)

Definition at line 318 of file unzip.c.

Referenced by unzlocal_SearchCentralDir().

#define CASESENSITIVITYDEFAULT_NO

Definition at line 62 of file unzip.c.

#define CASESENSITIVITYDEFAULTVALUE   2

Definition at line 285 of file unzip.c.

Referenced by unzStringFileNameCompare().

#define local   static

Definition at line 55 of file unzip.c.

#define SIZECENTRALDIRITEM   (0x2e)

Definition at line 82 of file unzip.c.

Referenced by unzGoToNextFile().

#define SIZEZIPLOCALHEADER   (0x1e)

Definition at line 83 of file unzip.c.

Referenced by unzlocal_CheckCurrentFileCoherencyHeader(), and unzOpenCurrentFile3().

#define STRCMPCASENOSENTIVEFUNCTION   strcmpcasenosensitive_internal

Definition at line 291 of file unzip.c.

Referenced by unzStringFileNameCompare().

#define TRYFREE (  )     {if (p) free(p);}
#define UNZ_BUFSIZE   (16384)

Definition at line 68 of file unzip.c.

Referenced by unzOpenCurrentFile3(), and unzReadCurrentFile().

#define UNZ_MAXFILENAMEINZIP   (256)

Definition at line 72 of file unzip.c.

Referenced by unzLocateFile().


Typedef Documentation


Function Documentation

local int unzlocal_GetCurrentFileInfoInternal OF ( (unzFile file, unz_file_info *pfile_info, unz_file_info_internal *pfile_info_internal, char *szFileName, uLong fileNameBufferSize, void *extraField, uLong extraFieldBufferSize, char *szComment, uLong commentBufferSize)   ) 

Get info about the current file in the zipfile, with internal only info.

Todo:
Describe parameters and the two headers.
local uLong unzlocal_SearchCentralDir OF ( (const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream)   ) 
local int unzlocal_getLong OF ( (const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, uLong *pX)   ) 
local int unzlocal_getByte OF ( (const zlib_filefunc_def *pzlib_filefunc_def, voidpf filestream, int *pi)   ) 
local int strcmpcasenosensitive_internal ( char*  fileName1,
const char*  fileName2 
) const

Definition at line 260 of file unzip.c.

int ZEXPORT unzClose ( unzFile  file  ) 
int ZEXPORT unzCloseCurrentFile ( unzFile  file  ) 
int ZEXPORT unzeof ( unzFile  file  ) 
int ZEXPORT unzGetCurrentFileInfo ( unzFile  file,
unz_file_info pfile_info,
char *  szFileName,
uLong  fileNameBufferSize,
void *  extraField,
uLong  extraFieldBufferSize,
char *  szComment,
uLong  commentBufferSize 
)

Definition at line 748 of file unzip.c.

References unzlocal_GetCurrentFileInfoInternal().

Referenced by FS_LoadPackFile(), FS_OpenFileSingle(), and unzLocateFile().

int ZEXPORT unzGetCurrentFileInfoPosition ( unzFile  file,
unsigned long *  pos 
)

Definition at line 1630 of file unzip.c.

References unz_s::pos_in_central_dir, UNZ_OK, and UNZ_PARAMERROR.

Referenced by FS_LoadPackFile(), and FS_OpenFileSingle().

int ZEXPORT unzGetFilePos ( unzFile  file,
unz_file_pos file_pos 
)
int ZEXPORT unzGetGlobalComment ( unzFile  file,
char *  szComment,
uLong  uSizeBuf 
)
int ZEXPORT unzGetGlobalInfo ( unzFile  file,
unz_global_info pglobal_info 
)

Definition at line 530 of file unzip.c.

References unz_s::gi, UNZ_OK, and UNZ_PARAMERROR.

Referenced by FS_LoadPackFile().

int ZEXPORT unzGetLocalExtrafield ( unzFile  file,
voidp  buf,
unsigned  len 
)
uLong ZEXPORT unzGetOffset ( unzFile  file  ) 
int ZEXPORT unzGoToFilePos ( unzFile  file,
unz_file_pos file_pos 
)
int ZEXPORT unzGoToFirstFile ( unzFile  file  ) 
int ZEXPORT unzGoToNextFile ( unzFile  file  ) 
local int unzlocal_CheckCurrentFileCoherencyHeader ( unz_s s,
uInt*  piSizeVar,
uLong *  poffset_local_extrafield,
uInt *  psize_local_extrafield 
)
local void unzlocal_DosDateToTmuDate ( uLong  ulDosDate,
tm_unz ptm 
)
local int unzlocal_getByte ( zlib_filefunc_def pzlib_filefunc_def,
voidpf  filestream,
int *  pi 
) const

Definition at line 169 of file unzip.c.

References int(), UNZ_EOF, UNZ_ERRNO, UNZ_OK, ZERROR, and ZREAD.

Referenced by unzlocal_getLong(), and unzlocal_getShort().

local int unzlocal_GetCurrentFileInfoInternal ( unzFile  file,
unz_file_info pfile_info,
unz_file_info_internal pfile_info_internal,
char *  szFileName,
uLong  fileNameBufferSize,
void *  extraField,
uLong  extraFieldBufferSize,
char *  szComment,
uLong  commentBufferSize 
)
local int unzlocal_getLong ( zlib_filefunc_def pzlib_filefunc_def,
voidpf  filestream,
uLong *  pX 
) const
local int unzlocal_getShort ( zlib_filefunc_def pzlib_filefunc_def,
voidpf  filestream,
uLong *  pX 
) const
local uLong unzlocal_SearchCentralDir ( zlib_filefunc_def pzlib_filefunc_def,
voidpf  filestream 
) const

Definition at line 329 of file unzip.c.

References ALLOC, BUFREADCOMMENT, i, TRYFREE, uLong(), ZLIB_FILEFUNC_SEEK_END, ZLIB_FILEFUNC_SEEK_SET, ZREAD, ZSEEK, and ZTELL.

Referenced by unzOpen2().

int ZEXPORT unzLocateFile ( unzFile  file,
const char *  szFileName,
int  iCaseSensitivity 
)
unzFile ZEXPORT unzOpen ( char *  path  )  const

Definition at line 498 of file unzip.c.

References unzOpen2().

Referenced by FS_LoadPackFile().

unzFile ZEXPORT unzOpen2 ( char *  path,
zlib_filefunc_def pzlib_filefunc_def 
) const
int ZEXPORT unzOpenCurrentFile ( unzFile  file  ) 

Definition at line 1197 of file unzip.c.

References unzOpenCurrentFile3().

Referenced by FS_OpenFileSingle(), and FS_Seek().

int ZEXPORT unzOpenCurrentFile2 ( unzFile  file,
int*  method,
int*  level,
int  raw 
)

Definition at line 1210 of file unzip.c.

References unzOpenCurrentFile3().

int ZEXPORT unzOpenCurrentFile3 ( unzFile  file,
int*  method,
int*  level,
int  raw,
const char*  password 
)
int ZEXPORT unzOpenCurrentFilePassword ( unzFile  file,
const char*  password 
)

Definition at line 1203 of file unzip.c.

References unzOpenCurrentFile3().

int ZEXPORT unzReadCurrentFile ( unzFile  file,
voidp  buf,
unsigned  len 
)
int ZEXPORT unzSetCurrentFileInfoPosition ( unzFile  file,
unsigned long  pos 
)
int ZEXPORT unzSetOffset ( unzFile  file,
uLong  pos 
)
int ZEXPORT unzStringFileNameCompare ( char*  fileName1,
const char*  fileName2,
int  iCaseSensitivity 
) const

Definition at line 303 of file unzip.c.

References CASESENSITIVITYDEFAULTVALUE, and STRCMPCASENOSENTIVEFUNCTION.

Referenced by unzLocateFile().

z_off_t ZEXPORT unztell ( unzFile  file  ) 

Variable Documentation

const char unz_copyright[]
Initial value:
   " unzip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"

Definition at line 88 of file unzip.c.

Referenced by unzOpen2().


Generated by  doxygen 1.6.2