gpt4 book ai didi

c - 苹果操作系统 X : How is the tcpcb struct of a TCP connection obtained by a kernel extension?

转载 作者:可可西里 更新时间:2023-11-01 02:51:36 25 4
gpt4 key购买 nike

我想提供一个用户空间函数,通过实现内核扩展来获取 TCP 连接统计信息。通过检查 TCP 源,我看到 tcpcp 结构包含此类统计信息。在给定用户空间的套接字句柄的情况下,如何通过内核扩展获取关联的 tcpcb 结构并将统计信息返回给用户空间?

最佳答案

问题的直接答案:我相信如果不使用一些私有(private) header 来获取所涉及结构的内存布局,您就无法从 kext 获取此信息。如果/当 Apple 更改这些结构的布局时,这将中断。

但是,看起来您并不真正关心 kext 方面并且很乐意从用户空间获取信息,那么您是否调查过 TCPCTL_PCBLIST sysctl?这为您提供了系统中 TCP 连接的 CB,并且 xtcpcb64 结构确实包含您之后的字段。不过,此机制可能不够精细,无法满足您的目的。

关于c - 苹果操作系统 X : How is the tcpcb struct of a TCP connection obtained by a kernel extension?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31268658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com