我在内核空间中创建一个使用套接字RAW发送UPD段的模块,但我的问题是从内核空间读取UDP段。
我可以从用户空间读取UDP段,但是当我证明从内核空间使用“sock_recvmsg”时,我得到的结果是 -512
拜托,帮助我!
答案 0 :(得分:1)
我不知道为什么你觉得需要使用原始套接字来发送/接收UDP - 只需使用UDP套接字。
可能是您为sock_recvmsg提供的地址结构不正确。
一般来说,使用内核中的网络是一个坏主意,应该避免(尤其是,它将您的代码与特定的内核版本联系起来)。如果你告诉我们你想要做什么(最好是以另一个问题的形式),也许有人可以建议一个更好的方法。