Messages in this thread | | | Date | Sun, 21 Aug 2016 22:16:16 +0200 | From | Florian Westphal <> | Subject | Re: [PATCH 3.10 007/180] netfilter: x_tables: validate targets of jumps |
| |
Willy Tarreau <w@1wt.eu> wrote: > On Sun, Aug 21, 2016 at 05:28:57PM +0200, Willy Tarreau wrote: > > From: Florian Westphal <fw@strlen.de> > > > > commit 36472341017529e2b12573093cc0f68719300997 upstream. > > > > When we see a jump also check that the offset gets us to beginning of > > a rule (an ipt_entry). > (...) > > Sorry, this patch is bad and causes performance issues, I didn't notice > that 3.14 had a different version, below. Thanks to Jay for reporting > the problem to me. I'll push 3.10.103-rc2 after some cool down period.
Please either hold this one back or also queue commit f4dc77713f8016d2e8a3295e1c9c53a21f296def netfilter: x_tables: speed up jump target validation
It supersedes this one.
> +static bool find_jump_target(const struct xt_table_info *t, > + const void *entry0, > + const struct arpt_entry *target) > +{ > + struct arpt_entry *iter; > + > + xt_entry_foreach(iter, entry0, t->size) { > + if (iter == target) > + return true; > + }
This linear search works but its too slow with large rule sets.
| |