• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Gallopsled / pwntools / 13989819722
74%
dev: 19%

Build:
Build:
LAST BUILD BRANCH: master
DEFAULT BRANCH: dev
Ran 21 Mar 2025 10:43AM UTC
Jobs 1
Files 151
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Mar 2025 10:34AM UTC coverage: 73.737% (+0.03%) from 73.71%
13989819722

push

github

web-flow
Show ELF symbols defined to value 0 (#2451)

Lets say we have an ELF with the following symbols

```
Symbol table '.symtab' contains 5 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND
     1: 0000000000000035     0 NOTYPE  LOCAL  DEFAULT    2 aaaa
     2: 0000000000000022     0 NOTYPE  LOCAL  DEFAULT    2 bbbb
     3: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT    2 cccc
     4: 0000000000000054     0 NOTYPE  GLOBAL DEFAULT    2 dddd
```

Then pwnlib's ELF(binary).symbols will be `{'aaaa': 53, 'bbbb': 34, 'dddd': 84}`.
This is missing the symbol `cccc`, because its value is 0.

This change checks the name instead of the value, because the value can
be 0 if the symbol points to the beginning.

The new and correct value of pwnlib's ELF(binary).symbols will be
`{'aaaa': 53, 'cccc': 0, 'bbbb': 34, 'dddd': 84}`.

* Do not unresolve zeros
* Do not add undefined symbols

Co-authored-by: peace-maker <peacemakerctf@gmail.com>
Co-authored-by: Arusekk <floss@arusekk.pl>

3737 of 6290 branches covered (59.41%)

13151 of 17835 relevant lines covered (73.74%)

0.74 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
69
83.19
-0.02% pwnlib/elf/elf.py
Jobs
ID Job ID Ran Files Coverage
1 13989819722.1 21 Mar 2025 10:43AM UTC 151
73.74
GitHub Action Run
Source Files on build 13989819722
  • Tree
  • List 151
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 6739525e on github
  • Prev Build on stable (#13942382876)
  • Next Build on stable (#14000734057)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc