BearParser
Portable Executable parsing library (from PE-bear)
Loading...
Searching...
No Matches
parser
include
bearparser
pe
SecurityDirWrapper.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
DataDirEntryWrapper.h
"
4
5
/*
6
typedef struct WIN_CERTIFICATE {
7
DWORD dwLength;
8
WORD wRevision;
9
WORD wCertificateType;
10
BYTE bCertificate[];
11
} WIN_CERTIFICATE, *LPWIN_CERTIFICATE;
12
*/
13
14
class
SecurityDirWrapper
:
public
DataDirEntryWrapper
15
{
16
public
:
17
18
enum
SecurityDirFID
{
19
NONE
=
FIELD_NONE
,
20
CERT_LEN
= 0,
21
REVISION
,
22
TYPE
,
23
CERT_CONTENT
,
24
FIELD_COUNTER
25
};
26
27
SecurityDirWrapper
(
PEFile
* pe)
28
:
DataDirEntryWrapper
(pe, pe::DIR_SECURITY), sizeOk(false)
29
{
30
wrap
();
31
}
32
33
~SecurityDirWrapper
() { clear(); }
34
35
bool
wrap
();
36
37
virtual
void
*
getPtr
();
38
39
virtual
bufsize_t
getSize
();
40
virtual
QString
getName
() {
return
"Security"
; }
41
virtual
size_t
getFieldsCount
() {
return
FIELD_COUNTER
; }
42
virtual
size_t
getSubFieldsCount
() {
return
1; }
43
44
virtual
void
*
getFieldPtr
(
size_t
fieldId,
size_t
subField);
45
virtual
QString
getFieldName
(
size_t
fieldId);
46
virtual
WrappedValue::data_type
containsDataType
(
size_t
fieldId,
size_t
subField =
FIELD_NONE
);
47
48
QString
translateType
(
int
type);
49
virtual
QString
translateFieldContent
(
size_t
fieldId);
50
51
private
:
52
pe::WIN_CERTIFICATE* getCert();
53
void
clear() {}
54
55
bool
sizeOk;
56
};
bufsize_t
size_t bufsize_t
Definition
AbstractByteBuffer.h:17
DataDirEntryWrapper.h
FIELD_NONE
#define FIELD_NONE
Definition
ExeElementWrapper.h:9
DataDirEntryWrapper::PEFile
friend class PEFile
Definition
DataDirEntryWrapper.h:22
DataDirEntryWrapper::DataDirEntryWrapper
DataDirEntryWrapper(PEFile *pe, pe::dir_entry v_entryType)
Definition
DataDirEntryWrapper.cpp:4
SecurityDirWrapper::translateFieldContent
virtual QString translateFieldContent(size_t fieldId)
Definition
SecurityDirWrapper.cpp:97
SecurityDirWrapper::SecurityDirFID
SecurityDirFID
Definition
SecurityDirWrapper.h:18
SecurityDirWrapper::TYPE
@ TYPE
Definition
SecurityDirWrapper.h:22
SecurityDirWrapper::NONE
@ NONE
Definition
SecurityDirWrapper.h:19
SecurityDirWrapper::CERT_LEN
@ CERT_LEN
Definition
SecurityDirWrapper.h:20
SecurityDirWrapper::REVISION
@ REVISION
Definition
SecurityDirWrapper.h:21
SecurityDirWrapper::FIELD_COUNTER
@ FIELD_COUNTER
Definition
SecurityDirWrapper.h:24
SecurityDirWrapper::CERT_CONTENT
@ CERT_CONTENT
Definition
SecurityDirWrapper.h:23
SecurityDirWrapper::getFieldName
virtual QString getFieldName(size_t fieldId)
Definition
SecurityDirWrapper.cpp:67
SecurityDirWrapper::getPtr
virtual void * getPtr()
Definition
SecurityDirWrapper.cpp:35
SecurityDirWrapper::getFieldsCount
virtual size_t getFieldsCount()
Definition
SecurityDirWrapper.h:41
SecurityDirWrapper::SecurityDirWrapper
SecurityDirWrapper(PEFile *pe)
Definition
SecurityDirWrapper.h:27
SecurityDirWrapper::~SecurityDirWrapper
~SecurityDirWrapper()
Definition
SecurityDirWrapper.h:33
SecurityDirWrapper::getSize
virtual bufsize_t getSize()
Definition
SecurityDirWrapper.cpp:40
SecurityDirWrapper::containsDataType
virtual WrappedValue::data_type containsDataType(size_t fieldId, size_t subField=FIELD_NONE)
Definition
SecurityDirWrapper.cpp:78
SecurityDirWrapper::getName
virtual QString getName()
Definition
SecurityDirWrapper.h:40
SecurityDirWrapper::translateType
QString translateType(int type)
Definition
SecurityDirWrapper.cpp:86
SecurityDirWrapper::getSubFieldsCount
virtual size_t getSubFieldsCount()
Definition
SecurityDirWrapper.h:42
SecurityDirWrapper::wrap
bool wrap()
Definition
SecurityDirWrapper.cpp:14
SecurityDirWrapper::getFieldPtr
virtual void * getFieldPtr(size_t fieldId, size_t subField)
Definition
SecurityDirWrapper.cpp:53
WrappedValue::data_type
data_type
Definition
WrappedValue.h:15
Generated by
1.13.2