summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/vpn.inc9
-rwxr-xr-xusr/local/www/vpn_pptp.php9
2 files changed, 17 insertions, 1 deletions
diff --git a/etc/inc/vpn.inc b/etc/inc/vpn.inc
index 2c30acf..0ecd43d 100644
--- a/etc/inc/vpn.inc
+++ b/etc/inc/vpn.inc
@@ -727,11 +727,18 @@ EOD;
$clientip = long2ip(ip2long($pptpdcfg['remoteip']) + $i);
$ngif = "ng" . ($i + $starting_ng);
+ if(isset($pptpdcfg['radius']['radiusissueips']) && isset($pptpdcfg['radius']['enable'])) {
+ $isssue_ip_type = "set ipcp ranges {$pptpdcfg['localip']}/32 0.0.0.0/0";
+ $isssue_ip_type .="\n\tset ipcp yes radius-ip";
+ } else {
+ $isssue_ip_type = "set ipcp ranges {$pptpdcfg['localip']}/32 {$clientip}/32";
+ }
+
$mpdconf .=<<<EOD
pt{$i}:
new -i {$ngif} pt{$i} pt{$i}
- set ipcp ranges {$pptpdcfg['localip']}/32 {$clientip}/32
+ {$isssue_ip_type}
load pts
EOD;
diff --git a/usr/local/www/vpn_pptp.php b/usr/local/www/vpn_pptp.php
index 94e774a..0320052 100755
--- a/usr/local/www/vpn_pptp.php
+++ b/usr/local/www/vpn_pptp.php
@@ -215,6 +215,7 @@ function enable_change(enable_over) {
document.iform.localip.disabled = 0;
document.iform.req128.disabled = 0;
document.iform.radiusenable.disabled = 0;
+ document.iform.radiusissueips.disabled = 0;
document.iform.wins.disabled = 0;
document.iform.n_pptp_units.disabled = 0;
document.iform.pptp_subnet.disabled = 0;
@@ -247,6 +248,7 @@ function enable_change(enable_over) {
document.iform.radacct_enable.disabled = 1;
document.iform.radiusserver.disabled = 1;
document.iform.radiusserverport.disabled = 1;
+ document.iform.radiusissueips.disabled = 1;
document.iform.radiusserveracctport.disabled = 1;
document.iform.radiussecret.disabled = 1;
document.iform.radius_nasip.disabled = 1;
@@ -266,6 +268,7 @@ function enable_change(enable_over) {
document.iform.radacct_enable.disabled = 1;
document.iform.radiusserver.disabled = 1;
document.iform.radiusserverport.disabled = 1;
+ document.iform.radiusissueips.disabled = 1;
document.iform.radiusserveracctport.disabled = 1;
document.iform.radiussecret.disabled = 1;
document.iform.radius_nasip.disabled = 1;
@@ -386,6 +389,12 @@ function enable_change(enable_over) {
primary and secondary dns servers for pptp clients<br>
</tr>
+ <tr>
+ <td width="22%" valign="top" class="vncell">RADIUS issued IP's</td>
+ <td width="78%" valign="top" class="vtable">
+ <input name="radiusissueips" value="yes" type="checkbox" class="formfld" id="radiusissueips"<?php if(isset($pconfig['radiusissueips'])) echo " checked=\"checked\""; ?> />
+ </td>
+ </tr>
<tr>
<td width="22%" valign="top" class="vncell">WINS Server</td>
<td width="78%" valign="top" class="vtable">
OpenPOWER on IntegriCloud