On Fri, Mar 24, 2017 at 10:42:38AM -0600, Alexander Bluhm wrote:
> CVSROOT:      /cvs
> Module name:  src
> Changes by:   bl...@cvs.openbsd.org   2017/03/24 10:42:38
> 
> Modified files:
>       sys/kern       : subr_log.c 
> 
> Log message:
> There was a race in dosendsyslog() which resulted in a crash.
> sosend(syslogf->f_data, ...) could be called with a NULL pointer.
> syslogf was not NULL, f_data was NULL and f_count was 1.  The file
> structure is ref counted, but the global variable syslogf is not
> protected.  So it may change during sleep and dosendsyslog() possibly
> used a different socket at each access.  Solution is to access
> syslogf only once, use a local copy, and do the ref counting there.
> OK millert@ deraadt@

and OK beck@

Reply via email to