All of lore.kernel.org
 help / color / mirror / Atom feed
* What happened to xt_match_param
@ 2012-07-03 13:46 AFT
  2012-07-03 15:03 ` AFT
  2012-07-03 15:57 ` Jan Engelhardt
  0 siblings, 2 replies; 3+ messages in thread
From: AFT @ 2012-07-03 13:46 UTC (permalink / raw)
  To: netfilter-devel



Hi,

In "writing netfilter module", by JAN, there is a inconsistancy in
section 2.5 named "Point of decision".

Here a match function is prototyped as ,

struct bool ipaddr_mt(const struct sk_buff *skb,
                      struct xt_match_param *par);
                      
Now there is no xt_match_param in netfilter.h. The closest thing is
'struct xt_mtchk_param'. which is defined as,

struct xt_mtchk_param {
	struct net *net;
	const char *table;
	const void *entryinfo;
	const struct xt_match *match;
	void *matchinfo;
	unsigned int hook_mask;
	u_int8_t family;
};

So at first i thought i can just replace it with xt_mtchk_param. But the
problem is the text reads following lines which can not be right if i
replace xt_match_param with xt_mtchk_param.

par->in and par->out supposed to point to IN or OUT network devices. but
as you can see there is no such fields in xt_mtchk_param.

These struct net_device *in,out fields are inside struct
xt_action_param.

struct xt_action_param{
       ...........
       struct net_device *in,*out;
       ...........
}

After subsequent reading i understood, it should be struct
xt_action_param in the match function's prototype. so the correct
prototype should be,

static bool ipaddr_mt(const struct sk_buff *skb,
                      struct xt_action_param *par);

So it should be updated so that noobs like me does not get confused.

cheers
aft

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-07-03 15:57 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-03 13:46 What happened to xt_match_param AFT
2012-07-03 15:03 ` AFT
2012-07-03 15:57 ` Jan Engelhardt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.