我试图在linux kerenl中找到上面的api。如果我去这条路:net / ipv4 / udp.c并搜索udp_deliver。它不在那个地方。找不到udp_deliver api的原因是什么? 请有人帮助我。我在上面指定的路径中没有上面的api。
请
答案 0 :(得分:0)
我刚刚克隆了主线linux
repo,找到了udp_deliver
的定义。我不相信该函数在内核中已经实现了,因为使用grep
不会产生任何命中。
$ grep -r udp_deliver linux
$ grep -r *udp_deliver* linux
他们都没有产生任何结果。我只能在早期版本的Linux内核中找到udp_deliver
的引用,即1.0.13,1.1.72,1.3.22,1.3.47以及其他一些早期版本。< / p>
这些早期源文件中的definition given如下:
static inline void udp_deliver(struct sock *sk, struct sk_buff *skb)
{
skb->sk = sk;
if (sk->users) {
__skb_queue_tail(&sk->back_log, skb);
return;
}
udp_queue_rcv_skb(sk, skb);
}