Author: kp
Date: Sat Apr  1 12:22:34 2017
New Revision: 316355
URL: https://svnweb.freebsd.org/changeset/base/316355

Log:
  pf: Fix leak of pf_state_keys
  
  If we hit the state limit we returned from pf_create_state() without cleaning
  up.
  
  PR:           217997
  Submitted by: Max <maxi...@als.nnov.ru>
  MFC after:    1 week

Modified:
  head/sys/netpfil/pf/pf.c

Modified: head/sys/netpfil/pf/pf.c
==============================================================================
--- head/sys/netpfil/pf/pf.c    Sat Apr  1 11:24:34 2017        (r316354)
+++ head/sys/netpfil/pf/pf.c    Sat Apr  1 12:22:34 2017        (r316355)
@@ -3559,7 +3559,7 @@ pf_create_state(struct pf_rule *r, struc
            (counter_u64_fetch(r->states_cur) >= r->max_states)) {
                counter_u64_add(V_pf_status.lcounters[LCNT_STATES], 1);
                REASON_SET(&reason, PFRES_MAXSTATES);
-               return (PF_DROP);
+               goto csfailed;
        }
        /* src node for filter rule */
        if ((r->rule_flag & PFRULE_SRCTRACK ||
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to