CVSROOT:        /cvs
Module name:    src
Changes by:     m...@cvs.openbsd.org    2018/01/25 07:47:35

Modified files:
        sys/netinet    : ip_carp.c 

Log message:
Use a workaround for detached parent in carp_proto_input_c().

A NULL dereference can happen since processing protocol layer is
deffered to a second task.  In other words the NET_LOCK() is released
then regrabbed between ip_input() and carp_proto_input().

The same workaround is already in use in carp_output() due to deffered
processing in case of IPsec.

The real fix is to make carp(4) MP-safe and use if_get(9) there, any
taker?

Found & fix tested by Hrvoje Popovski.

Reply via email to