Thread (51 messages) 51 messages, 2 authors, 2012-05-28

Re: [PATCH 01/17] netfilter: add struct nf_proto_net for register l4proto sysctl

From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: 2012-05-24 14:38:54
Also in: netfilter-devel

On Thu, May 24, 2012 at 06:54:42PM +0800, Gao feng wrote:
[...]
quoted
quoted
quoted
I don't see why we need this new field.

It seems to be set to 1 in each structure that has set:

.ctl_compat_table

to non-NULL. So, it's redundant.

Moreover, you already know from the protocol tracker itself if you
have to allocate the compat ctl table or not.

In other words: You set compat to 1 for nf_conntrack_l4proto_generic.
Then, you pass that compat value to generic_init_net via ->inet_net
again, but this information (that determines if the compat has to be
done or not) is already in the scope of the protocol tracker.
because some protocols such l4proto_tcp6 and l4proto_tcp use the same init_net
function. the l4proto_tcp6 doesn't need compat sysctl, so we should use this new
field to identify if we should kmemdup compat_sysctl_table.
Then, could you use two init_net functions? one for TCP for IPv4 and another
for TCP for IPv6?
Of cause, if you prefer to impletment it in this way.
If this removes the .compat field that you added, then use two
init_net functions, yes.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help