aboutsummaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/freeradius2/freeradius.inc160
-rw-r--r--config/freeradius2/freeradius.xml27
-rw-r--r--config/freeradius2/freeradiusauthorizedmacs.xml217
3 files changed, 378 insertions, 26 deletions
diff --git a/config/freeradius2/freeradius.inc b/config/freeradius2/freeradius.inc
index bc89178a..f3a28e54 100644
--- a/config/freeradius2/freeradius.inc
+++ b/config/freeradius2/freeradius.inc
@@ -390,7 +390,7 @@ if (is_array($arrusers) && !empty($arrusers)) {
// Variables for users file defined parameters
$varusersusername = $users['varusersusername'];
$varuserspassword = $users['varuserspassword'];
- $varuserssimultaneousconnect = ($users['varuserssimultaneousconnect']?$users['varuserssimultaneousconnect']:'1');
+ $varuserssimultaneousconnect = ($users['varuserssimultaneousconnect']?$users['varuserssimultaneousconnect']:'');
$varusersframedipaddress = $users['varusersframedipaddress'];
$varusersframedipnetmask = $users['varusersframedipnetmask'];
$varusersframedroute = $users['varusersframedroute'];
@@ -404,6 +404,8 @@ if (is_array($arrusers) && !empty($arrusers)) {
$varuserspointoftimebytesinput = $users['varuserspointoftimebytesinput'];
$varusersamountofbytesoutput = ($users['varusersamountofbytesoutput']?$users['varusersamountofbytesoutput']:'');
$varuserspointoftimebytesoutput = $users['varuserspointoftimebytesoutput'];
+ $varusersmaxbandwidthup = ($users['varusersmaxbandwidthup']?$users['varusersmaxbandwidthup']:'');
+ $varusersmaxbandwidthdown = ($users['varusersmaxbandwidthdown']?$users['varusersmaxbandwidthdown']:'');
// Clear variables for next user foreach additional options TOP
$varuserstopadditionaloptions = '';
@@ -491,6 +493,14 @@ if (is_array($arrusers) && !empty($arrusers)) {
if ($varusersreplyitem != '') { $varusersreplyitem .=","; }
$varusersreplyitem .= "\n\tTunnel-Type = VLAN,\n\tTunnel-Medium-Type = IEEE-802,\n\tTunnel-Private-Group-ID = " . '"' . $varusersvlanid . '"';
}
+ if ($varusersmaxbandwidthup != '') {
+ if ($varusersreplyitem != '') { $varusersreplyitem .=","; }
+ $varusersreplyitem .= "\n\tWISPr-Bandwidth-Max-Up := $varusersmaxbandwidthup";
+ }
+ if ($varusersmaxbandwidthdown != '') {
+ if ($varusersreplyitem != '') { $varusersreplyitem .=","; }
+ $varusersreplyitem .= "\n\tWISPr-Bandwidth-Max-Down := $varusersmaxbandwidthdown";
+ }
if ($varusersadditionaloptionsreplyitems != '') {
if ($varusersreplyitem != '') { $varusersreplyitem .=","; }
$varusersreplyitem .= "\n\t$varusersadditionaloptionsreplyitems";
@@ -523,18 +533,140 @@ function freeradius_authorizedmacs_resync() {
global $config;
$conf = '';
-
$arrmacs = $config['installedpackages']['freeradiusauthorizedmacs']['config'];
if (is_array($arrmacs) && !empty($arrmacs)) {
foreach ($arrmacs as $macs) {
- // Variables for macs file defined parameters
- $varmacaddress = $macs['varmacaddress'];
- $varmacaddress = "$varmacaddress" . "\n";
+ // Variables for authorized_macs file defined parameters
+ $varmacsaddress = $macs['varmacsaddress'];
+ // We don't need a password but we need this field to make syntac correct for CHECK-ITEMS
+ $varmacspassword = $macs['varmacsaddress'];
+
+ $varmacssimultaneousconnect = ($macs['varmacssimultaneousconnect']?$macs['varmacssimultaneousconnect']:'');
+ $varmacsframedipaddress = $macs['varmacsframedipaddress'];
+ $varmacsframedipnetmask = $macs['varmacsframedipnetmask'];
+ $varmacsframedroute = $macs['varmacsframedroute'];
+ $varmacsexpiration = $macs['varmacsexpiration'];
+ $varmacssessiontimeout = $macs['varmacssessiontimeout'];
+ $varmacslogintime = $macs['varmacslogintime'];
+ $varmacsvlanid = $macs['varmacsvlanid'];
+ $varmacsamountoftime = ($macs['varmacsamountoftime']?$macs['varmacsamountoftime']:'');
+ $varmacspointoftime = $macs['varmacspointoftime'];
+ $varmacsamountofbytesinput = ($macs['varmacsamountofbytesinput']?$macs['varmacsamountofbytesinput']:'');
+ $varmacspointoftimebytesinput = $macs['varmacspointoftimebytesinput'];
+ $varmacsamountofbytesoutput = ($macs['varmacsamountofbytesoutput']?$macs['varmacsamountofbytesoutput']:'');
+ $varmacspointoftimebytesoutput = $macs['varmacspointoftimebytesoutput'];
+ $varmacsmaxbandwidthup = ($macs['varmacsmaxbandwidthup']?$macs['varmacsmaxbandwidthup']:'');
+ $varmacsmaxbandwidthdown = ($macs['varmacsmaxbandwidthdown']?$macs['varmacsmaxbandwidthdown']:'');
+
+ // Clear variables for next mac foreach additional options TOP
+ $varmacstopadditionaloptions = '';
+ $varmacsadditionaloptionstop = '';
+
+ if(!empty($macs['varmacstopadditionaloptions'])) {
+ $varmacstopadditionaloptions = explode("|", ($macs['varmacstopadditionaloptions']));
+ foreach ($varmacstopadditionaloptions as $toptmp) {
+ $varmacsadditionaloptionstop .= $toptmp . "\n";
+ }
+ }
+
+ // Clear variables for next mac foreach additional options: CHECK-ITEMS
+ $varmacscheckitemsadditionaloptions = '';
+ $varmacsadditionaloptionscheckitems = '';
+
+ if(!empty($macs['varmacscheckitemsadditionaloptions'])) {
+ $varmacscheckitemsadditionaloptions = explode("|", ($macs['varmacscheckitemsadditionaloptions']));
+ $varmacsadditionaloptionscheckitems .= '';
+ foreach ($varmacscheckitemsadditionaloptions as $checkitemtmp) {
+ $varmacsadditionaloptionscheckitems .= $checkitemtmp;
+ }
+ }
+
+ // Clear variables for next mac foreach additional options: REPLY-ITEMS
+ $varmacsreplyitemsadditionaloptions = '';
+ $varmacsadditionaloptionsreplyitems = '';
+
+ if(!empty($macs['varmacsreplyitemsadditionaloptions'])) {
+ $varmacsreplyitemsadditionaloptions = explode("|", ($macs['varmacsreplyitemsadditionaloptions']));
+ $varmacsadditionaloptionsreplyitems .= '';
+ foreach ($varmacsreplyitemsadditionaloptions as $replyitemtmp) {
+ $varmacsadditionaloptionsreplyitems .= $replyitemtmp . "\n\t";
+ }
+ }
+
+ // Empty variable
+ $varmacscheckitem = '';
+ $varmacsreplyitem = '';
+
+ // Add the mac attributes to each mac address.
+ $varmacscheckitem = "$varmacsaddress" . " Cleartext-Password := " . '"' . $varmacspassword .'"';
+
+ // Add additional CHECK-ITEMS here. Different formatting in "authorized_macs" file needed.
+ if ($varmacssimultaneousconnect != '') {
+ $varmacscheckitem .= ", Simultaneous-Use := " . '"' . $varmacssimultaneousconnect . '"';
+ }
+ if ($varmacsexpiration != '') {
+ $varmacscheckitem .= ", Expiration := " . '"' . $varmacsexpiration . '"';
+ }
+ if ($varmacslogintime != '') {
+ $varmacscheckitem .= ", Login-Time := " . '"' . $varmacslogintime . '"';
+ }
+ if ($varmacsamountoftime != '') {
+ $varmacscheckitem .= ", Max-" . "$varmacspointoftime" . "-Session := " . "$varmacsamountoftime";
+ }
+ if ($varmacsamountofbytesinput != '') {
+ $varmacscheckitem .= ", Max-" . "$varmacspointoftimebytesinput" . "-Input := " . "$varmacsamountofbytesinput";
+ }
+ if ($varmacsamountofbytesoutput != '') {
+ $varmacscheckitem .= ", Max-" . "$varmacspointoftimebytesoutput" . "-Output := " . "$varmacsamountofbytesoutput";
+ }
+ if ($varmacsadditionaloptionscheckitems != '') {
+ $varmacscheckitem .= ", $varmacsadditionaloptionscheckitems";
+ }
+
+ // Add additional REPLY-ITEMS here. Different formatting in "authorized_macs" file needed.
+ if ($varmacsframedipaddress != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tFramed-IP-Address = $varmacsframedipaddress";
+ }
+ if ($varmacsframedipnetmask != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tFramed-IP-Netmask = $varmacsframedipnetmask";
+ }
+ if ($varmacsframedroute != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tFramed-Route = " . '"' . $varmacsframedroute . '"';
+ }
+ if ($varmacssessiontimeout != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tSession-Timeout := $varmacssessiontimeout";
+ }
+ if ($varmacsvlanid != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tTunnel-Type = VLAN,\n\tTunnel-Medium-Type = IEEE-802,\n\tTunnel-Private-Group-ID = " . '"' . $varmacsvlanid . '"';
+ }
+ if ($varmacsmaxbandwidthup != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tWISPr-Bandwidth-Max-Up := $varmacsmaxbandwidthup";
+ }
+ if ($varmacsmaxbandwidthdown != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\tWISPr-Bandwidth-Max-Down := $varmacsmaxbandwidthdown";
+ }
+ if ($varmacsadditionaloptionsreplyitems != '') {
+ if ($varmacsreplyitem != '') { $varmacsreplyitem .=","; }
+ $varmacsreplyitem .= "\n\t$varmacsadditionaloptionsreplyitems";
+ }
+
+ // Cosmetic fix - This is just to make a blank new line after each macs entry
+ $varmacsreplyitem .= "\n\n";
+
$conf .= <<<EOD
-$varmacaddress
+$varmacsadditionaloptionstop
+$varmacscheckitem
+ $varmacsreplyitem
EOD;
} //end foreach
} // end if
@@ -2429,7 +2561,7 @@ counter maxdailyupload {
reset = daily
counter-name = Daily-Input-Octets
check-name = Max-Daily-Input
- reply-name = ChilliSpot-Max-Input-Octets
+ reply-name = Acct-Input-Octets
cache-size = 5000
}
@@ -2440,7 +2572,7 @@ counter maxdailydownload {
reset = daily
counter-name = Daily-Output-Octets
check-name = Max-Daily-Output
- reply-name = ChilliSpot-Max-Output-Octets
+ reply-name = Acct-Output-Octets
cache-size = 5000
}
@@ -2451,7 +2583,7 @@ counter maxweeklyupload {
reset = weekly
counter-name = Weekly-Input-Octets
check-name = Max-Weekly-Input
- reply-name = ChilliSpot-Max-Input-Octets
+ reply-name = Acct-Input-Octets
cache-size = 5000
}
@@ -2462,7 +2594,7 @@ counter maxweeklydownload {
reset = weekly
counter-name = Weekly-Output-Octets
check-name = Max-Weekly-Output
- reply-name = ChilliSpot-Max-Output-Octets
+ reply-name = Acct-Output-Octets
cache-size = 5000
}
@@ -2473,7 +2605,7 @@ counter maxmonthlyupload {
reset = monthly
counter-name = Monthly-Input-Octets
check-name = Max-Monthly-Input
- reply-name = ChilliSpot-Max-Input-Octets
+ reply-name = Acct-Input-Octets
cache-size = 5000
}
@@ -2484,7 +2616,7 @@ counter maxmonthlydownload {
reset = monthly
counter-name = Monthly-Output-Octets
check-name = Max-Monthly-Output
- reply-name = ChilliSpot-Max-Output-Octets
+ reply-name = Acct-Output-Octets
cache-size = 5000
}
@@ -2495,7 +2627,7 @@ counter maxupload {
reset = never
counter-name = Forever-Input-Octets
check-name = Max-Forever-Input
- reply-name = ChilliSpot-Max-Input-Octets
+ reply-name = Acct-Input-Octets
cache-size = 5000
}
@@ -2506,7 +2638,7 @@ counter maxdownload {
reset = never
counter-name = Forever-Output-Octets
check-name = Max-Forever-Output
- reply-name = ChilliSpot-Max-Output-Octets
+ reply-name = Acct-Output-Octets
cache-size = 5000
}
diff --git a/config/freeradius2/freeradius.xml b/config/freeradius2/freeradius.xml
index 97259310..aab6e29b 100644
--- a/config/freeradius2/freeradius.xml
+++ b/config/freeradius2/freeradius.xml
@@ -220,8 +220,7 @@
<fielddescr>Number of simultaneous connections</fielddescr>
<fieldname>varuserssimultaneousconnect</fieldname>
<description><![CDATA[The maximum of simultaneous connections with this username. (Default: 1)]]></description>
- <default_value>1</default_value>
- <required/>
+ <default_value></default_value>
<type>input</type>
</field>
<field>
@@ -287,10 +286,6 @@
<type>input</type>
</field>
<field>
- <name>AMOUNT OF TIME AND TRAFFIC</name>
- <type>listtopic</type>
- </field>
- <field>
<fielddescr>Amount of Time</fielddescr>
<fieldname>varusersamountoftime</fieldname>
<description><![CDATA[Enter the amount of time for this user in seconds.]]></description>
@@ -310,9 +305,13 @@
</options>
</field>
<field>
+ <name>TRAFFIC AND BANDWIDTH</name>
+ <type>listtopic</type>
+ </field>
+ <field>
<fielddescr>Amount of Upload Traffic</fielddescr>
<fieldname>varusersamountofbytesinput</fieldname>
- <description><![CDATA[Enter the amount of upload traffic for this user in bytes. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a user should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
+ <description><![CDATA[Enter the amount of upload traffic for this user in <b>bytes</b>. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a user should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
<type>input</type>
</field>
<field>
@@ -331,7 +330,7 @@
<field>
<fielddescr>Amount of Download Traffic</fielddescr>
<fieldname>varusersamountofbytesoutput</fieldname>
- <description><![CDATA[Enter the amount of download traffic for this user in bytes. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a user should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
+ <description><![CDATA[Enter the amount of download traffic for this user in <b>bytes</b>. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a user should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
<type>input</type>
</field>
<field>
@@ -348,6 +347,18 @@
</options>
</field>
<field>
+ <fielddescr>Maximum Download Bandwidth</fielddescr>
+ <fieldname>varusersmaxbandwidthdown</fieldname>
+ <description><![CDATA[Enter the maximum bandwidth for download in bps (<b>bits</b> per second).]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Maximum Upload Bandwidth</fielddescr>
+ <fieldname>varusersmaxbandwidthup</fieldname>
+ <description><![CDATA[Enter the maximum bandwidth for upload in bps (<b>bits</b> per second).]]></description>
+ <type>input</type>
+ </field>
+ <field>
<name>MISCELLANEOUS CONFIGURATION</name>
<type>listtopic</type>
</field>
diff --git a/config/freeradius2/freeradiusauthorizedmacs.xml b/config/freeradius2/freeradiusauthorizedmacs.xml
index 021f8772..7abd26f5 100644
--- a/config/freeradius2/freeradiusauthorizedmacs.xml
+++ b/config/freeradius2/freeradiusauthorizedmacs.xml
@@ -166,7 +166,31 @@
<adddeleteeditpagefields>
<columnitem>
<fielddescr>MAC Address</fielddescr>
- <fieldname>varmacaddress</fieldname>
+ <fieldname>varmacsaddress</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>Simult. Connections</fielddescr>
+ <fieldname>varmacssimultaneousconnect</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>IP Address</fielddescr>
+ <fieldname>varmacsframedipaddress</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>Expiration Date</fielddescr>
+ <fieldname>varmacsexpiration</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>Session Timeout</fielddescr>
+ <fieldname>varmacssessiontimeout</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>Possible Login Times</fielddescr>
+ <fieldname>varmacslogintime</fieldname>
+ </columnitem>
+ <columnitem>
+ <fielddescr>VLAN ID</fielddescr>
+ <fieldname>varmacsvlanid</fieldname>
</columnitem>
<columnitem>
<fielddescr>Description</fielddescr>
@@ -180,17 +204,202 @@
</field>
<field>
<fielddescr>MAC Address</fielddescr>
- <fieldname>varmacaddress</fieldname>
- <description><![CDATA[Enther the MAC Address of the host. Format is: 00-11-22-33-44-55]]></description>
+ <fieldname>varmacsaddress</fieldname>
+ <description><![CDATA[Enter the MAC address. Format must be: 0a-1b-2c-4d-5f-fa]]></description>
<type>input</type>
<required/>
</field>
<field>
+ <fielddescr>Number of simultaneous connections</fielddescr>
+ <fieldname>varmacssimultaneousconnect</fieldname>
+ <description><![CDATA[The maximum of simultaneous connections with this MAC address.]]></description>
+ <default_value></default_value>
+ <type>input</type>
+ </field>
+ <field>
+ <name>NETWORK CONFIGURATION</name>
+ <type>listtopic</type>
+ </field>
+ <field>
+ <fielddescr>IP Address</fielddescr>
+ <fieldname>varmacsframedipaddress</fieldname>
+ <description><![CDATA[<b>Framed-IP-Address</b> must be supported by NAS.<br><br>
+ If you want this MAC address to be assigned a specific IP address from radius, enter the IP address here.<br>
+ Continuous IP address is available with "+" suffix (e.g. 192.168.1.5+). Could be useful for simultaneous connections.<br><br>
+ <b>IMPORTANT:</b> You must enter an IP address here if you checked "RADIUS issued IP" on VPN PPTP or VPN PPPoE configuration.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Subnet Mask</fielddescr>
+ <fieldname>varmacsframedipnetmask</fieldname>
+ <description><![CDATA[<b>Framed-IP-Netmask</b> must be supported by NAS. (e.g. 255.255.255.0)]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Gateway</fielddescr>
+ <fieldname>varmacsframedroute</fieldname>
+ <description><![CDATA[<b>Framed-Route</b> must be supported by NAS. Format is: Subnet Gateway Metric (e.g. 192.168.10.0 192.168.10.1 1).]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>VLAN ID</fielddescr>
+ <fieldname>varmacsvlanid</fieldname>
+ <description><![CDATA[Enter the VLAN ID (integer from 1-4095) or the VLAN name that this MAC address should be assigned to.<br>
+ Must be supported by the NAS.<br>
+ This setting can be used for a NAS that supports the following RADIUS parameters:<br><br>
+
+ Tunnel-Type = VLAN<br>
+ Tunnel-Medium-Type = IEEE-802<br>
+ Tunnel-Private-Group-ID = "<b>THIS IS YOUR INPUT</b>"]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <name>TIME CONFIGURATION</name>
+ <type>listtopic</type>
+ </field>
+ <field>
+ <fielddescr>Expiration Date</fielddescr>
+ <fieldname>varmacsexpiration</fieldname>
+ <description><![CDATA[Enter the date when this account should expire. Format is: Mmm dd yyyy (e.g. Jan 01 2012).]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Session Timeout</fielddescr>
+ <fieldname>varmacssessiontimeout</fieldname>
+ <description><![CDATA[Enter the time this MAC address has until relogin in seconds.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Possible Login Times</fielddescr>
+ <fieldname>varmacslogintime</fieldname>
+ <description><![CDATA[Enter the time when this MAC address should have access. If no time is entered it means "always".<br>
+ Every time string contains a day (Mo,Tu,We,Th,Fr,Sa,Su) or all weekdays which is from monday till friday (Wk).<br><br>
+ <b>Wk0855-2305,Sa,Su2230-0230</b><br><br>
+ This means weekdays after 8:55 AM and before 11:05 PM | any time on saturday | sunday after 10:30 PM and before 02:30 AM.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Amount of Time</fielddescr>
+ <fieldname>varmacsamountoftime</fieldname>
+ <description><![CDATA[Enter the amount of time for this MAC address in seconds.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Time Period</fielddescr>
+ <fieldname>varmacspointoftime</fieldname>
+ <description><![CDATA[Select the time period for the amount of time.]]></description>
+ <type>select</type>
+ <default_value>daily</default_value>
+ <options>
+ <option><name>Daily</name><value>Daily</value></option>
+ <option><name>Weekly</name><value>Weekly</value></option>
+ <option><name>Monthly</name><value>Monthly</value></option>
+ <option><name>Forever</name><value>Forever</value></option>
+ </options>
+ </field>
+ <field>
+ <name>TRAFFIC AND BANDWIDTH</name>
+ <type>listtopic</type>
+ </field>
+ <field>
+ <fielddescr>Amount of Upload Traffic</fielddescr>
+ <fieldname>varmacsamountofbytesinput</fieldname>
+ <description><![CDATA[Enter the amount of upload traffic for this MAC address in <b>bytes</b>. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a MAC address should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Time Period</fielddescr>
+ <fieldname>varmacspointoftimebytesinput</fieldname>
+ <description><![CDATA[Select the time period for the amount of upload traffic.]]></description>
+ <type>select</type>
+ <default_value>daily</default_value>
+ <options>
+ <option><name>Daily</name><value>Daily</value></option>
+ <option><name>Weekly</name><value>Weekly</value></option>
+ <option><name>Monthly</name><value>Monthly</value></option>
+ <option><name>Forever</name><value>Forever</value></option>
+ </options>
+ </field>
+ <field>
+ <fielddescr>Amount of Download Traffic</fielddescr>
+ <fieldname>varmacsamountofbytesoutput</fieldname>
+ <description><![CDATA[Enter the amount of download traffic for this MAC address in <b>bytes</b>. There is a bug in CaptivePortal which counts the traffic six times faster than in reality. So if a MAC address should have 1MB of traffic you must calculate 6+1MB and enter here: 6000000.]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Time Period</fielddescr>
+ <fieldname>varmacspointoftimebytesoutput</fieldname>
+ <description><![CDATA[Select the time period for the amount of download limit.]]></description>
+ <type>select</type>
+ <default_value>daily</default_value>
+ <options>
+ <option><name>Daily</name><value>Daily</value></option>
+ <option><name>Weekly</name><value>Weekly</value></option>
+ <option><name>Monthly</name><value>Monthly</value></option>
+ <option><name>Forever</name><value>Forever</value></option>
+ </options>
+ </field>
+ <field>
+ <fielddescr>Maximum Download Bandwidth</fielddescr>
+ <fieldname>varmacsmaxbandwidthdown</fieldname>
+ <description><![CDATA[Enter the maximum bandwidth for download in bps (<b>bits</b> per second).]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <fielddescr>Maximum Upload Bandwidth</fielddescr>
+ <fieldname>varmacsmaxbandwidthup</fieldname>
+ <description><![CDATA[Enter the maximum bandwidth for upload in bps (<b>bits</b> per second).]]></description>
+ <type>input</type>
+ </field>
+ <field>
+ <name>MISCELLANEOUS CONFIGURATION</name>
+ <type>listtopic</type>
+ </field>
+ <field>
<fielddescr>Description</fielddescr>
<fieldname>description</fieldname>
- <description><![CDATA[Enter any description for this MAC you like.]]></description>
+ <description><![CDATA[Enter any description for this MAC address you like.]]></description>
<type>input</type>
</field>
+ <field>
+ <fielddescr>Additional RADIUS Attributes on the TOP of this entry</fielddescr>
+ <fieldname>varmacstopadditionaloptions</fieldname>
+ <description><![CDATA[This is for experts only and should be treat with care!<br>
+ You may append custom RADIUS options to this MAC address account. If the syntax needs it, you have to set quotes and commas.<br>
+ To put a command in a new line use a vertical bar (|).<br><br>
+ Example: DEFAULT Auth-Type = System<br><br>
+ <b>IMPORTANT:</b> If you don't format this field correctly freeRADIUS will not start because of syntax errors.<br>
+ Verify your changes by checking authorized_macs file (View config -> macs).]]></description>
+ <type>textarea</type>
+ <rows>4</rows>
+ <cols>75</cols>
+ </field>
+ <field>
+ <fielddescr>Additional RADIUS Attributes (CHECK-ITEM).</fielddescr>
+ <fieldname>varmacscheckitemsadditionaloptions</fieldname>
+ <description><![CDATA[This is for experts only and should be treat with care!<br>
+ You may append custom RADIUS options to this MAC address account. If the syntax needs it, you have to set quotes and commas.<br>
+ To put a command in a new line use a vertical bar (|).<br><br>
+ Example: Max-Daily-Session := 36000<br><br>
+ <b>IMPORTANT:</b> If you don't format this field correctly freeRADIUS will not start because of syntax errors.<br>
+ Verify your changes by checking authorized_macs file (View config -> macs).]]></description>
+ <type>textarea</type>
+ <rows>4</rows>
+ <cols>75</cols>
+ </field>
+ <field>
+ <fielddescr>Additional RADIUS Attributes (REPLY-ITEM).</fielddescr>
+ <fieldname>varmacsreplyitemsadditionaloptions</fieldname>
+ <description><![CDATA[This is for experts only and should be treat with care!<br>
+ You may append custom RADIUS options to this MAC address account. If the syntax needs it, you have to set quotes and commas.<br>
+ To put a command in a new line use a vertical bar (|).<br><br>
+ Example: Service-Type == Login-User,|Login-Service == Telnet,|Login-IP-Host == 192.168.1.2<br><br>
+ <b>IMPORTANT:</b> If you don't format this field correctly freeRADIUS will not start because of syntax errors.<br>
+ Verify your changes by checking authorized_macs file (View config -> macs).]]></description>
+ <type>textarea</type>
+ <rows>4</rows>
+ <cols>75</cols>
+ </field>
</fields>
<custom_delete_php_command>
freeradius_authorizedmacs_resync();