于 2012年06月15日 01:59, Pablo Neira Ayuso 写道: > On Thu, Jun 14, 2012 at 06:07:17PM +0800, Gao feng wrote: >> there are redundancy codes in l4proto's init_net functions. >> we can use one init_net function and l3proto to impletment >> the same thing. >> >> So we should add l3proto as a parameter for init_net function. >> >> Signed-off-by: Gao feng <gaofeng@xxxxxxxxxxxxxx> >> --- >> include/net/netfilter/nf_conntrack_l4proto.h | 2 +- >> net/ipv4/netfilter/nf_conntrack_proto_icmp.c | 2 +- >> net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c | 2 +- >> net/netfilter/nf_conntrack_proto.c | 6 ++++-- >> net/netfilter/nf_conntrack_proto_dccp.c | 2 +- >> net/netfilter/nf_conntrack_proto_generic.c | 2 +- >> net/netfilter/nf_conntrack_proto_gre.c | 2 +- >> net/netfilter/nf_conntrack_proto_sctp.c | 4 ++-- >> net/netfilter/nf_conntrack_proto_tcp.c | 4 ++-- >> net/netfilter/nf_conntrack_proto_udp.c | 4 ++-- >> net/netfilter/nf_conntrack_proto_udplite.c | 2 +- >> 11 files changed, 17 insertions(+), 15 deletions(-) >> >> diff --git a/include/net/netfilter/nf_conntrack_l4proto.h b/include/net/netfilter/nf_conntrack_l4proto.h >> index 81c52b5..5dd60f2 100644 >> --- a/include/net/netfilter/nf_conntrack_l4proto.h >> +++ b/include/net/netfilter/nf_conntrack_l4proto.h >> @@ -97,7 +97,7 @@ struct nf_conntrack_l4proto { >> #endif >> int *net_id; >> /* Init l4proto pernet data */ >> - int (*init_net)(struct net *net); >> + int (*init_net)(struct net *net, u_int16_t proto); >> >> /* Protocol name */ >> const char *name; >> diff --git a/net/ipv4/netfilter/nf_conntrack_proto_icmp.c b/net/ipv4/netfilter/nf_conntrack_proto_icmp.c >> index 041923c..76f7a2f 100644 >> --- a/net/ipv4/netfilter/nf_conntrack_proto_icmp.c >> +++ b/net/ipv4/netfilter/nf_conntrack_proto_icmp.c >> @@ -337,7 +337,7 @@ static struct ctl_table icmp_compat_sysctl_table[] = { >> #endif /* CONFIG_NF_CONNTRACK_PROC_COMPAT */ >> #endif /* CONFIG_SYSCTL */ >> >> -static int icmp_init_net(struct net *net) >> +static int icmp_init_net(struct net *net, u_int16_t proto) >> { >> struct nf_icmp_net *in = icmp_pernet(net); >> struct nf_proto_net *pn = (struct nf_proto_net *)in; >> diff --git a/net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c b/net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c >> index 63ed012..807ae09 100644 >> --- a/net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c >> +++ b/net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c >> @@ -333,7 +333,7 @@ static struct ctl_table icmpv6_sysctl_table[] = { >> }; >> #endif /* CONFIG_SYSCTL */ >> >> -static int icmpv6_init_net(struct net *net) >> +static int icmpv6_init_net(struct net *net, u_int16_t proto) >> { >> struct nf_icmp_net *in = icmpv6_pernet(net); >> struct nf_proto_net *pn = (struct nf_proto_net *)in; >> diff --git a/net/netfilter/nf_conntrack_proto.c b/net/netfilter/nf_conntrack_proto.c >> index a434dd7..8fc0332 100644 >> --- a/net/netfilter/nf_conntrack_proto.c >> +++ b/net/netfilter/nf_conntrack_proto.c >> @@ -193,6 +193,7 @@ static int nf_ct_l3proto_register_sysctl(struct net *net, >> l3proto->ctl_table_path, >> in->ctl_table, >> NULL); >> + > > This entire patchset contains many extra new lines. If you want to > provide some cleanup, it should come in some follow-up patch. Ok, I will make a follow-up patch to do some cleanup. > >> if (err < 0) { >> kfree(in->ctl_table); >> in->ctl_table = NULL; >> @@ -460,7 +461,7 @@ int nf_conntrack_l4proto_register(struct net *net, >> { >> int ret = 0; >> if (l4proto->init_net) { >> - ret = l4proto->init_net(net); >> + ret = l4proto->init_net(net, l4proto->l3proto); >> if (ret < 0) >> return ret; >> } >> @@ -514,7 +515,8 @@ int nf_conntrack_proto_init(struct net *net) >> { >> unsigned int i; >> int err; >> - err = nf_conntrack_l4proto_generic.init_net(net); >> + err = nf_conntrack_l4proto_generic.init_net(net, >> + nf_conntrack_l4proto_generic.l3proto); > > You have to make sure that lines break at 80-chars per column. > > Something like this should be fine: > > err = nf_conntrack_l4proto_generic.init_net(net, > nf_conntrack_l4proto_generic.l3proto); > > Get it, thanks. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html