summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2011-05-24 13:39:38 -0400
committerjim-p <jimp@pfsense.org>2011-05-24 13:39:38 -0400
commit4e12754d1ae3405a8910686a7fa0bb012c01d8da (patch)
tree992e1af1d1bdabb1b3886412e9778f75c93e98c5 /etc
parentbdb6bd30651fc219acf5a0171752164d680a1c7b (diff)
downloadpfsense-4e12754d1ae3405a8910686a7fa0bb012c01d8da.zip
pfsense-4e12754d1ae3405a8910686a7fa0bb012c01d8da.tar.gz
Fix automatic and manual outbound NAT for PPTP. Fixes #954
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/filter.inc10
1 files changed, 4 insertions, 6 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc
index bdb3541..f0c718a 100644
--- a/etc/inc/filter.inc
+++ b/etc/inc/filter.inc
@@ -1326,12 +1326,10 @@ function filter_nat_rules_generate() {
}
}
/* PPTP subnet */
- if(isset($FilterIflist['pptp']) && $FilterIflist['pptp']['mode'] == "server" ) {
- $pptp_subnet = $FilterIflist['pptp']['sn'];
- if(is_private_ip($FilterIflist['pptp']['sa']) && !empty($pptp_subnet)) {
- $numberofnathosts++;
- $tonathosts .= "{$FilterIflist['pptp']['sa']}/{$pptp_subnet} ";
- }
+ if(($config['pptpd']['mode'] == "server" ) && is_private_ip($config['pptpd']['remoteip'])) {
+ $pptp_subnets = ip_range_to_subnet_array($config['pptpd']['remoteip'], long2ip32(ip2long($config['pptpd']['remoteip'])+$config['pptpd']['n_pptp_units']));
+ $numberofnathosts += count($pptp_subnets);
+ $tonathosts .= implode(" ", $pptp_subnets) . " ";
}
/* PPPoE subnet */
if(isset($FilterIflist['pppoe']) && $FilterIflist['pppoe']['mode'] == "server") {
OpenPOWER on IntegriCloud