[ovs-dev] [PATCH net-next v2 2/8] netfilter: add API to manage NAT helpers.
Pablo Neira Ayuso
pablo at netfilter.org
Mon Apr 15 05:50:34 UTC 2019
On Sat, Apr 13, 2019 at 08:17:10PM -0300, Flavio Leitner wrote:
[...]
> +void nf_nat_helper_put(struct nf_conntrack_helper *helper)
> +{
> + struct nf_conntrack_nat_helper *nat;
> +
> + nat = nf_conntrack_nat_helper_find(helper->nat_mod_name);
> + BUG_ON(nat == NULL);
We've been trying to avoid BUG_ON() in many spots recently. Could you
turn this into... ?
if (WARN_ON(!nat))
return;
> + module_put(nat->module);
> +}
> +EXPORT_SYMBOL_GPL(nf_nat_helper_put);
> +
> struct nf_conn_help *
> nf_ct_helper_ext_add(struct nf_conn *ct, gfp_t gfp)
> {
> @@ -430,6 +502,10 @@ void nf_ct_helper_init(struct nf_conntrack_helper *helper,
> helper->help = help;
> helper->from_nlattr = from_nlattr;
> helper->me = module;
> + helper->nat_mod_name[0] = '\0';
> + if (name)
> + snprintf(helper->nat_mod_name, sizeof(helper->nat_mod_name),
> + NF_NAT_HELPER_PREFIX"%s", name);
>
> if (spec_port == default_port)
> snprintf(helper->name, sizeof(helper->name), "%s", name);
> @@ -466,6 +542,26 @@ void nf_conntrack_helpers_unregister(struct nf_conntrack_helper *helper,
> }
> EXPORT_SYMBOL_GPL(nf_conntrack_helpers_unregister);
>
> +void nf_nat_helper_register(struct nf_conntrack_nat_helper *nat)
> +{
> + BUG_ON(nat->module == NULL);
Same here.
> +
> + mutex_lock(&nf_ct_nat_helpers_mutex);
> + list_add_rcu(&nat->list, &nf_ct_nat_helpers);
> + mutex_unlock(&nf_ct_nat_helpers_mutex);
> +}
> +EXPORT_SYMBOL_GPL(nf_nat_helper_register);
> +
> +void nf_nat_helper_unregister(struct nf_conntrack_nat_helper *nat)
> +{
> + BUG_ON(nat->module == NULL);
And here.
Thanks.
More information about the dev
mailing list