about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mallochook.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mallochook.c b/src/mallochook.c
index 4c636dd4..f63a85bd 100644
--- a/src/mallochook.c
+++ b/src/mallochook.c
@@ -779,7 +779,7 @@ void checkHookedSymbols(elfheader_t* h)
     for (size_t i=0; i<h->numSymTab; ++i) {
         int type = ELF64_ST_TYPE(h->SymTab[i].st_info);
         int sz = ELF64_ST_TYPE(h->SymTab[i].st_size);
-        if(type==STT_FUNC && sz) {
+        if((type==STT_FUNC) && sz && (h->SymTab[i].st_shndx!=0 && h->SymTab[i].st_shndx<=65521)) {
             const char * symname = h->StrTab+h->SymTab[i].st_name;
             #define GO(A, B) if(!strcmp(symname, #A)) ++hooked; else if(!strcmp(symname, "__libc_" #A)) ++hooked;
             #define GO2(A, B)