LIEF: Library to Instrument Executable Formats
Version 1.0.0
Toggle main menu visibility
Loading...
Searching...
No Matches
lief-install
x86_64
static
include
LIEF
PE
PE/Binary.h
Go to the documentation of this file.
1
/* Copyright 2017 - 2026 R. Thomas
2
* Copyright 2017 - 2026 Quarkslab
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
#ifndef C_LIEF_PE_BINARY_H_
17
#define C_LIEF_PE_BINARY_H_
18
19
#include <stddef.h>
20
21
#include "
LIEF/visibility.h
"
22
23
#include "
LIEF/PE/enums.h
"
24
25
#include "
LIEF/PE/DosHeader.h
"
26
#include "
LIEF/PE/Header.h
"
27
#include "
LIEF/PE/OptionalHeader.h
"
28
#include "
LIEF/PE/DataDirectory.h
"
29
#include "
LIEF/PE/Section.h
"
30
#include "
LIEF/PE/Import.h
"
31
32
#ifdef __cplusplus
33
extern
"C"
{
34
#endif
35
37
struct
Pe_Binary_t
{
38
void
*
handler
;
39
Pe_DosHeader_t
dos_header
;
40
Pe_Header_t
header
;
41
Pe_OptionalHeader_t
optional_header
;
42
Pe_DataDirectory_t
**
data_directories
;
43
Pe_Section_t
**
sections
;
44
Pe_Import_t
**
imports
;
45
};
46
47
typedef
struct
Pe_Binary_t
Pe_Binary_t
;
48
50
LIEF_API
Pe_Binary_t
*
pe_parse
(
const
char
*file);
51
52
LIEF_API
void
pe_binary_destroy
(
Pe_Binary_t
* binary);
53
54
#ifdef __cplusplus
55
}
56
#endif
57
58
#endif
DataDirectory.h
DosHeader.h
Import.h
OptionalHeader.h
pe_parse
Pe_Binary_t * pe_parse(const char *file)
pe_binary_destroy
void pe_binary_destroy(Pe_Binary_t *binary)
Header.h
Section.h
enums.h
Pe_Binary_t
LIEF::PE::Binary C Handler.
Definition
PE/Binary.h:37
Pe_Binary_t::data_directories
Pe_DataDirectory_t ** data_directories
Definition
PE/Binary.h:42
Pe_Binary_t::dos_header
Pe_DosHeader_t dos_header
Definition
PE/Binary.h:39
Pe_Binary_t::handler
void * handler
Definition
PE/Binary.h:38
Pe_Binary_t::sections
Pe_Section_t ** sections
Definition
PE/Binary.h:43
Pe_Binary_t::header
Pe_Header_t header
Definition
PE/Binary.h:40
Pe_Binary_t::imports
Pe_Import_t ** imports
Definition
PE/Binary.h:44
Pe_Binary_t::optional_header
Pe_OptionalHeader_t optional_header
Definition
PE/Binary.h:41
Pe_DataDirectory_t
Definition
DataDirectory.h:49
Pe_DosHeader_t
Definition
DosHeader.h:26
Pe_Header_t
Definition
PE/Header.h:75
Pe_Import_t
Definition
Import.h:28
Pe_OptionalHeader_t
Definition
OptionalHeader.h:59
Pe_Section_t
Definition
PE/Section.h:66
visibility.h
LIEF_API
#define LIEF_API
Definition
visibility.h:41
Generated by
1.17.0