Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Asserts when encountering invalid files

Aperta
#45 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
python
Ambito
cli

Direzione di ricerca

The reported entry point is /usr/bin/dlopen-notes, especially read_dlopen_notes and the argument loop around line 142. Start by tracing how filenames are opened and how invalid, missing, and directory inputs reach ELFFile. Add coverage for those inputs and verify the command avoids assertions as requested.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Version: 0.11-1
systemd: 256.9-1
kernel: 6.12.4-arch1-1

While writing a script to find all dl-opened libraries on a system, I ran into this assert when encountering .py files:

Traceback (most recent call last):
  File "/usr/bin/dlopen-notes", line 142, in <module>
    notes = [read_dlopen_notes(filename) for filename in args.filenames]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/bin/dlopen-notes", line 24, in wrap
    return list(f(*args, **kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/bin/dlopen-notes", line 29, in read_dlopen_notes
    elffile = ELFFile(open(filename, 'rb'))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/elftools/elf/elffile.py", line 84, in __init__
    self._identify_file()
  File "/usr/lib/python3.12/site-packages/elftools/elf/elffile.py", line 570, in _identify_file
    elf_assert(magic == b'\x7fELF', 'Magic number does not match')
  File "/usr/lib/python3.12/site-packages/elftools/common/utils.py", line 80, in elf_assert
    _assert_with_exception(cond, msg, ELFError)
  File "/usr/lib/python3.12/site-packages/elftools/common/utils.py", line 143, in _assert_with_exception
    raise exception_type(msg)
elftools.common.exceptions.ELFError: Magic number does not match

Ideally, invalid & non-existent files (& directories) wouldn't cause asserts like this.

Lingua principale
Python
Stelle
28
Fork
15
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di systemd/package-notes

Tutte le issue di systemd/package-notes

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.