Re: [PATCH 3/4] netfilter: Pass socket pointer down through okfn().

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 7, 2015, at 18:01, David Miller wrote:
> From: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
> Date: Tue, 7 Apr 2015 17:35:33 +0200
> 
> > On Tue, Apr 07, 2015 at 04:44:29PM +0200, Hannes Frederic Sowa wrote:
> >> On So, 2015-04-05 at 22:19 -0400, David Miller wrote:
> >> > --- a/include/linux/netfilter.h
> >> > +++ b/include/linux/netfilter.h
> >> > @@ -54,7 +54,7 @@ struct nf_hook_state {
> >> >  	struct net_device *in;
> >> >  	struct net_device *out;
> >> >  	struct sock *sk;
> >> > -	int (*okfn)(struct sk_buff *);
> >> > +	int (*okfn)(struct sock *, struct sk_buff *);
> >> >  };
> >> 
> >> If we give okfn the signature int (*okfn)(struct nf_hook_state *); then
> >> we would not need to touch anything else to enhance this.
> >> 
> >> What do you think?
> > 
> > I guess you mean something like:
> > 
> >         int (*okfn)(struct sk_buff *, struct nf_hook_state *);
> > 

Yes, correct of course.

> > I agree that would save us from more changes on the okfn() signature.
> > I think it's OK if that change is introduced once we have some client
> > code that needs it, I mean in a follow up patch.
> 
> No, becuase this means things like ip_finish_output(), and even
> generic functions like dst_output(), dev_loopback_xmit(), and friends
> will have netfilter specific arguments, and that is not acceptable.
> 
> Please do not suggest this.

This idea would imply to e.g. rename nf_hook_state into something not
associated with netfilter. Otherwise I don't see any dependencies on
netfilter.

I like the patches as-is and if not necessary we don't need to do this.

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




[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux