cvs commit: src/sys/contrib/pf/net pf.c pfvar.h

Max Laier mlaier at FreeBSD.org
Wed Jul 20 18:58:27 GMT 2005


mlaier      2005-07-20 18:58:27 UTC

  FreeBSD src repository

  Modified files:
    sys/contrib/pf/net   pf.c pfvar.h 
  Log:
  Prevent a race condition.  As pf_send_tcp() - called for expired synproxy
  states - has to drop the lock when calling back to ip_output(), the state
  purge timeout might run and gc the state. This results in a rb-tree
  inconsistency.  With this change we flag expiring states while holding the
  lock and back off if the flag is already set.
  
  Reported by:    glebius
  MFC after:      2 weeks
  
  Revision  Changes    Path
  1.35      +5 -0      src/sys/contrib/pf/net/pf.c
  1.12      +3 -0      src/sys/contrib/pf/net/pfvar.h


More information about the cvs-all mailing list