bugzilla-daemon@bugzilla.netfilter.org
2006-Oct-23 09:09 UTC
[Bug 512] poptop (pptpd) will not work if ip_nat_pptp loaded
https://bugzilla.netfilter.org/bugzilla/show_bug.cgi?id=512
------- Additional Comments From yi_he@pmc-sierra.com 2006-10-23 09:09 MET
-------
I've met the problem in the 2.4 kernel as well, and I modified the source
linux/net/ipv4/netfilter/ip_nat_pptp.c like this:
in function pptp_outbound_pkt():
......
switch (msg = ntohs(ctlh->messageType)) {
case PPTP_OUT_CALL_REQUEST:
cid = &pptpReq.ocreq->callID;
/* FIXME: ideally we would want to reserve a call ID
* here. current netfilter NAT core is not able to do
* this :( For now we use TCP source port. This breaks
* multiple calls within one control session */
/* save original call ID in nat_info */
nat_pptp_info->pns_call_id = ct_pptp_info->pns_call_id;
/* He Yi Oct 22, 2006 */
if( inet_addr_type(iph->daddr) == RTN_LOCAL )
{
DEBUGP("DO NOT CHANGE PPTP CALL ID FOR LOCAL
SERVICE!\n");
new_callid = ct_pptp_info->pns_call_id;
} else {
/* NATed src port is the dst port of the reply
*/
new_callid = ct->tuplehash
[IP_CT_DIR_REPLY].tuple.dst.u.tcp.port;
}
/* save new call ID in ct info */
ct_pptp_info->pns_call_id = ntohs(new_callid);
break;
......
It says, if the connection's destination is the local service, then do not
mangle the peer's call-ID.
--
Configure bugmail:
https://bugzilla.netfilter.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
bugzilla-daemon@bugzilla.netfilter.org
2006-Oct-23 09:09 UTC
[Bug 512] poptop (pptpd) will not work if ip_nat_pptp loaded
https://bugzilla.netfilter.org/bugzilla/show_bug.cgi?id=512
------- Additional Comments From yi_he@pmc-sierra.com 2006-10-23 09:09 MET
-------
I've met the problem in the 2.4 kernel as well, and I modified the source
linux/net/ipv4/netfilter/ip_nat_pptp.c like this:
in function pptp_outbound_pkt():
......
switch (msg = ntohs(ctlh->messageType)) {
case PPTP_OUT_CALL_REQUEST:
cid = &pptpReq.ocreq->callID;
/* FIXME: ideally we would want to reserve a call ID
* here. current netfilter NAT core is not able to do
* this :( For now we use TCP source port. This breaks
* multiple calls within one control session */
/* save original call ID in nat_info */
nat_pptp_info->pns_call_id = ct_pptp_info->pns_call_id;
/* He Yi Oct 22, 2006 */
if( inet_addr_type(iph->daddr) == RTN_LOCAL )
{
DEBUGP("DO NOT CHANGE PPTP CALL ID FOR LOCAL
SERVICE!\n");
new_callid = ct_pptp_info->pns_call_id;
} else {
/* NATed src port is the dst port of the reply
*/
new_callid = ct->tuplehash
[IP_CT_DIR_REPLY].tuple.dst.u.tcp.port;
}
/* save new call ID in ct info */
ct_pptp_info->pns_call_id = ntohs(new_callid);
break;
......
It says, if the connection's destination is the local service, then do not
mangle the peer's call-ID.
--
Configure bugmail:
https://bugzilla.netfilter.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You reported the bug, or are watching the reporter.
Seemingly Similar Threads
- [Bug 512] New: poptop (pptpd) will not work if ip_nat_pptp loaded
- [Bug 512] poptop (pptpd) will not work if ip_nat_pptp loaded
- Request for VPN:Poptop HowTo
- GNU/Linux Router with poptop problem
- [Bridge] Help needed about IP class finding in a bridge netfilter module