plptools
Loading...
Searching...
No Matches
sisfileheader.h
Go to the documentation of this file.
1
/*
2
* This file is part of plptools.
3
*
4
* Copyright (C) 2002 Daniel Brahneborg <basic.chello@se>
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License along
17
* along with this program; if not, see <https://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef _SISFILEHEADER_H
21
#define _SISFILEHEADER_H
22
23
#include "
sistypes.h
"
24
31
class
SISFileHeader
32
{
33
public
:
34
38
SisRC
compareApp
(
SISFileHeader
* other);
39
48
SisRC
fillFrom
(uint8_t* buf,
int
* base, off_t len);
49
53
void
setDrive
(
char
drive);
54
58
void
setFiles
(
int
nFiles);
59
60
enum
FileOptions
{
61
op_isUnicode
= 1,
62
op_isDistributable
= 2
63
#ifdef EPOC6
64
,
65
op_noCompress = 8,
66
op_shutdownApps = 16
67
#endif
68
};
69
70
enum
FileType
{
71
FT_App
= 0
72
#ifdef EPOC6
73
,
74
FT_System = 1,
75
FT_Option = 2,
76
FT_Config = 3,
77
FT_Patch = 4,
78
FT_Upgrade = 5
79
#endif
80
};
81
82
uint32_t
m_uid1
;
83
uint32_t
m_uid2
;
84
uint32_t
m_uid3
;
85
uint32_t
m_uid4
;
86
uint16_t
m_crc
;
87
uint16_t
m_nlangs
;
88
uint16_t
m_nfiles
;
89
uint16_t
m_nreqs
;
90
uint16_t
m_installationLanguage
;
91
uint16_t
m_installationFiles
;
92
uint32_t
m_installationDrive
;
93
uint32_t
m_installerVersion
;
94
uint16_t
m_options
;
95
uint16_t
m_type
;
96
uint16_t
m_major
;
97
uint16_t
m_minor
;
98
uint32_t
m_variant
;
99
uint32_t
m_languagePtr
;
100
uint32_t
m_filesPtr
;
101
uint32_t
m_reqPtr
;
102
uint32_t
m_unknown
;
103
uint32_t
m_componentPtr
;
104
105
private
:
106
107
uint8_t*
m_buf
;
108
109
};
110
111
#endif
SISFileHeader
The first part of a SISFile.
Definition:
sisfileheader.h:32
SISFileHeader::m_reqPtr
uint32_t m_reqPtr
Definition:
sisfileheader.h:101
SISFileHeader::m_buf
uint8_t * m_buf
Definition:
sisfileheader.h:107
SISFileHeader::m_uid3
uint32_t m_uid3
Definition:
sisfileheader.h:84
SISFileHeader::setFiles
void setFiles(int nFiles)
Update the number of installed files, and patch the parsed buffer.
Definition:
sisfileheader.cpp:162
SISFileHeader::m_uid1
uint32_t m_uid1
Definition:
sisfileheader.h:82
SISFileHeader::compareApp
SisRC compareApp(SISFileHeader *other)
Compare uid and version number of this file, with another.
Definition:
sisfileheader.cpp:31
SISFileHeader::setDrive
void setDrive(char drive)
Update the drive letter, and patch the parsed buffer.
Definition:
sisfileheader.cpp:152
SISFileHeader::m_uid4
uint32_t m_uid4
Definition:
sisfileheader.h:85
SISFileHeader::m_componentPtr
uint32_t m_componentPtr
Definition:
sisfileheader.h:103
SISFileHeader::m_languagePtr
uint32_t m_languagePtr
Definition:
sisfileheader.h:99
SISFileHeader::FileType
FileType
Definition:
sisfileheader.h:70
SISFileHeader::FT_App
@ FT_App
Definition:
sisfileheader.h:71
SISFileHeader::m_filesPtr
uint32_t m_filesPtr
Definition:
sisfileheader.h:100
SISFileHeader::fillFrom
SisRC fillFrom(uint8_t *buf, int *base, off_t len)
Populate the fields.
Definition:
sisfileheader.cpp:47
SISFileHeader::m_uid2
uint32_t m_uid2
Definition:
sisfileheader.h:83
SISFileHeader::m_nlangs
uint16_t m_nlangs
Definition:
sisfileheader.h:87
SISFileHeader::m_major
uint16_t m_major
Definition:
sisfileheader.h:96
SISFileHeader::m_variant
uint32_t m_variant
Definition:
sisfileheader.h:98
SISFileHeader::m_unknown
uint32_t m_unknown
Definition:
sisfileheader.h:102
SISFileHeader::m_installerVersion
uint32_t m_installerVersion
Definition:
sisfileheader.h:93
SISFileHeader::m_nreqs
uint16_t m_nreqs
Definition:
sisfileheader.h:89
SISFileHeader::m_type
uint16_t m_type
Definition:
sisfileheader.h:95
SISFileHeader::m_crc
uint16_t m_crc
Definition:
sisfileheader.h:86
SISFileHeader::m_minor
uint16_t m_minor
Definition:
sisfileheader.h:97
SISFileHeader::FileOptions
FileOptions
Definition:
sisfileheader.h:60
SISFileHeader::op_isUnicode
@ op_isUnicode
Definition:
sisfileheader.h:61
SISFileHeader::op_isDistributable
@ op_isDistributable
Definition:
sisfileheader.h:62
SISFileHeader::m_installationLanguage
uint16_t m_installationLanguage
Definition:
sisfileheader.h:90
SISFileHeader::m_installationFiles
uint16_t m_installationFiles
Definition:
sisfileheader.h:91
SISFileHeader::m_nfiles
uint16_t m_nfiles
Definition:
sisfileheader.h:88
SISFileHeader::m_options
uint16_t m_options
Definition:
sisfileheader.h:94
SISFileHeader::m_installationDrive
uint32_t m_installationDrive
Definition:
sisfileheader.h:92
sistypes.h
SisRC
SisRC
Return Codes.
Definition:
sistypes.h:29
lib
sisfileheader.h
Generated by
1.9.5