çå: [PATCH 1/1] netfilter: Add helper array register/unregister functions

From: éå
Date: Tue Jul 19 2016 - 21:03:49 EST


Oh, thanks Liping.
I have not found the extra port styles are different of irc, sane and tftp with ftp.

Hi Pablo,
Then should I modify the original patch or send a new one?


-----éäåä-----
åää: Liping Zhang [mailto:zlpnobody@xxxxxxxxx]
åéæé: 2016å7æ20æ 8:51
æää: fgao@xxxxxxxxxx
æé: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>; Patrick McHardy <kaber@xxxxxxxxx>; netfilter-devel@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; gfree.wind@xxxxxxxxx
äé: Re: [PATCH 1/1] netfilter: Add helper array register/unregister functions

2016-07-18 11:39 GMT+08:00 <fgao@xxxxxxxxxx>:
> From: Gao Feng <fgao@xxxxxxxxxx>
>
> Add nf_ct_helper_init, nf_conntrack_helpers_register/unregister
> functions to enhance the conntrack helper codes.

I think this patch is breaking something ...

This irc:
> - if (ports[i] == IRC_PORT)
> - sprintf(irc[i].name, "irc");
> - else
> - sprintf(irc[i].name, "irc-%u", i);
> -
> - ret = nf_conntrack_helper_register(&irc[i]);
> + nf_ct_helper_init(&irc[i], AF_INET, IPPROTO_TCP, "irc",
> + IRC_PORT, ports[i], &irc_exp_policy, 0, 0,
> + help, NULL, THIS_MODULE);
> + }

This sip:
> - if (ports[i] == SIP_PORT)
> - sprintf(sip[i][j].name, "sip");
> - else
> - sprintf(sip[i][j].name, "sip-%u", i);

And this tftp:
> - if (ports[i] == TFTP_PORT)
> - sprintf(tftp[i][j].name, "tftp");
> - else
> - sprintf(tftp[i][j].name, "tftp-%u", i);

For example, if the user install the nf_conntrack_tftp module an specify the ports to "69,10069", then the helper name is "tftp" and "tftp-1".

But apply this patch, the helper name will be changed to "tftp" and "tftp-10069", this may break the existing iptables rules which used the helper match or CT target.

And this was already discussed at https://patchwork.ozlabs.org/patch/622238/