diff options
-rw-r--r-- | sys/ddb/db_elf.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/ddb/db_elf.c b/sys/ddb/db_elf.c index 3493115..4ebdc8e 100644 --- a/sys/ddb/db_elf.c +++ b/sys/ddb/db_elf.c @@ -266,6 +266,11 @@ X_db_search_symbol(symtab, off, strategy, diffp) for (symp = symtab_start; symp < symtab_end; symp++) { if (symp->st_name == 0) continue; + if (ELF_ST_TYPE(symp->st_info) != STT_OBJECT && + ELF_ST_TYPE(symp->st_info) != STT_FUNC && + ELF_ST_TYPE(symp->st_info) != STT_NOTYPE) + continue; + if (off >= symp->st_value) { if ((off - symp->st_value) < diff) { diff = off - symp->st_value; |