Revision ee11cc6e
Added by Scott Ullrich over 20 years ago
cf/conf/config.xml | ||
---|---|---|
1 | 1 |
<?xml version="1.0"?> |
2 |
<!-- m0n0wall default system configuration -->
|
|
3 |
<m0n0wall>
|
|
2 |
<!-- pfSense default system configuration -->
|
|
3 |
<pfsense>
|
|
4 | 4 |
<version>1.4</version> |
5 | 5 |
<lastchange></lastchange> |
6 | 6 |
<system> |
... | ... | |
521 | 521 |
</wolentry> |
522 | 522 |
--> |
523 | 523 |
</wol> |
524 |
</m0n0wall> |
|
524 |
<installedpackages> |
|
525 |
</installedpackages> |
|
526 |
</pfsense> |
conf.default/config.xml | ||
---|---|---|
1 | 1 |
<?xml version="1.0"?> |
2 |
<!-- m0n0wall default system configuration -->
|
|
3 |
<m0n0wall>
|
|
2 |
<!-- pfSense default system configuration -->
|
|
3 |
<pfsense>
|
|
4 | 4 |
<version>1.4</version> |
5 | 5 |
<lastchange></lastchange> |
6 | 6 |
<system> |
... | ... | |
519 | 519 |
</wolentry> |
520 | 520 |
--> |
521 | 521 |
</wol> |
522 |
</m0n0wall> |
|
522 |
<installedpackages> |
|
523 |
</installedpackages> |
|
524 |
</pfsense> |
etc/inc/config.inc | ||
---|---|---|
85 | 85 |
******************************************************************************* |
86 | 86 |
* FATAL ERROR * |
87 | 87 |
* The device that contains the configuration file (config.xml) could not be * |
88 |
* found. m0n0wall cannot continue booting. *
|
|
88 |
* found. pfSense cannot continue booting. *
|
|
89 | 89 |
******************************************************************************* |
90 | 90 |
|
91 | 91 |
|
... | ... | |
126 | 126 |
|
127 | 127 |
/* read cache */ |
128 | 128 |
$config = unserialize(file_get_contents("{$g['tmp_path']}/config.cache")); |
129 |
|
|
129 | 130 |
} else { |
130 | 131 |
|
131 | 132 |
if (!file_exists("{$g['conf_path']}/config.xml")) { |
... | ... | |
139 | 140 |
echo "file is inserted. If it isn't, your configuration changes will be lost\n"; |
140 | 141 |
echo "on reboot.\n"; |
141 | 142 |
} else { |
142 |
echo "XML configuration file not found. m0n0wall cannot continue booting.\n";
|
|
143 |
echo "XML configuration file not found. pfSense cannot continue booting.\n";
|
|
143 | 144 |
mwexec("/sbin/halt"); |
144 | 145 |
exit; |
145 | 146 |
} |
... | ... | |
158 | 159 |
|
159 | 160 |
******************************************************************************* |
160 | 161 |
* WARNING! * |
161 |
* The current configuration has been created with a newer version of m0n0wall *
|
|
162 |
* The current configuration has been created with a newer version of pfSense *
|
|
162 | 163 |
* than this one! This can lead to serious misbehavior and even security * |
163 |
* holes! You are urged to either upgrade to a newer version of m0n0wall or *
|
|
164 |
* holes! You are urged to either upgrade to a newer version of pfSense or *
|
|
164 | 165 |
* revert to the default configuration immediately! * |
165 | 166 |
******************************************************************************* |
166 | 167 |
|
... | ... | |
203 | 204 |
|
204 | 205 |
/* convert configuration, if necessary */ |
205 | 206 |
function convert_config() { |
206 |
global $config, $g; |
|
207 |
global $config, $pkg_config, $g;
|
|
207 | 208 |
|
208 | 209 |
if ($config['version'] == $g['latest_config']) |
209 | 210 |
return; /* already at latest version */ |
etc/inc/globals.inc | ||
---|---|---|
1 | 1 |
<?php |
2 | 2 |
/* |
3 | 3 |
globals.inc |
4 |
part of m0n0wall (http://m0n0.ch/wall) |
|
5 |
|
|
4 |
part of pfSense (www.pfsense.com) |
|
5 |
Copyright (C) 2004 Scott Ullrich |
|
6 |
|
|
7 |
Originally Part of m0n0wall |
|
6 | 8 |
Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>. |
7 | 9 |
All rights reserved. |
8 |
|
|
10 |
|
|
9 | 11 |
Redistribution and use in source and binary forms, with or without |
10 | 12 |
modification, are permitted provided that the following conditions are met: |
11 |
|
|
13 |
|
|
12 | 14 |
1. Redistributions of source code must retain the above copyright notice, |
13 | 15 |
this list of conditions and the following disclaimer. |
14 |
|
|
16 |
|
|
15 | 17 |
2. Redistributions in binary form must reproduce the above copyright |
16 | 18 |
notice, this list of conditions and the following disclaimer in the |
17 | 19 |
documentation and/or other materials provided with the distribution. |
18 |
|
|
20 |
|
|
19 | 21 |
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, |
20 | 22 |
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY |
21 | 23 |
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
... | ... | |
43 | 45 |
"www_path" => "/usr/local/www", |
44 | 46 |
"captiveportal_path" => "/usr/local/captiveportal", |
45 | 47 |
"xml_rootobj" => "m0n0wall", |
48 |
"xml_pkg_rootobj" => "pfSense_pkgs", |
|
46 | 49 |
"pppoe_interface" => "ng0", |
47 | 50 |
"n_pptp_units" => 16, |
48 | 51 |
"pptp_subnet" => 28, |
49 |
"debug" => false,
|
|
52 |
"debug" => true,
|
|
50 | 53 |
"latest_config" => "1.4", |
51 | 54 |
"nopccard_platforms" => array("wrap", "net48xx") |
52 | 55 |
); |
usr/local/www/fbegin.inc | ||
---|---|---|
50 | 50 |
routes</a><br> |
51 | 51 |
<a href="/system_firmware.php" class="navlnk">Firmware</a><br> |
52 | 52 |
<a href="/system_advanced.php" class="navlnk">Advanced</a><br> |
53 |
<a href="/pkg_mgr.php" class="navlnk">Package Manager</a><br> |
|
53 | 54 |
<strong>Interfaces</strong> |
54 | 55 |
<?php if (!isset($config['system']['webgui']['noassigninterfaces'])): ?> |
55 | 56 |
<a href="/interfaces_assign.php" class="navlnks">(assign)</a> |
usr/local/www/pkg_mgr.php | ||
---|---|---|
1 |
#!/usr/local/bin/php |
|
2 |
<?php |
|
3 |
/* |
|
4 |
pkg_mgr.php |
|
5 |
Copyright (C) 2004 Scott Ullrich |
|
6 |
All rights reserved. |
|
7 |
|
|
8 |
originally part of m0n0wall (http://m0n0.ch/wall) |
|
9 |
Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>. |
|
10 |
All rights reserved. |
|
11 |
|
|
12 |
Redistribution and use in source and binary forms, with or without |
|
13 |
modification, are permitted provided that the following conditions are met: |
|
14 |
|
|
15 |
1. Redistributions of source code must retain the above copyright notice, |
|
16 |
this list of conditions and the following disclaimer. |
|
17 |
|
|
18 |
2. Redistributions in binary form must reproduce the above copyright |
|
19 |
notice, this list of conditions and the following disclaimer in the |
|
20 |
documentation and/or other materials provided with the distribution. |
|
21 |
|
|
22 |
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, |
|
23 |
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY |
|
24 |
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
|
25 |
AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, |
|
26 |
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
27 |
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
28 |
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
29 |
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
30 |
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
31 |
POSSIBILITY OF SUCH DAMAGE. |
|
32 |
*/ |
|
33 |
|
|
34 |
require("guiconfig.inc"); |
|
35 |
require("xmlparse_pkg.inc"); |
|
36 |
|
|
37 |
$a_out = &$pkg_config['packages']; |
|
38 |
|
|
39 |
if ($_POST) { |
|
40 |
|
|
41 |
$pconfig = $_POST; |
|
42 |
|
|
43 |
$retval = 0; |
|
44 |
|
|
45 |
if (!file_exists($d_sysrebootreqd_path)) { |
|
46 |
config_lock(); |
|
47 |
$retval |= filter_configure(); |
|
48 |
config_unlock(); |
|
49 |
} |
|
50 |
$savemsg = get_std_save_message($retval); |
|
51 |
|
|
52 |
if ($retval == 0) { |
|
53 |
if (file_exists($d_natconfdirty_path)) |
|
54 |
unlink($d_natconfdirty_path); |
|
55 |
if (file_exists($d_filterconfdirty_path)) |
|
56 |
unlink($d_filterconfdirty_path); |
|
57 |
} |
|
58 |
} |
|
59 |
|
|
60 |
?> |
|
61 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
|
62 |
<html> |
|
63 |
<head> |
|
64 |
<title><?=gentitle("System: Package Manager");?></title> |
|
65 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
66 |
<link href="gui.css" rel="stylesheet" type="text/css"> |
|
67 |
</head> |
|
68 |
|
|
69 |
<body link="#0000CC" vlink="#0000CC" alink="#0000CC"> |
|
70 |
<?php include("fbegin.inc"); ?> |
|
71 |
<p class="pgtitle">System: Package Manager</p> |
|
72 |
<form action="firewall_nat_out_load_balancing.php" method="post"> |
|
73 |
<?php if ($savemsg) print_info_box($savemsg); ?> |
|
74 |
<?php if (file_exists($d_natconfdirty_path)): ?><p> |
|
75 |
<?php print_info_box_np("The Package Manager configuration has been changed.<br>You must apply the changes in order for them to take effect.");?><br> |
|
76 |
<input name="apply" type="submit" class="formbtn" id="apply" value="Apply changes"></p> |
|
77 |
<?php endif; ?> |
|
78 |
<?php |
|
79 |
$configa = $config; |
|
80 |
if(!file_exists("/tmp/pkg_config.xml")) { |
|
81 |
mwexec("cd {$g['tmp_path']} && /usr/bin/fetch \"http://www.pfsense.com/packages/pkg_config.xml\" >/dev/null 2>&1 "); |
|
82 |
if(!file_exists("{$g['tmp_path']}/pkg_config.xml")) { |
|
83 |
print_info_box_np("Could not download pkg_config.xml from pfSense.com. Check your DNS settings."); |
|
84 |
die; |
|
85 |
} |
|
86 |
} |
|
87 |
|
|
88 |
$pkg_config = parse_xml_config("{$g['tmp_path']}/pkg_config.xml", "pfsensepkgs"); |
|
89 |
|
|
90 |
if(!$pkg_config['packages']) { |
|
91 |
print_info_box_np("Could not find any packages in pkg_config.xml"); |
|
92 |
} |
|
93 |
?> |
|
94 |
<table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr><td> |
|
95 |
<ul id="tabnav"> |
|
96 |
<li class="tabact">Available Packages</a></li> |
|
97 |
<li class="tabinact"><a href="pkg_mgr_installed.php">Installed Packages</a></li> |
|
98 |
</ul> |
|
99 |
</td></tr> |
|
100 |
<tr> |
|
101 |
<td class="tabcont"> |
|
102 |
<table width="100%" border="0" cellpadding="6" cellspacing="0"> |
|
103 |
<tr> |
|
104 |
<td width="25%" class="listhdrr">Package Name</td> |
|
105 |
<td width="25%" class="listhdrr">Category</td> |
|
106 |
<td width="50%" class="listhdr">Description</td> |
|
107 |
</tr> |
|
108 |
|
|
109 |
<?php |
|
110 |
$i = 0; |
|
111 |
foreach ($pkg_config['packages']['package'] as $pkg) { |
|
112 |
if(is_array($configa['installedpackages']['package'])) { |
|
113 |
foreach ($configa['installedpackages']['package'] as $installed) { |
|
114 |
if($installed['name'] == $pkg['name']) |
|
115 |
$pkg['name'] = ""; |
|
116 |
} |
|
117 |
} |
|
118 |
if($pkg['name'] <> "") { |
|
119 |
?> |
|
120 |
<tr valign="top"> |
|
121 |
<td class="listlr"> |
|
122 |
<?= $pkg['name'] ?> |
|
123 |
</td> |
|
124 |
<td class="listlr"> |
|
125 |
<?= $pkg['category'] ?> |
|
126 |
</td> |
|
127 |
<td class="listbg"> |
|
128 |
<font color="#FFFFFFF"> |
|
129 |
<?= $pkg['descr'] ?> |
|
130 |
</td> |
|
131 |
<td valign="middle" class="list" nowrap> |
|
132 |
<a href="pkg_mgr_install.php?id=<?=$i;?>"><img src="plus.gif" width="17" height="17" border="0"></a> |
|
133 |
|
|
134 |
</td> |
|
135 |
</tr> |
|
136 |
|
|
137 |
<?php |
|
138 |
$i++; |
|
139 |
} |
|
140 |
} |
|
141 |
?> |
|
142 |
</table> |
|
143 |
</td> |
|
144 |
</tr> |
|
145 |
</table> |
|
146 |
</form> |
|
147 |
<?php include("fend.inc"); ?> |
|
148 |
</body> |
|
149 |
</html> |
|
150 |
|
|
151 |
|
|
152 |
|
|
153 |
|
|
154 |
|
|
155 |
|
|
156 |
|
|
157 |
|
|
158 |
|
|
159 |
|
usr/local/www/pkg_mgr_install.php | ||
---|---|---|
1 |
#!/usr/local/bin/php |
|
2 |
<?php |
|
3 |
/* |
|
4 |
pkg_mgr_install.php |
|
5 |
Copyright (C) 2004 Scott Ullrich |
|
6 |
All rights reserved. |
|
7 |
|
|
8 |
Redistribution and use in source and binary forms, with or without |
|
9 |
modification, are permitted provided that the following conditions are met: |
|
10 |
|
|
11 |
1. Redistributions of source code must retain the above copyright notice, |
|
12 |
this list of conditions and the following disclaimer. |
|
13 |
|
|
14 |
2. Redistributions in binary form must reproduce the above copyright |
|
15 |
notice, this list of conditions and the following disclaimer in the |
|
16 |
documentation and/or other materials provided with the distribution. |
|
17 |
|
|
18 |
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, |
|
19 |
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY |
|
20 |
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
|
21 |
AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, |
|
22 |
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
23 |
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
24 |
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
25 |
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
26 |
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
27 |
POSSIBILITY OF SUCH DAMAGE. |
|
28 |
*/ |
|
29 |
|
|
30 |
require("guiconfig.inc"); |
|
31 |
require("xmlparse_pkg.inc"); |
|
32 |
|
|
33 |
function update_status($status) { |
|
34 |
echo "\n<script language=\"JavaScript\">document.forms[0].status.value=\"" . $status . "\";</script>"; |
|
35 |
} |
|
36 |
|
|
37 |
function execute_command_return_output($command) { |
|
38 |
$fd = popen($command . " 2>&1 ", "r"); |
|
39 |
echo "\n<script language=\"JavaScript\">this.document.forms[0].output.value = \"\";</script>"; |
|
40 |
$counter = 0; |
|
41 |
$counter2 = 0; |
|
42 |
while(!feof($fd)) { |
|
43 |
$tmp = fread($fd,49); |
|
44 |
$tmp1 = ereg_replace("\n","\\n", $tmp); |
|
45 |
$text = ereg_replace("\"","'", $tmp1); |
|
46 |
if($lasttext == "..") { |
|
47 |
$text = ""; |
|
48 |
$lasttext = ""; |
|
49 |
$counter=$counter-2; |
|
50 |
} else { |
|
51 |
$lasttext .= $text; |
|
52 |
} |
|
53 |
if($counter > 51) { |
|
54 |
$counter = 0; |
|
55 |
$extrabreak = "\\n"; |
|
56 |
} else { |
|
57 |
$extrabreak = ""; |
|
58 |
$counter++; |
|
59 |
} |
|
60 |
if($counter2 > 600) { |
|
61 |
echo "\n<script language=\"JavaScript\">this.document.forms[0].output.value = \"\";</script>"; |
|
62 |
$counter2 = 0; |
|
63 |
} else |
|
64 |
$counter2++; |
|
65 |
echo "\n<script language=\"JavaScript\">this.document.forms[0].output.value = this.document.forms[0].output.value + \"" . $text . $extrabreak . "\"; f('output'); </script>"; |
|
66 |
} |
|
67 |
fclose($fd); |
|
68 |
} |
|
69 |
|
|
70 |
$a_out = &$pkg_config['packages']; |
|
71 |
|
|
72 |
?> |
|
73 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
|
74 |
<html> |
|
75 |
<head> |
|
76 |
<title><?=gentitle("System: Package Manager: Install Package");?></title> |
|
77 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
78 |
<link href="gui.css" rel="stylesheet" type="text/css"> |
|
79 |
</head> |
|
80 |
|
|
81 |
<body link="#0000CC" vlink="#0000CC" alink="#0000CC"> |
|
82 |
<?php include("fbegin.inc"); ?> |
|
83 |
<p class="pgtitle">System: Package Manager: Install Package</p> |
|
84 |
<form action="firewall_nat_out_load_balancing.php" method="post"> |
|
85 |
<?php if ($savemsg) print_info_box($savemsg); ?> |
|
86 |
<?php if (file_exists($d_natconfdirty_path)): ?><p> |
|
87 |
<?php print_info_box_np("The Package Manager configuration has been changed.<br>You must apply the changes in order for them to take effect.");?><br> |
|
88 |
<input name="apply" type="submit" class="formbtn" id="apply" value="Apply changes"></p> |
|
89 |
<?php endif; ?> |
|
90 |
<?php |
|
91 |
if(!file_exists("/tmp/pkg_config.xml")) { |
|
92 |
mwexec("cd {$g['tmp_path']} && /usr/bin/fetch \"http://www.pfsense.com/packages/pkg_config.xml\" >/dev/null 2>&1 "); |
|
93 |
if(!file_exists("{$g['tmp_path']}/pkg_config.xml")) { |
|
94 |
print_info_box_np("Could not download pkg_config.xml from pfSense.com. Check your DNS settings."); |
|
95 |
die; |
|
96 |
} |
|
97 |
} |
|
98 |
|
|
99 |
$pkg_config = parse_xml_config("{$g['tmp_path']}/pkg_config.xml", "pfsensepkgs"); |
|
100 |
|
|
101 |
$id = $_GET['id']; |
|
102 |
|
|
103 |
if(!$pkg_config['packages']) { |
|
104 |
print_info_box_np("Could not find any packages in pkg_config.xml"); |
|
105 |
} |
|
106 |
?> |
|
107 |
<table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr><td> |
|
108 |
<ul id="tabnav"> |
|
109 |
<li class="tabact">Available Packages</a></li> |
|
110 |
<li class="tabinact"><a href="pkg_mgr_installed.php">Installed Packages</a></li> |
|
111 |
</ul> |
|
112 |
</td></tr> |
|
113 |
<tr> |
|
114 |
<td class="tabcont"> |
|
115 |
<table width="100%" border="0" cellpadding="6" cellspacing="0"> |
|
116 |
<tr> |
|
117 |
<td> |
|
118 |
<textarea cols="55" rows="1" name="status" id="status" wrap="hard">One moment please... This will take a while!</textarea> |
|
119 |
<textarea cols="55" rows="25" name="output" id="output" wrap="hard"></textarea> |
|
120 |
</td> |
|
121 |
</tr> |
|
122 |
</table> |
|
123 |
</td> |
|
124 |
</tr> |
|
125 |
</table> |
|
126 |
</form> |
|
127 |
<?php include("fend.inc"); ?> |
|
128 |
</body> |
|
129 |
</html> |
|
130 |
|
|
131 |
<? |
|
132 |
|
|
133 |
/* install the package */ |
|
134 |
|
|
135 |
$a_out = &$pkg_config['packages']['package']; |
|
136 |
$pkgent = array(); |
|
137 |
$pkgent['name'] = $pkg_config['packages']['package'][$id]['name']; |
|
138 |
$pkgent['descr'] = $pkg_config['packages']['package'][$id]['descr']; |
|
139 |
$pkgent['category'] = $pkg_config['packages']['package'][$id]['category']; |
|
140 |
$pkgent['depends_on_package'] = $a_out[$id]['depends_on_package']; |
|
141 |
$pkgent['depends_on_package_base'] = $a_out[$id]['depends_on_package_base']; |
|
142 |
$pkgent['pfsense_package'] = $a_out[$id]['pfsense_package']; |
|
143 |
$pkgent['pfsense_package_base'] = $a_out[$id]['pfsense_package_base']; |
|
144 |
$a_out = &$config['packages']['package']; |
|
145 |
|
|
146 |
update_status("Downloading and installing " . $pkgent['name'] . " ... "); |
|
147 |
|
|
148 |
execute_command_return_output("cd /tmp/ && /usr/sbin/pkg_add -r " . $pkgent['pfsense_package_base'] . "/" . $pkgent['pfsense_package']); |
|
149 |
|
|
150 |
if ($pkgent['pfsense_package_base']) |
|
151 |
execute_command_return_output("cd /tmp/ && /usr/sbin/pkg_add -r " . $pkgent['depends_on_package_base'] . "/" . $pkgent['depends_on_package']); |
|
152 |
|
|
153 |
// XXX: ensure package is REALLY installed before doing below... |
|
154 |
|
|
155 |
$config = parse_xml_config("{$g['conf_path']}/config.xml", $g['xml_rootobj']); |
|
156 |
|
|
157 |
$config['installedpackages']['package'][] = $pkgent; |
|
158 |
|
|
159 |
if (isset($id) && $a_out[$id]) |
|
160 |
$a_out[$id] = $pkgent; |
|
161 |
else |
|
162 |
$a_out[] = $pkgent; |
|
163 |
|
|
164 |
write_config(); |
|
165 |
|
|
166 |
update_status("Package installation completed."); |
|
167 |
?> |
|
168 |
|
|
169 |
|
|
170 |
|
|
171 |
|
|
172 |
|
|
173 |
|
|
174 |
|
|
175 |
|
|
176 |
|
usr/local/www/pkg_mgr_installed.php | ||
---|---|---|
1 |
#!/usr/local/bin/php |
|
2 |
<?php |
|
3 |
/* |
|
4 |
pkg_mgr.php |
|
5 |
Copyright (C) 2004 Scott Ullrich |
|
6 |
All rights reserved. |
|
7 |
|
|
8 |
originally part of m0n0wall (http://m0n0.ch/wall) |
|
9 |
Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>. |
|
10 |
All rights reserved. |
|
11 |
|
|
12 |
Redistribution and use in source and binary forms, with or without |
|
13 |
modification, are permitted provided that the following conditions are met: |
|
14 |
|
|
15 |
1. Redistributions of source code must retain the above copyright notice, |
|
16 |
this list of conditions and the following disclaimer. |
|
17 |
|
|
18 |
2. Redistributions in binary form must reproduce the above copyright |
|
19 |
notice, this list of conditions and the following disclaimer in the |
|
20 |
documentation and/or other materials provided with the distribution. |
|
21 |
|
|
22 |
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, |
|
23 |
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY |
|
24 |
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
|
25 |
AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, |
|
26 |
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
27 |
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
28 |
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
29 |
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
30 |
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
31 |
POSSIBILITY OF SUCH DAMAGE. |
|
32 |
*/ |
|
33 |
|
|
34 |
require("guiconfig.inc"); |
|
35 |
require("xmlparse_pkg.inc"); |
|
36 |
|
|
37 |
?> |
|
38 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
|
39 |
<html> |
|
40 |
<head> |
|
41 |
<title><?=gentitle("System: Package Manager");?></title> |
|
42 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
43 |
<link href="gui.css" rel="stylesheet" type="text/css"> |
|
44 |
</head> |
|
45 |
|
|
46 |
<body link="#0000CC" vlink="#0000CC" alink="#0000CC"> |
|
47 |
<?php include("fbegin.inc"); ?> |
|
48 |
<p class="pgtitle">System: Package Manager</p> |
|
49 |
<form action="firewall_nat_out_load_balancing.php" method="post"> |
|
50 |
<?php if ($savemsg) print_info_box($savemsg); ?> |
|
51 |
<?php if (file_exists($d_natconfdirty_path)): ?><p> |
|
52 |
<?php print_info_box_np("The Package Manager configuration has been changed.<br>You must apply the changes in order for them to take effect.");?><br> |
|
53 |
<input name="apply" type="submit" class="formbtn" id="apply" value="Apply changes"></p> |
|
54 |
<?php endif; ?> |
|
55 |
<table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr><td> |
|
56 |
<ul id="tabnav"> |
|
57 |
<li class="tabinact"><a href="pkg_mgr.php">Available Packages</a></li> |
|
58 |
<li class="tabact">Installed Packages</li> |
|
59 |
</ul> |
|
60 |
</td></tr> |
|
61 |
<tr> |
|
62 |
<td class="tabcont"> |
|
63 |
<table width="100%" border="0" cellpadding="6" cellspacing="0"> |
|
64 |
<tr> |
|
65 |
<td width="25%" class="listhdrr">Package Name</td> |
|
66 |
<td width="25%" class="listhdrr">Category</td> |
|
67 |
<td width="50%" class="listhdr">Description</td> |
|
68 |
</tr> |
|
69 |
|
|
70 |
<?php |
|
71 |
$i = 0; |
|
72 |
if($config['installedpackages']['package']) { |
|
73 |
foreach ($config['installedpackages']['package'] as $pkg) { |
|
74 |
if($pkg['name'] <> "") { |
|
75 |
?> |
|
76 |
<tr valign="top"> |
|
77 |
<td class="listlr"> |
|
78 |
<?= $pkg['name'] ?> |
|
79 |
</td> |
|
80 |
<td class="listlr"> |
|
81 |
<?= $pkg['category'] ?> |
|
82 |
</td> |
|
83 |
<td class="listbg"> |
|
84 |
<font color="#FFFFFFF"> |
|
85 |
<?= $pkg['descr'] ?> |
|
86 |
</td> |
|
87 |
<td valign="middle" class="list" nowrap> |
|
88 |
<a href="pkg_mgr_delete.php?id=<?=$i;?>"><img src="x.gif" width="17" height="17" border="0"></a> |
|
89 |
|
|
90 |
</td> |
|
91 |
</tr> |
|
92 |
|
|
93 |
<?php |
|
94 |
$i++; |
|
95 |
} |
|
96 |
} |
|
97 |
} |
|
98 |
?> |
|
99 |
</table> |
|
100 |
</td> |
|
101 |
</tr> |
|
102 |
</table> |
|
103 |
</form> |
|
104 |
<?php include("fend.inc"); ?> |
|
105 |
</body> |
|
106 |
</html> |
|
107 |
|
|
108 |
|
|
109 |
|
|
110 |
|
|
111 |
|
|
112 |
|
|
113 |
|
|
114 |
|
|
115 |
|
|
116 |
|
Also available in: Unified diff
Say welcome to the pfSense package manager!