繁体   English   中英

gdb进入动态功能

[英]gdb step into dynamic function

我在函数调用的OpenSSL库中调试段错误

s->method->ssl_read(s,buf,num)

由动态函数指针设置。 当它指向时,我想进入它

ssl23_read

但是,在ssl23_read中设置断点不起作用。 我不确定调试如何与动态函数指针一起工作,并且对我来说直观的答案可能是“不同”或“不同”。 在这种情况下,您将使用什么调试策略?

顺便说一下,仅仅调出调用是行不通的,或者至少是不容易进行的-OpenSSL库已进行了一些检查,以确保您不直接调用该函数。

在ssl23_read中设置断点不起作用

不以什么方式工作?

如果GDB设置了断点,但断点永不触发,则可以

  1. 该函数未实际调用,或者
  2. GDB中有一个错误,它错误地设置了断点。

如果为2,请检查最新GDB中是否仍然存在该错误,并为其提交错误报告。 作为一种变通方法, break * &ssl23_read将有可能设置的断点,使得它火。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM