diff options
author | Scott Ullrich <sullrich@pfsense.org> | 2005-06-21 04:16:32 +0000 |
---|---|---|
committer | Scott Ullrich <sullrich@pfsense.org> | 2005-06-21 04:16:32 +0000 |
commit | dc1cf48ce650d7be16e788c314104aafe9dd83f0 (patch) | |
tree | 87830c3aff546e08a94c9288405fa254b7e2962f | |
parent | 7b087b5a6e400ed8502939a50e5ee70e20ac995a (diff) | |
download | pfsense-packages-dc1cf48ce650d7be16e788c314104aafe9dd83f0.tar.gz pfsense-packages-dc1cf48ce650d7be16e788c314104aafe9dd83f0.tar.bz2 pfsense-packages-dc1cf48ce650d7be16e788c314104aafe9dd83f0.zip |
Move carp to base
-rw-r--r-- | packages/carp.xml | 237 | ||||
-rw-r--r-- | packages/carp_status.php | 166 | ||||
-rw-r--r-- | pkg_config.xml | 10 |
3 files changed, 0 insertions, 413 deletions
diff --git a/packages/carp.xml b/packages/carp.xml deleted file mode 100644 index 02a78d22..00000000 --- a/packages/carp.xml +++ /dev/null @@ -1,237 +0,0 @@ -<?xml version="1.0" encoding="utf-8" ?> -<packagegui> - <name>carp</name> - <version>0.1.0</version> - <xmlver>$Revision$</xmlver> - <title>Services: CARP (failover)</title> - <!-- Menu is where this packages menu will appear --> - <menu> - <name>CARP (failover)</name> - <tooltiptext>CARP is a tool to help achieve system redundancy, by having multiple computers creating a single, virtual network interface between them.</tooltiptext> - <section>Services</section> - <url>carp_status.php</url> - </menu> - <tabs> - <tab> - <text>CARP Virtual IPs</text> - <url>/pkg_edit.php?xml=carp.xml</url> - <active/> - </tab> - <tab> - <text>CARP Status</text> - <url>carp_status.php</url> - </tab> - <tab> - <text>CARP Settings</text> - <url>pkg_edit.php?xml=carp_settings.xml&id=0</url> - </tab> - </tabs> - <additional_files_needed> - <prefix>/usr/local/pkg/</prefix> - <chmod>a+rx</chmod> - <item>http://www.pfsense.com/packages/config/carp_settings.xml</item> - </additional_files_needed> - <additional_files_needed> - <prefix>/usr/local/pkg/pf/</prefix> - <chmod>a+rx</chmod> - <item>http://www.pfsense.com/packages/config/carp_sync_client.php</item> - </additional_files_needed> - <additional_files_needed> - <prefix>/usr/local/pkg/</prefix> - <chmod>a+rx</chmod> - <nosync/> - <item>http://www.pfsense.com/packages/config/carp_sync_server.php</item> - </additional_files_needed> - <additional_files_needed> - <prefix>/usr/local/www/</prefix> - <chmod>a+rx</chmod> - <item>http://www.pfsense.com/packages/config/carp_status.php</item> - </additional_files_needed> - <!-- configpath gets expanded out automatically and config items will be - stored in that location --> - <configpath>['installedpackages']['carp']['config']</configpath> - <adddeleteeditpagefields> - <columnitem> - <fielddescr>VHID Group</fielddescr> - <fieldname>vhid</fieldname> - </columnitem> - <columnitem> - <fielddescr>Virtual IP Address</fielddescr> - <fieldname>ipaddress</fieldname> - </columnitem> - <columnitem> - <fielddescr>Advertising Frequency</fielddescr> - <fieldname>advskew</fieldname> - </columnitem> - <columnitem> - <fielddescr>Netmask</fielddescr> - <fieldname>netmask</fieldname> - </columnitem> - </adddeleteeditpagefields> - <!-- fields gets invoked when the user adds or edits a item. the following items - will be parsed and rendered for the user as a gui with input, and selectboxes. --> - <fields> - <field> - <fielddescr>Virtual IP Address</fielddescr> - <fieldname>ipaddress</fieldname> - <description>Enter the IP Address that you would like to share on both machines</description> - <type>input</type> - </field> -<!-- - <field> - <fielddescr>Bind Virtual IP to interface</fielddescr> - <fieldname>interface</fieldname> - <description>Select the interface that this IP should bind to (carpdev). Leave this set to AUTO for the system to automatically deterimine where to setup the IP.</description> - <add_to_interfaces_selection>AUTO</add_to_interfaces_selection> - <size>3</size> - <value>AUTO</value> - <type>interfaces_selection</type> - </field> ---> - <field> - <fielddescr>Virtual IP Netmask</fielddescr> - <fieldname>netmask</fieldname> - <description>Enter the IP Address's netmask that you would like to share on both machines</description> - <type>select</type> - <value>24</value> - <options> - <option><value>1</value><name>1</name></option> - <option><value>2</value><name>2</name></option> - <option><value>3</value><name>3</name></option> - <option><value>4</value><name>4</name></option> - <option><value>5</value><name>5</name></option> - <option><value>6</value><name>6</name></option> - <option><value>7</value><name>7</name></option> - <option><value>8</value><name>8</name></option> - <option><value>9</value><name>9</name></option> - <option><value>10</value><name>10</name></option> - <option><value>11</value><name>11</name></option> - <option><value>12</value><name>12</name></option> - <option><value>13</value><name>13</name></option> - <option><value>14</value><name>14</name></option> - <option><value>15</value><name>15</name></option> - <option><value>16</value><name>16</name></option> - <option><value>17</value><name>17</name></option> - <option><value>18</value><name>18</name></option> - <option><value>19</value><name>19</name></option> - <option><value>20</value><name>20</name></option> - <option><value>21</value><name>21</name></option> - <option><value>22</value><name>22</name></option> - <option><value>23</value><name>23</name></option> - <option><value>24</value><name>24</name></option> - <option><value>25</value><name>25</name></option> - <option><value>26</value><name>26</name></option> - <option><value>27</value><name>27</name></option> - <option><value>28</value><name>28</name></option> - <option><value>29</value><name>29</name></option> - <option><value>30</value><name>30</name></option> - <option><value>31</value><name>31</name></option> - <option><value>32</value><name>32</name></option> - </options> - </field> - <field> - <fielddescr>Virtual IP Password</fielddescr> - <fieldname>password</fieldname> - <description>Enter the VHID group password.</description> - <type>password</type> - </field> - <field> - <fielddescr>VHID Group</fielddescr> - <fieldname>vhid</fieldname> - <description>Enter the VHID group that the machines will share</description> - <type>select</type> - <value>1</value> - <options> - <option><value>1</value><name>1 (DEFAULT)</name></option> - <option><value>2</value><name>2</name></option> - <option><value>3</value><name>3</name></option> - <option><value>4</value><name>4</name></option> - <option><value>5</value><name>5</name></option> - <option><value>6</value><name>6</name></option> - <option><value>7</value><name>7</name></option> - <option><value>8</value><name>8</name></option> - <option><value>9</value><name>9</name></option> - <option><value>10</value><name>10</name></option> - <option><value>11</value><name>11</name></option> - <option><value>12</value><name>12</name></option> - <option><value>13</value><name>13</name></option> - <option><value>14</value><name>14</name></option> - <option><value>15</value><name>15</name></option> - <option><value>16</value><name>16</name></option> - <option><value>17</value><name>17</name></option> - <option><value>18</value><name>18</name></option> - <option><value>19</value><name>19</name></option> - <option><value>20</value><name>20</name></option> - <option><value>21</value><name>21</name></option> - <option><value>22</value><name>22</name></option> - <option><value>23</value><name>23</name></option> - <option><value>24</value><name>24</name></option> - <option><value>25</value><name>25</name></option> - <option><value>26</value><name>26</name></option> - <option><value>27</value><name>27</name></option> - <option><value>28</value><name>28</name></option> - <option><value>29</value><name>29</name></option> - <option><value>30</value><name>30</name></option> - </options> - </field> - <field> - <fielddescr>Advertising Frequency</fielddescr> - <fieldname>advskew</fieldname> - <description>The frequency that this machine will advertise. 0 = master. Anything above 0 designates a backup.</description> - <type>select</type> - <value>0</value> - <options> - <option><value>0</value><name>0 (DEFAULT)</name></option> - <option><value>1</value><name>1</name></option> - <option><value>2</value><name>2</name></option> - <option><value>3</value><name>3</name></option> - <option><value>4</value><name>4</name></option> - <option><value>5</value><name>5</name></option> - <option><value>6</value><name>6</name></option> - <option><value>7</value><name>7</name></option> - <option><value>8</value><name>8</name></option> - <option><value>9</value><name>9</name></option> - <option><value>10</value><name>10</name></option> - <option><value>11</value><name>11</name></option> - <option><value>12</value><name>12</name></option> - <option><value>13</value><name>13</name></option> - <option><value>14</value><name>14</name></option> - <option><value>15</value><name>15</name></option> - <option><value>16</value><name>16</name></option> - <option><value>17</value><name>17</name></option> - <option><value>18</value><name>18</name></option> - <option><value>19</value><name>19</name></option> - <option><value>20</value><name>20</name></option> - <option><value>21</value><name>21</name></option> - <option><value>22</value><name>22</name></option> - <option><value>23</value><name>23</name></option> - <option><value>24</value><name>24</name></option> - <option><value>25</value><name>25</name></option> - <option><value>26</value><name>26</name></option> - <option><value>27</value><name>27</name></option> - <option><value>28</value><name>28</name></option> - <option><value>29</value><name>29</name></option> - <option><value>30</value><name>30</name></option> - </options> - </field> - </fields> - <custom_php_command_before_form> - </custom_php_command_before_form> - <custom_add_php_command_late> - interfaces_carp_configure(); - interfaces_carp_bringup(); - </custom_add_php_command_late> - <custom_php_resync_config_command> - </custom_php_resync_config_command> - <custom_delete_php_command> - interfaces_carp_configure(); - interfaces_carp_bringup(); - </custom_delete_php_command> - <custom_php_deinstall_command> - unlink_if_exists("/usr/local/www/carp*"); - unlink_if_exists("/usr/local/pkg/carp*"); - unlink_if_exists("/usr/local/pkg/pf/carp*"); - unlink_if_exists("/usr/local/etc/rc.d/carp*"); - unlink_if_exists("/usr/local/pkg/pf/carp*"); - </custom_php_deinstall_command> -</packagegui> diff --git a/packages/carp_status.php b/packages/carp_status.php deleted file mode 100644 index 1de0a2d1..00000000 --- a/packages/carp_status.php +++ /dev/null @@ -1,166 +0,0 @@ -#!/usr/local/bin/php -<?php -/* - carp_status.php - Copyright (C) 2004 Scott Ullrich - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ - -require("guiconfig.inc"); -require("xmlparse_pkg.inc"); - -function gentitle_pkg($pgname) { - global $config; - return $config['system']['hostname'] . "." . $config['system']['domain'] . " - " . $pgname; -} - -$status = get_carp_status(); -if($_POST['disablecarp'] <> "") { - if($status == true) { - $carp_counter=find_number_of_created_carp_interfaces(); - mwexec("/sbin/sysctl net.inet.carp.allow=0"); - for($x=0; $x<$carp_counter; $x++) { - mwexec("/sbin/ifconfig carp{$x} down"); - mwexec("/sbin/ifconfig carp{$x} destroy"); - } - $savemsg = "{$carp_counter} IPs have been disabled."; - } else { - $savemsg = "CARP has been enabled."; - mwexec("/sbin/sysctl net.inet.carp.allow=1"); - interfaces_carp_configure(); - interfaces_carp_bringup(); - } -} - -$status = get_carp_status(); -?> -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<?php $title = "CARP: Status"; ?> -<title><?=gentitle_pkg($title);?></title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="gui.css" rel="stylesheet" type="text/css"> -</head> - -<body link="#0000CC" vlink="#0000CC" alink="#0000CC"> -<?php -include("fbegin.inc"); -?> -<p class="pgtitle"><?=$title?></p> -<form action="carp_status.php" method="post"> -<?php if ($savemsg) print_info_box($savemsg); ?> - -<table width="100%" border="0" cellpadding="0" cellspacing="0"> -<tr><td> - <ul id="tabnav"> - <li class="tabinact"><a href="/pkg.php?xml=carp.xml">CARP Virtual IPs</a></li> - <li class="tabact">CARP Status</li> - <li class="tabinact"><a href="/pkg_edit.php?xml=carp_settings.xml&id=0">CARP Settings</a></li> - </ul> -</td></tr> -<tr><td class="tabcont"> - -<?php - if($status == false) { - $carp_enabled = false; - echo "<input type=\"submit\" name=\"disablecarp\" id=\"disablecarp\" value=\"Enable Carp\">"; - } else { - $carp_enabled = true; - echo "<input type=\"submit\" name=\"disablecarp\" id=\"disablecarp\" value=\"Disable Carp\">"; - } - -if(!is_array($config['installedpackages']['carp']['config'])) { - echo "</td></tr></table>Could not locate any defined CARP interfaces."; - exit; -} -?> - -<p> - -<table width="100%" border="0" cellpadding="6" cellspacing="0"> -</tr> -<tr> - <td class="listhdrr"><b><center>Carp Interface</center></b></td> - <td class="listhdrr"><b><center>Virtual IP</center></b></td> - <td class="listhdrr"><b><center>Status</center></b></td> -</tr> -<?php - -if($config['installedpackages']['carp']['config'] <> "") - $carpint=0; - foreach($config['installedpackages']['carp']['config'] as $carp) { - $ipaddress = $carp['ipaddress']; - $premption = $carp['premption']; - $password = $carp['password']; - $netmask = $carp['netmask']; - $vhid = $carp['vhid']; - $advskew = $carp['advskew']; - $pfsync = $carp['pfsync']; - $synciface = $carp['synciface']; - $carp_int = find_carp_interface($ipaddress); - $status = get_carp_interface_status($carp_int); - if(isset($carp['balancing'])) $balancing = "true"; else $balancing = "false"; - if(isset($carp['premption'])) $premption = "true"; else $premption = "false"; - echo "<tr>"; - $align = "valign='middle'"; - if($carp_enabled == false) { - $icon = "<img {$align} src='/block.gif'>"; - $status = "DISABLED"; - $carp_int = "carp" . $carpint; - } else { - if($status == "MASTER") { - $icon = "<img {$align} src='/pass.gif'>"; - } else if($status == "BACKUP") { - $icon = "<img {$align} src='/pass_d.gif'>"; - } else if($status == "INIT") { - $icon = "<img {$align} src='/log.gif'>"; - } - } - echo "<td class=\"listlr\"><center>" . $carp_int . " </td>"; - echo "<td class=\"listlr\"><center>" . $ipaddress . " </td>"; - echo "<td class=\"listlr\"><center>{$icon} " . $status . " </td>"; - echo "</tr>"; - $carpint++; - } - -?> -<tr><td> -<center> -<?php - echo "<br>pfSync nodes:<br>"; - echo "<pre>"; - system("/sbin/pfctl -vvss | /usr/bin/grep creator | /usr/bin/cut -d\" \" -f7 | /usr/bin/sort -u"); - echo "</pre>"; -?> -</center> -</td></tr> -</table> -</td></tr> -</table> - -<?php include("fend.inc"); ?> -</body> -</html> - diff --git a/pkg_config.xml b/pkg_config.xml index 5f2b3b5f..46c99d27 100644 --- a/pkg_config.xml +++ b/pkg_config.xml @@ -67,16 +67,6 @@ <configurationfile>stunnel.xml</configurationfile> </package> <package> - <name>carp</name> - <descr>CARP is a tool to help achieve system redundancy by having multiple computers creating a single, virtual network interface between them. This allows another machine to respond in the event a server fails, and allows a degree of load sharing between systems. CARP is an improvement over the Virtual Router Redundancy Protocol (VRRP) standard. It was developed after VRRP was shown to possibly overlap a Cisco patent.</descr> - <website>http://www.openbsd.org/faq/faq6.html#CARP</website> - <category>Network Management</category> - <version>0.1.0</version> - <status>ALPHA</status> - <config_file>http://www.pfsense.com/packages/config/carp.xml</config_file> - <configurationfile>carp.xml</configurationfile> - </package> - <package> <name>iperf</name> <website>http://dast.nlanr.net/Projects/Iperf/</website> <descr>Iperf is a tool for measuring maximum TCP and UDP bandwidth, reminiscent of ttcp and nettest. It has been written to overcome the shortcomings of those aging tools. Iperf can also test UDP bandwidth, loss, and jitter.</descr> |