bước đi cho các cuộc gọi thư viện


14

Tôi biết về strace, siêu tiện dụng để xem các cuộc gọi hệ thống. Có một tương đương có thể theo dõi các cuộc gọi đến các thư viện bên ngoài?

Ví dụ: tôi đang cố gắng gỡ lỗi một số hành vi sai trái SSLeay với tệp nhị phân của bên thứ ba mà tôi không thể truy cập mã cho (và nhà phát triển của ai không phản hồi). Tôi tin rằng tôi đã khắc phục được sự cố, nhưng tôi không thể kiểm tra vấn đề này mà không xem chính xác cách dữ liệu được kiểm tra chữ ký đang được định dạng để gửi đến SSLeay.

Câu trả lời:


12

ltrace - Một thư viện gọi tracer.

Nó chỉ hoạt động trên Linux và trong một tập hợp nhỏ các kiến ​​trúc. Các cuộc gọi đến thư viện dlopen () ed sẽ không được theo dõi. Con trỏ thêm từ trang người đàn ông và/etc/ltrace.conf


3
Có giải pháp nào khả dụng cho các thư viện dlopen () ed không?
kéo dài

8

Đôi khi ltrace hoạt động. Nói chung, điều này kêu gọi một trình sửa lỗi như GDB . Bạn có thể có ý tưởng về chức năng nào để đặt điểm theo dõi hoặc điểm dừng bằng cách xem cấu trúc cuộc gọi trong phần tháo gỡ ( objdump -d /path/to/executable).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.