0

午後中ずっと、udp パケット送信の問題を探していました。sendmsg システムコールは、まず inet_sendmsg、次に udp_sendmsg、次に udp_push_pending_frames に来ると言われていますが、この関数では ip_push_pending_frames の前に UDP ヘッダーが埋められます。ただし、http://vger.kernel.org/~davem/skb_data.html によると UDP レイヤーには skb のデータとして純粋なユーザー データが必要であり、UDP ヘッダー用のスペースを確保するために skb_push が必要です。私はそれを見つけることができませんでした。

誰でも手がかりを提供できますか?

ありがとう!

4

1 に答える 1

0

skb_pushカーネル ソースに含まれていますinclude/linux/skbuff.h。これはインライン関数であるため、通常のソース ファイルではなくヘッダー ファイルにあります。

于 2012-12-03T18:52:32.780 に答える