śledzenie wywołań biblioteki


14

Znam strace, które jest bardzo przydatne do oglądania wywołań systemowych. Czy istnieje odpowiednik, który może śledzić połączenia z bibliotekami zewnętrznymi?

Na przykład próbuję debugować pewne nieprawidłowe zachowanie SSLeay za pomocą pliku binarnego innej firmy, dla którego nie mogę uzyskać dostępu do kodu (i kto nie odpowiada). Wydaje mi się, że udało mi się rozwiązać problem, ale nie mogę tego przetestować, nie widząc dokładnie, w jaki sposób dane sprawdzane pod kątem podpisu są formatowane w celu wysłania do SSLeay.

Odpowiedzi:


12

ltrace - Wskaźnik wywołań biblioteki.

Działa tylko w systemie Linux i w niewielkim podzbiorze architektur. Wywołania bibliotek dlopen () nie będą śledzone. Dalsze wskazówki ze strony man i/etc/ltrace.conf


3
Czy jest dostępne jakieś rozwiązanie dla bibliotek dlopen () ed?
draeath

8

Czasami działa Ltrace . Zasadniczo wymaga to debuggera, takiego jak GDB . Możesz dowiedzieć się, które funkcje umieszczać punkty śledzenia lub punkty przerwania, patrząc na strukturę wywołania w deasemblacji ( objdump -d /path/to/executable).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.