summaryrefslogtreecommitdiffstats
path: root/usr/local/www/wizards/traffic_shaper_wizard.xml
diff options
context:
space:
mode:
Diffstat (limited to 'usr/local/www/wizards/traffic_shaper_wizard.xml')
-rw-r--r--usr/local/www/wizards/traffic_shaper_wizard.xml1011
1 files changed, 17 insertions, 994 deletions
diff --git a/usr/local/www/wizards/traffic_shaper_wizard.xml b/usr/local/www/wizards/traffic_shaper_wizard.xml
index 48e26da..fba2b68 100644
--- a/usr/local/www/wizards/traffic_shaper_wizard.xml
+++ b/usr/local/www/wizards/traffic_shaper_wizard.xml
@@ -52,12 +52,9 @@
}
</stepbeforeformdisplay>
<stepsubmitphpaction>
- /* wipe previous */
- unset($config['shaper']['queue']);
- unset($config['shaper']['rule']);
- $config['shaper']['enable'] = FALSE;
- $config['shaper']['itemsshaped'] = "0";
+ step1_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>2</id>
@@ -106,121 +103,9 @@
</field>
</fields>
<stepsubmitphpaction>
- if ($config['ezshaper']['step2']['inside_int'] == $config['ezshaper']['step2']['outside_int']) {
- $message="Inside and Outside interfaces cannot be the same";
- header("Location: /wizard.php?xml=traffic_shaper_wizard.xml&amp;stepid={$stepid}&amp;message={$message}");
- exit;
- }
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
-
- /* Magic shaper scheduler */
- $config['shaper']['schedulertype'] = "hfsc";
-
- /* Create queues */
- /* WAN root queue */
- $queue = array();
- $queue['name'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 0;
- $queue['parentqueue'] = "on";
- /* $queue['bandwidth'] = (int)$_POST['upload'] * .8; */
- $queue['bandwidth'] = (int)$_POST['upload'];
- $queue['bandwidthtype'] = "Kb";
- $config['shaper']['queue'][] = $queue;
-
- /* LAN root queue */
- $queue = array();
- $queue['name'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 0;
- $queue['parentqueue'] = "on";
- /* $queue['bandwidth'] = (int)$_POST['download'] * .8; */
- $queue['bandwidth'] = (int)$_POST['download'];
- $queue['bandwidthtype'] = "Kb";
- $config['shaper']['queue'][] = $queue;
-
- /* WAN default queue */
- $queue = array();
- $queue['name'] = "{$upq}def";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['defaultqueue'] = 'true';
- $queue['priority'] = 3;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1%";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
-
- /* LAN default queue */
- $queue = array();
- $queue['name'] = "{$downq}def";
- $queue['priority'] = 3;
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['defaultqueue'] = 'true';
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1%";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* WAN ack queue */
- $queue = array();
- $queue['name'] = "{$upq}acks";
- $queue['ack'] = TRUE;
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 7;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "10%";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
- $queue = array();
-
- /* LAN ack queue */
- $queue['name'] = "{$downq}acks";
- $queue['ack'] = TRUE;
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 7;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "10%";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
-
+ step2_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>3</id>
@@ -372,164 +257,9 @@
</field>
</fields>
<stepsubmitphpaction>
- if($_POST['address']) {
- if(!is_ipaddr($_POST['address'])) {
- if(!is_alias($_POST['address'])) {
- /* item is not an ip or alias. error out */
- $message="Address must be a valid IP address or Firewall Alias. Please correct this value to continue.";
- header("Location: /wizard.php?xml=traffic_shaper_wizard.xml&amp;stepid=3&amp;message={$message}");
- exit;
- }
- }
- }
-
- if ( $_POST['enable'] ) {
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
- $downint = strtolower($config['ezshaper']['step2']['inside_int']);
- $upint = strtolower($config['ezshaper']['step2']['outside_int']);
-
- /* create qVOIPUp */
- $queue = array();
- $queue['name'] = "qVOIPUp";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 7;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = $_POST['bandwidth'] . "Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['bandwidth'] = $_POST['bandwidth'];
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* create qVOIPDown */
- $queue = array();
- $queue['name'] = "qVOIPDown";
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 7;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = $_POST['bandwidth'] . "Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['bandwidth'] = $_POST['bandwidth'];
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- $config['shaper']['itemsshaped']++;
-
- /* If user specifies an IP, we don't bother with providers */
- if( is_ipaddr($_POST['address']) ) {
- /* create VOIP rules */
- $rule = array();
- $rule['descr'] = "VOIP Adapter";
- $rule['inqueue'] = "qVOIPDown";
- $rule['outqueue'] = "qVOIPUp";
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- /* $rule['source']['network'] = $downint; */
- $rule['source']['address'] = $_POST['address'];
- $rule['destination']['any'] = TRUE;
- $config['shaper']['rule'][] = $rule;
-
- $rule = array();
- $rule['descr'] = "VOIP Adapter";
- $rule['inqueue'] = "qVOIPUp";
- $rule['outqueue'] = "qVOIPDown";
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['address'] = $_POST['address'];
- $config['shaper']['rule'][] = $rule;
- } elseif( $_POST['provider'] == "Generic" ) {
- /* create VOIP rules */
- $rule = array();
- $rule['descr'] = "DiffServ/Lowdelay/Upload";
- $rule['inqueue'] = "qVOIPDown";
- $rule['outqueue'] = "qVOIPUp";
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['iptos'] = "lowdelay";
- $config['shaper']['rule'][] = $rule;
-
- $rule = array();
- $rule['descr'] = "DiffServ/Lowdelay/Download";
- $rule['inqueue'] = "qVOIPUp";
- $rule['outqueue'] = "qVOIPDown";
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['iptos'] = "lowdelay";
- $config['shaper']['rule'][] = $rule;
- } else {
-
- $voiplist = array();
-
- /* asterisk server / same as vonage */
- if(($_POST['provider'] == "Asterisk") || ($_POST['provider'] == "Vonage")) {
- $voiplist[] = array('Asterisk', 'udp', '5060', '5069', 'both');
- $voiplist[] = array('Asterisk', 'udp', '10000', '20000', 'both');
- }
-
- /* VoicePulse server */
- if( $_POST['provider'] == "VoicePulse") {
- $voiplist[] = array('VoicePulse', 'udp', '16384', '16482', 'both');
- $voiplist[] = array('VoicePulse', 'udp', '4569', '4569', 'both');
- }
-
- /* Panasonic Hybrid PBX */
- if( $_POST['provider'] == "Panasonic") {
- $voiplist[] = array('Panasonic1', 'udp', '8000', '8063', 'both');
- $voiplist[] = array('Panasonic2', 'udp', '9300', '9301', 'both');
- $voiplist[] = array('Panasonic3', 'udp', '2747', '2747', 'both');
- }
-
- /* Set up/down VOIP as higher weight */
- /* loop through voiplist[] */
- foreach ($voiplist as $voip) {
- foreach (array('source', 'destination') as $srcdest) {
- $rule = array();
- if ($srcdest == 'source') {
- $destsrc = 'destination';
- $rule['inqueue'] = 'qVOIPDown';
- $rule['outqueue'] = 'qVOIPUp';
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['descr'] = "m_voip {$voip[0]} outbound";
- } else {
- $destsrc = 'source';
- $rule['inqueue'] = 'qVOIPUp';
- $rule['outqueue'] = 'qVOIPDown';
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['descr'] = "m_voip {$voip[0]} inbound";
- }
-
- $rule['destination']['port'] = $voip[2]."-".$voip[3];
- if($voip[1] != '')
- $rule['protocol'] = $voip[1];
-
- $config['shaper']['rule'][] = $rule;
- }
- }
- }
- }
-
+ step3_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>4</id>
@@ -697,141 +427,9 @@
</field>
</fields>
<stepsubmitphpaction>
-
- /* XXX - billm - needs to actually honor what the user selects still */
- if ( $_POST['enable'] ) {
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
- $downint = strtolower($config['ezshaper']['step2']['inside_int']);
- $upint = strtolower($config['ezshaper']['step2']['outside_int']);
-
- $p2plist = array();
-
- /* To add p2p clients, push Descr,Protocol,Start,End,src/dest/both onto p2plist */
- if($_POST['aimster'] != "")
- $p2plist[] = array('Aimster', 'tcp', '7668', '7668', 'both');
- if($_POST['bittorrent'] != "")
- $p2plist[] = array('BitTorrent', 'tcp', '6881', '6999', 'both');
- if($_POST['buddyshare'] != "")
- $p2plist[] = array('BuddyShare', 'tcp', '7788', '7788', 'both');
- if($_POST['cutemx'] != "")
- $p2plist[] = array('CuteMX', 'tcp', '2340', '2340', 'both');
- if($_POST['dc++'] != "")
- $p2plist[] = array('DC++', 'tcp', '1412', '1412', 'both');
- if($_POST['dcc'] != "")
- $p2plist[] = array('dcc', 'tcp', '6666', '6668', 'both');
- if($_POST['directconnect'] != "")
- $p2plist[] = array('DirectConnect', 'tcp', '412', '412', 'both');
- if($_POST['directfileexpress'] != "")
- $p2plist[] = array('DirectFileExpress', 'tcp', '1044', '1045', 'both');
- if($_POST['edonkey2000'] != "")
- $p2plist[] = array('EDonkey2000', 'tcp', '4661', '4665', 'both');
- if($_POST['fastTrack'] != "")
- $p2plist[] = array('FastTrack', 'tcp', '1214', '1214', 'both');
- if($_POST['gnutella'] != "") {
- $p2plist[] = array('Gnutella-TCP', 'tcp', '6346', '6346', 'both');
- $p2plist[] = array('Gnutella-UDP', 'udp', '6346', '6346', 'both');
- }
- if($_POST['grouper'] != "")
- $p2plist[] = array('grouper', 'tcp', '8038', '8039', 'both');
- if($_POST['hotcomm'] != "")
- $p2plist[] = array('hotComm', 'tcp', '28864', '28865', 'both');
- if($_POST['hotlineconnect'] != "")
- $p2plist[] = array('HotlineConnect', 'tcp', '5500', '5503', 'both');
- if($_POST['imesh'] != "")
- $p2plist[] = array('iMesh', 'tcp', '4329', '4329', 'both');
- if($_POST['napster'] != "")
- $p2plist[] = array('Napster', 'tcp', '6699', '6701', 'both');
- if($_POST['opennap'] != "")
- $p2plist[] = array('OpenNap', 'tcp', '8888', '8889', 'both');
- if($_POST['scour'] != "")
- $p2plist[] = array('Scour', 'tcp', '8311', '8311', 'both');
- if($_POST['shareaza'] != "")
- $p2plist[] = array('Shareaza', 'tcp', '6346', '6346', 'both');
- if($_POST['songspy'] != "")
- $p2plist[] = array('SongSpy', 'tcp', '5190', '5190', 'both');
- if($_POST['winmx'] != "")
- $p2plist[] = array('WinMX', 'tcp', '6699', '6699', 'both');
-
- /* Set up/down p2p as lowest weight */
- /* loop through p2plist[] */
- foreach ($p2plist as $p2pclient) {
- foreach (array('source', 'destination') as $srcdest) {
- $rule = array();
- $config['shaper']['itemsshaped']++;
- if ($srcdest == 'source') {
- $destsrc = 'destination';
- $rule['inqueue'] = 'qP2PDown';
- $rule['outqueue'] = 'qP2PUp';
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['interface'] = $downint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['descr'] = "m_P2P {$p2pclient[0]} outbound";
- } else {
- $destsrc = 'source';
- $rule['inqueue'] = 'qP2PUp';
- $rule['outqueue'] = 'qP2PDown';
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['descr'] = "m_P2P {$p2pclient[0]} inbound";
- }
-
-
- $rule['destination']['port'] = $p2pclient[2]."-".$p2pclient[3];
- if($p2pclient[1] != '')
- $rule['protocol'] = $p2pclient[1];
-
- $config['shaper']['rule'][] = $rule;
- }
- }
-
- /* create qP2PUp */
- $queue = array();
- $queue['name'] = "qP2PUp";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 0;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* create qP2PDown */
- $queue = array();
- $queue['name'] = "qP2PDown";
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 0;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
- }
+ step4_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>5</id>
@@ -988,235 +586,9 @@
</field>
</fields>
<stepsubmitphpaction>
- /* XXX - billm - needs to actually honor what the user selects still */
- if ( $_POST['enable'] ) {
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
- $downint = strtolower($config['ezshaper']['step2']['inside_int']);
- $upint = strtolower($config['ezshaper']['step2']['outside_int']);
-
- /* create qGamesUp queue */
- $queue = array();
- $queue['name'] = "qGamesUp";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 5;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* create qGamesDown queue */
- $queue = array();
- $queue['name'] = "qGamesDown";
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 5;
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- $gamesplist = array();
-
- if($_POST['battlefield2'] != "") {
- /* Battlefield 2 */
- $gamesplist[] = array('BF2-1500-4999', 'udp', '1500', '4999', 'both');
- $gamesplist[] = array('BF2-4711', 'tcp', '4711', '4711', 'both');
- $gamesplist[] = array('BF2-16567', 'udp', '16567', '16567', 'both');
- $gamesplist[] = array('BF2-27900', 'udp', '27900', '27900', 'both');
- $gamesplist[] = array('BF2-28910', 'tcp', '28910', '28910', 'both');
- $gamesplist[] = array('BF2-29900-29901-UDP', 'udp', '29900', '29901', 'both');
- $gamesplist[] = array('BF2-29900-29901-TCP', 'tcp', '29900', '29901', 'both');
- $gamesplist[] = array('BF2-27900', 'udp', '27900', '27900', 'both');
- $gamesplist[] = array('BF2-55123-55125', 'udp', '55123', '55125', 'both');
- }
-
- if($_POST['counterstrike'] != "") {
- /* counter strike */
- $gamesplist[] = array('Titan', 'udp', '6003', '6003', 'both');
- $gamesplist[] = array('Authentication', 'udp', '7002', '7002', 'both');
- $gamesplist[] = array('Client', 'udp', '6003', '6003', 'both');
- $gamesplist[] = array('Masterserver', 'udp', '27010', '27010', 'both');
- $gamesplist[] = array('Mod-Server', 'udp', '27011', '27011', 'both');
- $gamesplist[] = array('Chat', 'udp', '27012', '27012', 'both');
- $gamesplist[] = array('HL-Serverport ', 'udp', '27015', '27015', 'both');
- }
-
- if($_POST['deltaforce'] != "") {
- /* delta force */
- $gamesplist[] = array('Delta1', 'udp', '17478', '17488', 'both');
- }
-
- if($_POST['quakeiii'] != "") {
- /* quake3 */
- $gamesplist[] = array('quakeiii', 'udp', '27910', '27919', 'both');
- }
-
- if($_POST['tigerwoods2004ps2'] != "") {
- /* tiger woods 2004 ps2 */
- $gamesplist[] = array('Outbound2Player', 'udp', '3658', '3658', 'both');
- $gamesplist[] = array('Outbound2Player2', 'udp', '6000', '6000', 'both');
- $gamesplist[] = array('Outbound2EA', 'tcp', '10300', '10301', 'both');
- }
-
- if($_POST['callofduty'] != "") {
- $gamesplist[] = array('CallOfDuty1', 'tcp', '28960', '28960', 'both');
- $gamesplist[] = array('CallOfDuty2', 'udp', '28960', '28960', 'both');
- }
-
- if($_POST['planetside'] != "") {
- /* PlanetSide */
- $gamesplist[] = array('PlanetSide', 'tcp', '7000', '7000', 'both');
- $gamesplist[] = array('PlanetSide', 'tcp', '7080', '7080', 'both');
- $gamesplist[] = array('PlanetSide2', 'udp', '3016', '3021', 'both');
- $gamesplist[] = array('PlanetSide2', 'udp', '45000', '45010', 'both');
- $gamesplist[] = array('PlanetSide2', 'udp', '30000', '30500', 'both');
- }
-
- if($_POST['halo2'] != "") {
- /* Halo2 + XBOX Live */
- $gamesplist[] = array('Halo2-1', 'udp', '88', '88', 'both');
- $gamesplist[] = array('Halo2-2', 'udp', '3074', '3074', 'both');
- $gamesplist[] = array('Halo2-3', 'tcp', '3074', '3074', 'both');
- }
-
- if($_POST['unrealtournament'] != "") {
- /* Unreal Tournament */
- $gamesplist[] = array('ur1', 'udp', '7777', '7787', 'both');
- $gamesplist[] = array('ur2', 'tcp', '7777', '7787', 'both');
- }
-
- if($_POST['doom3'] != "") {
- /* doom3 */
- $gamesplist[] = array('DOOM3-1', 'udp', '27650', '27650', 'both');
- $gamesplist[] = array('DOOM3-2', 'udp', '27666', '27666', 'both');
- }
-
- if($_POST['empireearth'] != "") {
- /* empire earth */
- $gamesplist[] = array('EmpireEarth-1', 'tcp', '33335', '33336', 'both');
- $gamesplist[] = array('EmpireEarth-2', 'udp', '33334', '33334', 'both');
- }
-
- if($_POST['everquest'] != "") {
- /* everquest */
- $gamesplist[] = array('Everquest-1', 'tcp', '1024', '6000', 'both');
- $gamesplist[] = array('Everquest-2', 'tcp', '7000', '7000', 'both');
- $gamesplist[] = array('Everquest-3', 'udp', '1024', '6000', 'both');
- $gamesplist[] = array('Everquest-4', 'udp', '7000', '7000', 'both');
- }
-
- if($_POST['everquest2'] != "") {
- /* everquest2 */
- $gamesplist[] = array('Everquest2-1', 'tcp', '7000', '7000', 'both');
- $gamesplist[] = array('Everquest2-2', 'udp', '3016', '3021', 'both');
- $gamesplist[] = array('Everquest2-3', 'udp', '9100', '9100', 'both');
- $gamesplist[] = array('Everquest2-4', 'udp', '9700', '9703', 'both');
- $gamesplist[] = array('Everquest2-5', 'udp', '32800', '33000', 'both');
- }
-
- if($_POST['farcry'] != "") {
- /* far cry */
- $gamesplist[] = array('FarCry-1', 'tcp', '49001', '49002', 'both');
- $gamesplist[] = array('FarCry-2', 'udp', '49001', '49002', 'both');
- }
-
- if($_POST['halflife2'] != "") {
- /* halflife 2 */
- $gamesplist[] = array('HL2-1', 'tcp', '27020', '27050', 'both');
- $gamesplist[] = array('HL2-2', 'udp', '1200', '1200', 'both');
- $gamesplist[] = array('HL2-3', 'udp', '27000', '27015', 'both');
- }
-
- if($_POST['halflife'] != "") {
- /* halflife */
- $gamesplist[] = array('HL-1', 'tcp', '27015', '27015', 'both');
- $gamesplist[] = array('HL-2', 'udp', '27650', '27650', 'both');
- $gamesplist[] = array('HL-3', 'udp', '27666', '27666', 'both');
- }
-
- if($_POST['wolfet'] != "") {
- /* wolfenstein enemy territory */
- $gamesplist[] = array('WolfET-1', 'tcp', '27960', '27960', 'both');
- }
-
- if($_POST['lineage2'] != "") {
- /* Lineage II */
- $gamesplist[] = array('Lineage2-2009', 'tcp', '2009', '2009', 'both');
- $gamesplist[] = array('Lineage2-2106', 'tcp', '2106', '2106', 'both');
- $gamesplist[] = array('Lineage2-7777', 'tcp', '7777', '7777', 'both');
- }
-
- if($_POST['battlenet'] != "") {
- /* Blizzard Publishing games */
- $gamesplist[] = array('Battle.NET', 'tcp', '6112', '6119', 'both');
- }
- if($_POST['worldofwarcraft'] != "") {
- /* World of WarCract */
- if ($_POST['battlenet'] == "") {
- /* Add battle.net only if WoW is selected and battle.net isn't */
- $gamesplist[] = array('Battle.NET', 'tcp', '6112', '6119', 'both');
- }
- $gamesplist[] = array('WoW', 'tcp', '3724', '3724', 'both');
- }
- if($_POST['gunzonline'] != "") {
- /* GunZ Online */
- $gamesplist[] = array('GunZOnline', 'udp', '7700', '7700', 'both');
- }
-
- /* XXX: add some more games before this line!! */
-
- /* Set up/down games as higher weight */
- /* loop through p2plist[] */
- foreach ($gamesplist as $Gameclient) {
- foreach (array('source', 'destination') as $srcdest) {
- $rule = array();
- $config['shaper']['itemsshaped']++;
- if ($srcdest == 'source') {
- $destsrc = 'destination';
- $rule['inqueue'] = 'qGamesDown';
- $rule['outqueue'] = 'qGamesUp';
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['descr'] = "m_Game {$Gameclient[0]} outbound";
- } else {
- $destsrc = 'source';
- $rule['inqueue'] = 'qGamesUp';
- $rule['outqueue'] = 'qGamesDown';
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['descr'] = "m_Game {$Gameclient[0]} inbound";
- }
-
- $rule['destination']['port'] = $Gameclient[2]."-".$Gameclient[3];
-
- if($Gameclient[1] != '')
- $rule['protocol'] = $Gameclient[1];
-
- $config['shaper']['rule'][] = $rule;
- }
- }
- }
+ step5_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>6</id>
@@ -1771,279 +1143,9 @@
</field>
</fields>
<stepsubmitphpaction>
- if ( $_POST['enable'] ) {
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
- $downint = strtolower($config['ezshaper']['step2']['inside_int']);
- $upint = strtolower($config['ezshaper']['step2']['outside_int']);
- /* create qOthersUp queue */
- $queue = array();
- $queue['name'] = "qOthersUpH";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 6;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* create qOthersDown queue */
- $queue = array();
- $queue['name'] = "qOthersDownH";
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 6;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
-
- /* create qOthersUp queue */
- $queue = array();
- $queue['name'] = "qOthersUpL";
- $queue['attachtoqueue'] = "{$upq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 2;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- /* create qOthersDown queue */
- $queue = array();
- $queue['name'] = "qOthersDownL";
- $queue['attachtoqueue'] = "{$downq}Root";
- $queue['associatedrule'] = 0;
- $queue['priority'] = 2;
- $queue['red'] = "on";
- $queue['ecn'] = "on";
- if ($config['shaper']['schedulertype'] == "hfsc") {
- $queue['realtime'] = "on";
- $queue['realtime3'] = "1Kb";
- $queue['bandwidth'] = 1;
- $queue['bandwidthtype'] = '%';
- $queue['qlimit'] = 500;
- } elseif ($config['shaper']['schedulertype'] == "cbq") {
- $queue['borrow'] = "on";
- $queue['bandwidth'] = 6;
- $queue['bandwidthtype'] = 'Kb';
- }
- $config['shaper']['queue'][] = $queue;
-
- $othersplist = array();
-
- /* Unlike other areas we are posting the queue H or L or BLANK */
-
- if($_POST['msrdp'] != "") {
- /* MSRDP */
- $othersplist[] = array('MSRDP', 'tcp', '3389', '3389', 'both', $_POST['msrdp']);
- }
-
- if($_POST['pptp'] != "") {
- /* PPTP */
- $othersplist[] = array('PPTP', 'tcp', '1723', '1723', 'both', $_POST['pptp']);
- $othersplist[] = array('PPTPGRE', 'gre', '', '', 'both', $_POST['pptp']);
- }
-
- if($_POST['ipsec'] != "") {
- /* IPSEC */
- $othersplist[] = array('IPSEC', 'udp', '500', '500', 'both', $_POST['ipsec']);
- $othersplist[] = array('IPSEC', 'ah', '', '', 'both', $_POST['ipsec']);
- $othersplist[] = array('IPSEC', 'esp', '', '', 'both', $_POST['ipsec']);
- }
-
- if($_POST['streamingmp3'] != "") {
- /* streaming mp3 media aka shoutcast */
- $othersplist[] = array('STREAMINGMP3', 'tcp', '8000', '8100', 'both', $_POST['streamingmp3']);
- }
-
- if($_POST['irc'] != "") {
- /* internet relay chat */
- $othersplist[] = array('IRC', 'tcp', '6667', '6670', 'both', $_POST['irc']);
- }
-
- if($_POST['dns'] != "") {
- /* domain name system */
- $othersplist[] = array('DNS1', 'tcp', '53', '53', 'both', $_POST['dns']);
- $othersplist[] = array('DNS2', 'udp', '53', '53', 'both', $_POST['dns']);
- }
-
- if($_POST['http'] != "") {
- /* HTTP aka Web Traffic */
- $othersplist[] = array('HTTP', 'tcp', '80', '80', 'both', $_POST['http']);
- $othersplist[] = array('HTTPS', 'tcp', '443', '443', 'both', $_POST['http']);
- }
-
- if($_POST['smtp'] != "") {
- /* Secure shell traffic */
- $othersplist[] = array('SMTP', 'tcp', '25', '25', 'both', $_POST['smtp']);
- }
-
- if($_POST['pop3'] != "") {
- /* Post Office Protocol - POP3 */
- $othersplist[] = array('POP3', 'tcp', '110', '110', 'both', $_POST['pop3']);
- }
-
- if($_POST['icmp'] != "") {
- /* ICMP */
- $othersplist[] = array('ICMP', 'icmp', '', '', 'both', $_POST['icmp']);
- }
-
- if($_POST['imap'] != "") {
- /* IMAP */
- $othersplist[] = array('IMAP', 'tcp', '143', '143', 'both', $_POST['imap']);
- }
-
- if($_POST['smb'] != "") {
- /* Microsoft SMB and friends */
- $othersplist[] = array('SMB1', 'tcp', '445', '445', 'both', $_POST['smb']);
- $othersplist[] = array('SMB2', 'tcp', '137-139', '137-139', 'both', $_POST['smb']);
-
- if($_POST['rtsp'] != "") {
- /* realtime streaming protocol */
- $othersplist[] = array('RTSP1', 'tcp', '554', '554', 'both', $_POST['rtsp']);
- } }
-
- if($_POST['snmp'] != "") {
- /* Simple network management protocol */
- $othersplist[] = array('SNMP', 'tcp', '161', '161', 'both', $_POST['snmp']);
- $othersplist[] = array('SNMP2', 'udp', '161', '161', 'both', $_POST['snmp']);
- }
-
- if($_POST['vnc'] != "") {
- /* virtual network control */
- $othersplist[] = array('VNC', 'tcp', '5900', '5930', 'both', $_POST['vnc']);
- }
-
- if($_POST['appleremotedesktop'] != "") {
- /* apple remote desktop */
- $othersplist[] = array('AppleRemoteDesktop1', 'tcp', '3283', '3283', 'both', $_POST['appleremotedesktop']);
- $othersplist[] = array('AppleRemoteDesktop2', 'tcp', '5900', '5900', 'both', $_POST['appleremotedesktop']);
- $othersplist[] = array('AppleRemoteDesktop3', 'udp', '3283', '3283', 'both', $_POST['appleremotedesktop']);
- $othersplist[] = array('AppleRemoteDesktop4', 'udp', '5900', '5900', 'both', $_POST['appleremotedesktop']);
- }
-
- if($_POST['icq'] != "") {
- /* icq */
- $othersplist[] = array('ICQ1', 'tcp', '5190', '5190', 'both', $_POST['icq']);
- $othersplist[] = array('ICQ2', 'udp', '5190', '5190', 'both', $_POST['icq']);
- }
-
- if($_POST['lotusnotes'] != "") {
- /* lotus notes */
- $othersplist[] = array('LotusNotes1', 'tcp', '1352', '1352', 'both', $_POST['lotusnotes']);
- $othersplist[] = array('LotusNotes2', 'udp', '1352', '1352', 'both', $_POST['lotusnotes']);
- }
- if($_POST['aolinstantmessenger'] != "") {
- /* AIM */
- $othersplist[] = array('AIM', 'tcp', '5190', '5190', 'both', $_POST['aolinstantmessenger']);
- }
-
- if($_POST['msnmessenger'] != "") {
- /* msn messenger */
- $othersplist[] = array('MSN1', 'tcp', '1863', '1863', 'both', $_POST['msnmessenger']);
- $othersplist[] = array('MSN2', 'tcp', '6891', '6900', 'both', $_POST['msnmessenger']);
- $othersplist[] = array('MSN3', 'tcp', '6901', '6901', 'both', $_POST['msnmessenger']);
- $othersplist[] = array('MSN4', 'udp', '6901', '6901', 'both', $_POST['msnmessenger']);
- }
-
- if($_POST['mysqlserver'] != "") {
- /* mysql server */
- $othersplist[] = array('MySQL1', 'tcp', '3306', '3306', 'both', $_POST['mysqlserver']);
- }
-
- if($_POST['nntp'] != "") {
- /* nntp */
- $othersplist[] = array('NNTP1', 'tcp', '119', '119', 'both', $_POST['mysqlserver']);
- $othersplist[] = array('NNTP2', 'udp', '119', '119', 'both', $_POST['mysqlserver']);
- }
-
- if($_POST['pcanywhere'] != "") {
- /* symantec pc anywhere */
- $othersplist[] = array('pcany1', 'tcp', '5631', '5631', 'both', $_POST['pcanywhere']);
- $othersplist[] = array('pcany2', 'udp', '5632', '5632', 'both', $_POST['pcanywhere']);
- }
-
- if($_POST['teamspeak'] != "") {
- /* teamspeak */
- $othersplist[] = array('teamspeak1', 'tcp', '14534', '14534', 'both', $_POST['teamspeak']);
- $othersplist[] = array('teamspeak2', 'tcp', '51234', '51234', 'both', $_POST['teamspeak']);
- $othersplist[] = array('teamspeak3', 'udp', '8767', '8768', 'both', $_POST['teamspeak']);
- }
-
- if($_POST['cvsup'] != "") {
- /* cvsup */
- $othersplist[] = array('cvs', 'tcp', '5999', '5999', 'both', $_POST['cvsup']);
- }
-
- /* XXX: add some more protocols here! */
-
- /* Set up/down protocols as higher weight */
- /* loop through othersplist[] */
- foreach ($othersplist as $otherclient) {
- foreach (array('source', 'destination') as $srcdest) {
- $rule = array();
- $config['shaper']['itemsshaped']++;
- if ($srcdest == 'source') {
- $destsrc = 'destination';
- $rule['inqueue'] = 'qOthersDown' . $otherclient[5]; /* posted value H or L */
- $rule['outqueue'] = 'qOthersUp' . $otherclient[5]; /* posted value H or L */
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['descr'] = "m_Other {$otherclient[0]} outbound";
- } else {
- $destsrc = 'source';
- $rule['inqueue'] = 'qOthersUp' . $otherclient[5]; /* posted value H or L */
- $rule['outqueue'] = 'qOthersDown' . $otherclient[5]; /* posted value H or L */
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['descr'] = "m_Other {$otherclient[0]} inbound";
- }
-
- if($otherclient[2] or $otherclient[3]) {
- $rule['destination']['port'] = $otherclient[2]."-".$otherclient[3];
- if($otherclient[1] != '')
- $rule['protocol'] = $otherclient[1];
- }
-
- $config['shaper']['rule'][] = $rule;
- }
- }
- }
+ step6_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>7</id>
@@ -2065,92 +1167,12 @@
</field>
</fields>
<stepbeforeformdisplay>
- if($config['shaper']['itemsshaped'] == "0") {
- /* no shaper items have been selected
- * wipe previous
- */
- unset($config['shaper']['queue']);
- unset($config['shaper']['rule']);
- unset($config['shaper']);
- $config['shaper']['enable'] = FALSE;
- $message = "No items have been selected to shape. Exiting traffic shaper wizard.";
- write_config("No shaper items picked, unsetting shaper configuration");
- header("Location: /wizard.php?xml=traffic_shaper_wizard.xml&amp;stepid=7&amp;message={$message}");
- exit;
- }
+ step7_stepbeforeformdisplay();
</stepbeforeformdisplay>
<stepsubmitphpaction>
- /* Sort rules by queue priority */
- sort_rule_by_queue_priority();
-
- $downq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['inside_int']);
- $upq = "q" . convert_friendly_interface_to_friendly_descr($config['ezshaper']['step2']['outside_int']);
- $downint = strtolower($config['ezshaper']['step2']['inside_int']);
- $upint = strtolower($config['ezshaper']['step2']['outside_int']);
-
- /* install default p2p catch all rule if user has enabled option (MUST BE LAST!) */
- if($config['ezshaper']['step4']['p2pcatchall'] == "on") {
- $othersplist = array();
- $othersplist[] = array('p2pCatchAll', 'tcp', '', '', 'both', '');
- $othersplist[] = array('p2pCatchAll2', 'udp', '', '', 'both', '');
- } else {
- $othersplist = array();
- }
-
- /* Set up/down protocols as p2p weight */
- /* loop through othersplist[] */
- foreach ($othersplist as $otherclient) {
- foreach (array('source', 'destination') as $srcdest) {
- $rule = array();
- $config['shaper']['itemsshaped']++;
- if ($srcdest == 'source') {
- $destsrc = 'destination';
- $rule['inqueue'] = 'qP2PDown' . $otherclient[5]; /* posted value H or L */
- $rule['outqueue'] = 'qP2PUp' . $otherclient[5]; /* posted value H or L */
- $rule['in-interface'] = $downint;
- $rule['out-interface'] = $upint;
- $rule['source']['network'] = $downint;
- $rule['destination']['any'] = TRUE;
- $rule['descr'] = "p2pCatchAll outbound";
- } else {
- $destsrc = 'source';
- $rule['inqueue'] = 'qP2PUp' . $otherclient[5]; /* posted value H or L */
- $rule['outqueue'] = 'qP2PDown' . $otherclient[5]; /* posted value H or L */
- $rule['in-interface'] = $upint;
- $rule['out-interface'] = $downint;
- $rule['source']['any'] = TRUE;
- $rule['destination']['network'] = $downint;
- $rule['descr'] = "p2pCatchAll inbound";
- }
-
- if($otherclient[2] or $otherclient[3]) {
- $rule['destination']['port'] = $otherclient[2]."-".$otherclient[3];
- if($otherclient[1] != '')
- $rule['protocol'] = $otherclient[1];
- }
-
- if($rule['inqueue'] != "" and $rule['in-interface'] != "" and $rule['out-interface'] != "")
- $config['shaper']['rule'][] = $rule;
- }
- }
-
- /* Enable shaper */
- $config['shaper']['enable'] = TRUE;
-
- /* Prepare for next ezshaper wizard run */
- unset($config['shaper']['itemsshaped']);
-
- /* Create new rules */
- filter_configure();
-
- /* And we're no longer dirty! */
- unlink_if_exists($d_shaperconfdirty_path);
-
- update_filter_reload_status("Initializing");
-
- /* Head over and check out the groovy queue stats */
- header("Location: status_filter_reload.php");
+ step7_stepsubmitphpaction();
</stepsubmitphpaction>
+ <includefile>traffic_shaper_wizard.inc</includefile>
</step>
<step>
<id>8</id>
@@ -2161,8 +1183,9 @@
<type>submit</type>
</field>
</fields>
+ <includefile>traffic_shaper_wizard.inc</includefile>
<stepsubmitphpaction>
- header("Location: status_filter_reload.php");
+ step8_stepsubmitphpaction();
</stepsubmitphpaction>
</step>
</pfsensewizard>
OpenPOWER on IntegriCloud