Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Nov 2018 15:01:59 +0000 (UTC)
From:      Kristof Provost <kp@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r340057 - head/sys/netpfil/pf
Message-ID:  <201811021501.wA2F1xSU069903@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kp
Date: Fri Nov  2 15:01:59 2018
New Revision: 340057
URL: https://svnweb.freebsd.org/changeset/base/340057

Log:
  Revert "pf: Limit the maximum number of fragments per packet"
  
  This reverts commit r337969.
  We'll handle this the OpenBSD way, in upcoming commits.

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

Modified: head/sys/netpfil/pf/pf_norm.c
==============================================================================
--- head/sys/netpfil/pf/pf_norm.c	Fri Nov  2 14:59:52 2018	(r340056)
+++ head/sys/netpfil/pf/pf_norm.c	Fri Nov  2 15:01:59 2018	(r340057)
@@ -91,10 +91,8 @@ struct pf_fragment {
 	TAILQ_ENTRY(pf_fragment) frag_next;
 	uint32_t	fr_timeout;
 	uint16_t	fr_maxlen;	/* maximum length of single fragment */
-	uint16_t	fr_entries;	/* Total number of pf_fragment entries */
 	TAILQ_HEAD(pf_fragq, pf_frent) fr_queue;
 };
-#define PF_MAX_FRENT_PER_FRAGMENT	64
 
 struct pf_fragment_tag {
 	uint16_t	ft_hdrlen;	/* header length of reassembled pkt */
@@ -386,7 +384,6 @@ pf_fillup_fragment(struct pf_fragment_cmp *key, struct
 		*(struct pf_fragment_cmp *)frag = *key;
 		frag->fr_timeout = time_uptime;
 		frag->fr_maxlen = frent->fe_len;
-		frag->fr_entries = 0;
 		TAILQ_INIT(&frag->fr_queue);
 
 		RB_INSERT(pf_frag_tree, &V_pf_frag_tree, frag);
@@ -398,9 +395,6 @@ pf_fillup_fragment(struct pf_fragment_cmp *key, struct
 		return (frag);
 	}
 
-	if (frag->fr_entries >= PF_MAX_FRENT_PER_FRAGMENT)
-		goto bad_fragment;
-
 	KASSERT(!TAILQ_EMPTY(&frag->fr_queue), ("!TAILQ_EMPTY()->fr_queue"));
 
 	/* Remember maximum fragment len for refragmentation. */
@@ -472,8 +466,6 @@ pf_fillup_fragment(struct pf_fragment_cmp *key, struct
 		TAILQ_INSERT_HEAD(&frag->fr_queue, frent, fr_next);
 	else
 		TAILQ_INSERT_AFTER(&frag->fr_queue, prev, frent, fr_next);
-
-	frag->fr_entries++;
 
 	return (frag);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201811021501.wA2F1xSU069903>