3

ソケット X で sendto() を使用して送信中に ICMP エラー (例: dest unreach.) を取得するには、そのソケット X で MSG_ERRQUEUE フラグを指定して recvmsg を呼び出すことができます。(OS = Linux)

 recvmsg(X, &msg, MSG_ERRQUEUE);

このソケット X をポート Y にバインドしていますが、ポート Y と sendto() によって生成された ICMP エラーで udp パケットを受信できません。

MSG_ERRQUEUE フラグが設定されている場合、「通常の」udp パケットを受信できますか? または MSG_ERRQUEUE フラグを使用すると、recvmsg() は「エラー」キューからのみ受信できますか?

ありがとう

4

0 に答える 0