diff options
author | Patrick McHardy <kaber@trash.net> | 2007-01-26 01:07:30 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-01-26 01:07:30 -0800 |
commit | a46bf7d5a81b350cd204b82bd25ee6ffbc2967d4 (patch) | |
tree | 574b983f7b99505b3c21c29eb61352dd9e534702 /net | |
parent | c72c6b2a291bb6c61b1546d116784a79e15a6c29 (diff) | |
download | op-kernel-dev-a46bf7d5a81b350cd204b82bd25ee6ffbc2967d4.zip op-kernel-dev-a46bf7d5a81b350cd204b82bd25ee6ffbc2967d4.tar.gz |
[NETFILTER]: nf_nat_pptp: fix expectation removal
When removing the expectation for the opposite direction, the PPTP NAT
helper initializes the tuple for lookup with the addresses of the
opposite direction, which makes the lookup fail.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/netfilter/nf_nat_pptp.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/netfilter/nf_nat_pptp.c b/net/ipv4/netfilter/nf_nat_pptp.c index 0ae45b7..5df4fca 100644 --- a/net/ipv4/netfilter/nf_nat_pptp.c +++ b/net/ipv4/netfilter/nf_nat_pptp.c @@ -72,9 +72,9 @@ static void pptp_nat_expected(struct nf_conn *ct, DEBUGP("we are PAC->PNS\n"); /* build tuple for PNS->PAC */ t.src.l3num = AF_INET; - t.src.u3.ip = master->tuplehash[exp->dir].tuple.src.u3.ip; + t.src.u3.ip = master->tuplehash[!exp->dir].tuple.src.u3.ip; t.src.u.gre.key = nat_pptp_info->pns_call_id; - t.dst.u3.ip = master->tuplehash[exp->dir].tuple.dst.u3.ip; + t.dst.u3.ip = master->tuplehash[!exp->dir].tuple.dst.u3.ip; t.dst.u.gre.key = nat_pptp_info->pac_call_id; t.dst.protonum = IPPROTO_GRE; } |