Subject: Re: [resend] Passive OS fingerprint xtables match.

From: Patrick McHardy <[email-masked]>
Date: Thu, 04 Jun 2009 14:11:24 +0200

Evgeniy Polyakov wrote:
> On Thu, Jun 04, 2009 at 01:53:05PM +0200, Patrick McHardy ([email-masked]) wrote:
>>> That's hard - there is no hook number in the match function, so we do
>>> not really know if it is forward, input or prerouting.
>> This is really needed, spamming the ring buffer is not a good option.
>>
>> I'd say just add the hook number to xt_match_param. Its a bit
>> inconsistent anyways that we're handing it to checkentry for
>> validation, but not to the match function.
> 
> Doesn't checkentry receive a mask of all possible hooks? There is still
> no per-packet hook number. Although we can always use INPUT hook since
> its the most widely used one. And drop a comment about this abuse.

Thats not what I meant. struct xt_match_param is passed to the
->match() callbacks from *t_do_table(). This is where you can
add the real hook number to have it available in ->match().

(Forgot to mention earlier: please in a seperate patch and adjusting
  all *tables copies)