Ter*_*ail 11 c reverse-engineering strace
使用strace可以看到ioctl调用特定文件描述符和某些命令.第三个参数是结构,但strace将其显示为指向内存的原始指针.strace输出示例:
open("/dev/node", O_RDWR) = 3
ioctl(3, 0x108, 0x8f0eb18) = 0
close(3)
Run Code Online (Sandbox Code Playgroud)
有没有办法(strace选项或其他工具)来查看结构是什么,或者至少是原始指针背后的值?
小智 2
在 gdb 中,如果在调用 ioctl 之前停止它,则可以输入:
(gdb) p *(ioctl_struct *) 0x8f0eb18
Run Code Online (Sandbox Code Playgroud)
这将向您展示该内存位置的内容如何映射到 ioctl_struct。