aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvio Traversaro <silvio@traversaro.it>2022-04-08 19:13:40 +0200
committerGitHub <noreply@github.com>2022-04-08 19:13:40 +0200
commit9d0ef119d9fcb9139f831adc224857b791c81140 (patch)
tree17fd807334afd8cf69bbfa2202c109f4f61d26a1
parent123c746159233847b91648b39a4a5f6940a1ff2b (diff)
parente34fb598ac374b5764ac6cd0f0b7ecdd6df792b0 (diff)
downloaddlfcn-win32-9d0ef119d9fcb9139f831adc224857b791c81140.tar.gz
dlfcn-win32-9d0ef119d9fcb9139f831adc224857b791c81140.tar.bz2
dlfcn-win32-9d0ef119d9fcb9139f831adc224857b791c81140.zip
Merge pull request #103 from pali/masterv1.3.1
Replace magic numbers by sdk macros in get_image_section()
-rw-r--r--src/dlfcn.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/dlfcn.c b/src/dlfcn.c
index ad8dc3f..3a7ca64 100644
--- a/src/dlfcn.c
+++ b/src/dlfcn.c
@@ -597,14 +597,20 @@ char *dlerror( void )
597static BOOL get_image_section( HMODULE module, int index, void **ptr, DWORD *size ) 597static BOOL get_image_section( HMODULE module, int index, void **ptr, DWORD *size )
598{ 598{
599 IMAGE_DOS_HEADER *dosHeader; 599 IMAGE_DOS_HEADER *dosHeader;
600 IMAGE_NT_HEADERS *ntHeaders;
600 IMAGE_OPTIONAL_HEADER *optionalHeader; 601 IMAGE_OPTIONAL_HEADER *optionalHeader;
601 602
602 dosHeader = (IMAGE_DOS_HEADER *) module; 603 dosHeader = (IMAGE_DOS_HEADER *) module;
603 604
604 if( dosHeader->e_magic != 0x5A4D ) 605 if( dosHeader->e_magic != IMAGE_DOS_SIGNATURE )
605 return FALSE; 606 return FALSE;
606 607
607 optionalHeader = (IMAGE_OPTIONAL_HEADER *) ( (BYTE *) module + dosHeader->e_lfanew + 24 ); 608 ntHeaders = (IMAGE_NT_HEADERS *) ( (BYTE *) dosHeader + dosHeader->e_lfanew );
609
610 if( ntHeaders->Signature != IMAGE_NT_SIGNATURE )
611 return FALSE;
612
613 optionalHeader = &ntHeaders->OptionalHeader;
608 614
609 if( optionalHeader->Magic != IMAGE_NT_OPTIONAL_HDR_MAGIC ) 615 if( optionalHeader->Magic != IMAGE_NT_OPTIONAL_HDR_MAGIC )
610 return FALSE; 616 return FALSE;