CVSROOT:        /cvs
Module name:    src
Changes by:     bl...@cvs.openbsd.org   2022/03/22 18:16:07

Modified files:
        sys/netinet6   : raw_ip6.c 

Log message:
For raw IPv6 packets rip6_input() traverses the loop of all PCBs.
>From there it calls sbappendaddr() while holding the raw6 table
mutex.  This ends in sorwakeup() where we finally grab the kernel
lock while holding a mutex.  Witness detects this misuse.
Use the same solution as for PCB notify.  Collect the affected PCBs
in a temporary list.  The list is protected by exclusive net lock.
Reported-by: syzbot+5b2679ee9be0895d2...@syzkaller.appspotmail.com
OK claudio@

Reply via email to