Strace für Bibliotheksbesuche


14

Ich kenne strace, was super praktisch ist, um Systemaufrufe zu beobachten. Gibt es eine Entsprechung, die Aufrufe an externe Bibliotheken verfolgen kann?

Zum Beispiel versuche ich, ein SSLeay-Fehlverhalten mit einer Drittanbieter-Binärdatei zu beheben, für die ich nicht auf den Code zugreifen kann (und deren Entwickler nicht reagiert). Ich glaube, ich habe das Problem behoben, aber ich kann es nicht testen, ohne genau zu sehen, wie die signaturgeprüften Daten für das Senden an SSLeay formatiert werden.

Antworten:


12

ltrace - Ein Bibliotheksaufruf-Tracer.

Es funktioniert nur unter Linux und in einer kleinen Teilmenge von Architekturen. Aufrufe an dlopen () ed-Bibliotheken werden nicht verfolgt. Weitere Hinweise aus Manpage und/etc/ltrace.conf


3
Gibt es eine Lösung für dlopen () ed-Bibliotheken?
4.

8

Manchmal funktioniert ltrace . Dies erfordert im Allgemeinen einen Debugger wie GDB . Anhand der Aufrufstruktur in disassembly ( objdump -d /path/to/executable) können Sie sich einen Eindruck verschaffen, auf welche Funktionen Trace- oder Break-Punkte angewendet werden sollen .

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.