mirror of
https://github.com/mangosfour/server.git
synced 2025-12-30 10:37:12 +00:00
Imported MaNGOS revision 6767 from http://mangos.svn.sourceforge.net/svnroot/mangos/trunk/
This commit is contained in:
parent
d767495d5b
commit
800ee76535
3322 changed files with 903437 additions and 0 deletions
88
contrib/vmap_extractor_v2/stormlib/SCommon.h
Normal file
88
contrib/vmap_extractor_v2/stormlib/SCommon.h
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
/*****************************************************************************/
|
||||
/* SCommon.h Copyright (c) Ladislav Zezula 2003 */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* Common functions for encryption/decryption from Storm.dll. Included by */
|
||||
/* SFile*** functions, do not include and do not use this file directly */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* Date Ver Who Comment */
|
||||
/* -------- ---- --- ------- */
|
||||
/* 24.03.03 1.00 Lad The first version of SFileCommon.h */
|
||||
/* 12.06.04 1.00 Lad Renamed to SCommon.h */
|
||||
/*****************************************************************************/
|
||||
|
||||
#ifndef __SCOMMON_H__
|
||||
#define __SCOMMON_H__
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// StormLib private defines
|
||||
|
||||
#define SFILE_TYPE_DATA 0 // Process the file as data file
|
||||
#define SFILE_TYPE_WAVE 1 // Process the file as WAVe file
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// External variables
|
||||
|
||||
extern TMPQArchive * pFirstOpen;
|
||||
extern LCID lcLocale;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Encryption and decryption functions
|
||||
|
||||
int PrepareStormBuffer();
|
||||
|
||||
void EncryptHashTable(DWORD * pdwTable, BYTE * pbKey, DWORD dwLength);
|
||||
void DecryptHashTable(DWORD * pdwTable, BYTE * pbKey, DWORD dwLength);
|
||||
TMPQHash * FindFreeHashEntry(TMPQArchive * ha, const char * szFileName);
|
||||
|
||||
void EncryptBlockTable(DWORD * pdwTable, BYTE * pbKey, DWORD dwLength);
|
||||
void DecryptBlockTable(DWORD * pdwTable, BYTE * pbKey, DWORD dwLength);
|
||||
|
||||
DWORD DetectFileSeed(DWORD * block, DWORD decrypted);
|
||||
DWORD DetectFileSeed2(DWORD * block, UINT nDwords, ...);
|
||||
void EncryptMPQBlock(DWORD * pdwBlock, DWORD dwLength, DWORD dwSeed1);
|
||||
void DecryptMPQBlock(DWORD * pdwBlock, DWORD dwLength, DWORD dwSeed1);
|
||||
|
||||
DWORD DecryptHashIndex(TMPQArchive * ha, const char * szFileName);
|
||||
DWORD DecryptName1 (const char * szFileName);
|
||||
DWORD DecryptName2 (const char * szFileName);
|
||||
DWORD DecryptFileSeed (const char * szFileName);
|
||||
|
||||
TMPQHash * GetHashEntry (TMPQArchive * ha, const char * szFileName);
|
||||
TMPQHash * GetHashEntryEx(TMPQArchive * ha, const char * szFileName, LCID lcLocale);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Compression and decompression functions
|
||||
|
||||
int Compress_pklib (char * pbOutBuffer, int * pdwOutLength, char * pbInBuffer, int dwInLength, int * pCmpType, int nCmpLevel);
|
||||
int Decompress_pklib(char * pbOutBuffer, int * pdwOutLength, char * pbInBuffer, int dwInLength);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Checking functions
|
||||
|
||||
BOOL IsValidMpqHandle(TMPQArchive * ha);
|
||||
BOOL IsValidFileHandle(TMPQFile * hf);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Other functions
|
||||
|
||||
BOOL SFileOpenArchiveEx(const char * szMpqName, DWORD dwPriority, DWORD dwFlags, HANDLE * phMPQ, DWORD dwAccessMode = GENERIC_READ);
|
||||
int AddFileToArchive(TMPQArchive * ha, HANDLE hFile, const char * szArchivedName, DWORD dwFlags, DWORD dwQuality, int nFileType, BOOL * pbReplaced);
|
||||
int SetDataCompression(int nDataCompression);
|
||||
int SaveMPQTables(TMPQArchive * ha);
|
||||
void FreeMPQArchive(TMPQArchive *& ha);
|
||||
|
||||
BOOL CheckWildCard(const char * szString, const char * szWildCard);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Listfile functions
|
||||
|
||||
int SListFileCreateListFile(TMPQArchive * ha);
|
||||
int SListFileAddNode(TMPQArchive * ha, const char * szAddedFile);
|
||||
int SListFileRemoveNode(TMPQArchive * ha, const char * szFileName);
|
||||
int SListFileRenameNode(TMPQArchive * ha, const char * szOldFileName, const char * szNewFileName);
|
||||
int SListFileFreeListFile(TMPQArchive * ha);
|
||||
|
||||
int SListFileSaveToMpq(TMPQArchive * ha);
|
||||
|
||||
#endif // __SCOMMON_H__
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue