Skip to main content

udp_recv_matching

Function udp_recv_matching 

Source
pub fn udp_recv_matching<F>(port: u16, pred: F) -> Option<UdpDatagram>
where F: Fn([u8; 4], u16, &[u8]) -> bool,
Expand description

dst_port が一致し、かつ述語 pred(src_ip, src_port, payload) を満たす最古の データグラムだけを取り出してキューから削除する。述語を満たさないエントリは キューに残すため、並行クエリ(DNS browser_loader / img_load、NTP)が互いの 応答を「取り出して照合失敗で破棄」してしまう競合を構造的に解消する。