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.
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
).źródło