Bug tracker

Wanneer u een bug vindt in ClamAV, controleer deze dan alstublieft op de laatste SVN code.

Als de bug nog niet hersteld is, bezoek dan onze bug tracker .

Rapporteer alstublieft geen bugs betreffende software die van ClamAV is afgeleid en verdeeld wordt door een derde partij (d.w.z. ports die we niet zelf onderhouden), want we hebben hier geen controle over.
Contacteer liever de betreffende ontwikkelaars.

Hier vindt u de informatie die u in uw bug rapport moet vermelden (gerangschikt naar belangrijkheid):

  • Email adres: een werkend email adres zodat de ontwikkelaars u kunnen contacteren om eventueel bijkomende informatie te bekomen en om u op de hoogte te stellen als het probleem opgelost is.
  • ClamAV versie: output van:
    clamscan -V
  • Systeem details: de volledige specificaties van uw systeem: d.w.z. output van:
    uname -mrsp
  • Bibliotheek versies: de versie van libc en eventueel zlib die u gebruikt
  • Hoe het probleem te reproduceren: als het probleem zich enkel voordoet bij het scannen van een bepaald bestand, voeg het bestand dan toe aan de boodschap. Vergeet niet de bijlage te versleutelen, anders kan u schade berokkenen aan de email servers tussen u en ons! Bijvoorbeeld:
    zip -P virus -e file.zip file.ext
    De inhoud van het bestand blijft vertrouwelijk. Als het bestand te groot is om per email te verzenden, kan u het opladen naar een met een passwoord beveiligde website en ons de URL en inlog-gegevens toezenden.
  • Backtrace van clamscan: zend ons indien mogelijk de backtrace bekomen van gdb, de GNU Project Debugger.

Hier zijn stap voor stap instructies die u door dit proces zullen leiden:

In de veronderstelling dat u iets ziet als:

$ clamscan --some-options some_file
Segmentation fault

Het eerste wat u moet doen is de kernel een core dump laten schrijven. Voor bourne-achtige shells (zoals bash):

$ ulimit -c unlimited

Voor C-achtige shells (zoals tcsh):

> limit coredumpsize unlimited

Nu zou u de boodschap core dumped moeten zien:

$ clamscan --some-options some_file
Segmentation fault (core dumped)

In uw huidige werkmap zou zich nu een bestand met de naam core moeten bevinden.

De volgende stap is het core bestand in gdb te laden:

$ gdb -core=core --args clamscan --some-options some_file
(gdb)

Nu zou u de gdb prompt moeten zien. Gebruik het bt commando op de prompt om gdb een volledige backtrace te laten oplijsten. Copiƫer deze en plak ze in het bug rapport. U can het q commando gebruiken om gdb te verlaten.

  • Backtrace van clamd:

Gebruik ps om het PID van clamd op te zoeken (het eerste nummer links):

$ ps -aux (or ps -elf on SysV)
clamav 24897 0.0 1.9 38032 10068 ? S Jan13 0:00 clamd

Voeg gdb toe aan het lopende proces:

$ gdb /usr/sbin/clamd 24897

Vervang 24897 door het pid van clamd en pas de locatie van clamd aan. U zou nu een gdb prompt moeten zien, zoals:

(gdb)

Als u wil dat clamd blijft lopen, bijvoorbeeld tot zich een segmentatie fout voordoet, gebruik dan het gdb commando continue, wacht op een fout, en op dat moment zal gdb terugkeren naar zijn prompt.
Het commando bt zal een backtrace voor de huidige thread geven.
Het commando info threads zal u vertellen hoeveel threads er zijn.
Het commando thread n zal overschakelen naar de opgegeven thread n, waarna u het bt commando opnieuw kan gebruiken om de backtrace van die thread te zien.
Kort samengevat doet u dus hetvolgende:

info threads om het aantal threads en hun id nummers te zien

Voor elke thread:

thread id_number
bt

Verlaat gdb met het quit commando. Antwoord y op de vraag betreffende het nog draaiende programma.

  • Strace: optioneel, indien u denkt dat dit nuttig is, de output van strace (die hier niet wordt besproken).

Waarschuwing: Tenzij specifiek vermeld onderhouden we zelf geen binaire pakketten of ports. Deze pakketten zijn vrij te gebruiken en beschikbaar gesteld door derde partijen.

Wij kunnen voor hen geen verantwoordelijkheid dragen!

Gelieve eraan te denken dat we GEEN rapporten aanvaarden over bugs die enkel pakketten aangaan die we niet onderhouden!
Wanneer u twijfelt, compileer dan altijd ClamAV vanuit de broncode.

We doen ons best om de gelocaliseerde versie van deze website up to date te houden. Dat is echter niet altijd mogelijk. Bekijk alstublieft de Engelse versie voor de recentste informatie.