CVSROOT: /cvs Module name: src Changes by: m...@cvs.openbsd.org 2021/02/27 04:44:48
Modified files: sys/net : rtsock.c Log message: Rework route_input() and rtm_sendup(). While we perform foreach loop in route_input() we drop solock() after we checked socket state. We pass mbuf(9) to this socket at next loops, while it referenced as `last'. Socket's state could be changed by concurrent thread while it's not locked. Since we perform socket's checks and output in same iteration, the logic which prevents mbuf(9) chain copy for the last socket in list was removed. ok bluhm@ claudio@