pptp patch breaks nat-reservation patch (on ppc-machines)

KOVACS Krisztian hidden@balabit.hu
Fri, 09 Jul 2004 12:57:02 +0200


  Hi,

2004-07-09, p keltezéssel 11:09-kor Philip Craig ezt írta:
> Where exactly in the nat reservation patch is the problem?  I
> couldn't see anything that would cause an alignment problem, although
> there were a few debug statements that were passing u.all to ntohs().
> I think those debug statements should use DUMP_TUPLE() instead.
> 
> The other thing I noticed is that some places treat manip.u.all and
> tuple.dst.u.all as the same size, which is wrong.  tuple.dst.u.all is
> actually 64 bits with the pptp patch.  clashing_ct_cmp()  incorrectly
> compares them, and _ip_nat_reserved_new_hash() creates a tuple based
> on a manip.
> 
> I think invert_tuplepr() can be used to fix both of these, although
> I haven't looked too closely.  Basically, you need to call the
> invert_tuple() function from ip_conntrack_protocol, since it is the
> only thing that knows how to invert correctly.

  You're right, of course. I'll prepare a fix for nat-reservations as
soon as I'll have time to do so. However, I'd need someone competent to
review the fixes.

-- 
 Regards,
   Krisztian KOVACS