Project

General

Profile

Download (5.99 KB) Statistics
| Branch: | Tag: | Revision:
1 5b237745 Scott Ullrich
<?php
2 307cd525 Bill Marquette
/* $Id$ */
3 5b237745 Scott Ullrich
/*
4
    globals.inc
5 ee11cc6e Scott Ullrich
    part of pfSense (www.pfsense.com)
6 0e16b9ca Scott Ullrich
    Copyright (C) 2004-2006 Scott Ullrich
7 ee11cc6e Scott Ullrich
8
    Originally Part of m0n0wall
9 5b237745 Scott Ullrich
    Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
10
    All rights reserved.
11 ee11cc6e Scott Ullrich
12 5b237745 Scott Ullrich
    Redistribution and use in source and binary forms, with or without
13
    modification, are permitted provided that the following conditions are met:
14 ee11cc6e Scott Ullrich
15 5b237745 Scott Ullrich
    1. Redistributions of source code must retain the above copyright notice,
16
       this list of conditions and the following disclaimer.
17 ee11cc6e Scott Ullrich
18 5b237745 Scott Ullrich
    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 ee11cc6e Scott Ullrich
22 5b237745 Scott Ullrich
    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 523855b0 Scott Ullrich
33
	pfSense_MODULE:	utils
34
35 5b237745 Scott Ullrich
*/
36
37 3f9a98c1 Scott Ullrich
function remove_numbers($string) {
38
	$nums = array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0", " ");
39
	$string = str_replace($nums, '', $string);
40
	return $string;
41
}
42
43
function get_nics_with_capabilities($CAPABILITIES) {
44 14578e35 Scott Ullrich
	$ifs = `ifconfig -l`;
45
	$if_list = split(" ", $ifs);
46 3f9a98c1 Scott Ullrich
	$vlan_native_supp = array();
47
	foreach($if_list as $if => $iface) {
48 eca4bfbc jim-p
		$iface = trim($iface);
49 575a279a Ermal Lu?i
		$capable = pfSense_get_interface_addresses($iface);
50
		if(isset($capable['caps'][$CAPABILITIES])) {
51 eca4bfbc jim-p
			$interfacenonum = remove_numbers($iface);
52 3f9a98c1 Scott Ullrich
			if(!in_array($interfacenonum, $vlan_native_supp))
53
				$vlan_native_supp[] = $interfacenonum;
54
		}
55
	}
56
	return $vlan_native_supp;
57
}
58
59 5b237745 Scott Ullrich
$g = array(
60 4a8bc5a2 Scott Ullrich
	"base_packages" => "siproxd", 
61 4b96b367 mgrooms
	"factory_shipped_username" => "admin",
62 46974905 Chris Buechler
	"factory_shipped_password" => "pfsense",
63 1ef7b568 Scott Ullrich
	"upload_path" => "/root",
64 e9e7d501 Matthew Grooms
	"dhcpd_chroot_path" => "/var/dhcpd",
65
	"varrun_path" => "/var/run",
66
	"varetc_path" => "/var/etc",
67
	"vardb_path" => "/var/db",
68
	"varlog_path" => "/var/log",
69
	"etc_path" => "/etc",
70
	"tmp_path" => "/tmp",
71
	"conf_path" => "/conf",
72
	"ftmp_path" => "/ftmp",
73
	"conf_default_path" => "/conf.default",
74
	"cf_path" => "/cf",
75
	"cf_conf_path" => "/cf/conf",
76
	"www_path" => "/usr/local/www",
77
	"xml_rootobj" => "pfsense",
78
	"admin_group" => "admins",
79 36d0358b Scott Ullrich
	"product_name" => "pfSense",
80 c57e9f90 Chris Buechler
	"product_copyright" => "BSD Perimeter LLC",
81 3d7639eb Scott Ullrich
	"product_copyright_url" => "http://www.bsdperimeter.com",
82 ceccec87 Chris Buechler
	"product_copyright_years" => "2004 - 2010",
83 73113ce9 Ermal Luci
	"product_website" => "www.pfsense.org",
84 3d7639eb Scott Ullrich
	"product_website_footer" => "http://www.pfsense.org/?gui20",
85 c57e9f90 Chris Buechler
	"product_email" => "coreteam@pfsense.org",
86 3d7639eb Scott Ullrich
	"hideplatform" => false,
87 8b289232 Chris Buechler
	"disablethemeselection" => false,
88 3b29612f Chris Buechler
	"disablehelpmenu" => false,
89 e9e7d501 Matthew Grooms
	"debug" => false,
90 2cf6ddcb Nigel Graham
	"latest_config" => "6.0",
91 e9e7d501 Matthew Grooms
	"nopkg_platforms" => array("cdrom"),
92 f333e853 Chris Buechler
	"minimum_ram_warning" => "105",
93 9f274393 Chris Buechler
	"minimum_ram_warning_text" => "128 MB",
94 73d0efb9 Chris Buechler
	"minimum_nic_count" => "1",
95
	"minimum_nic_count_text" => "*AT LEAST* 1",	
96 954d8f12 Scott Ullrich
	"wan_interface_name" => "wan", 
97 e9e7d501 Matthew Grooms
	"nopccard_platforms" => array("wrap", "net48xx"),
98
	"xmlrpcbaseurl" => "www.pfsense.com",
99
	"captiveportal_path" => "/usr/local/captiveportal",
100
	"captiveportal_element_path" => "/var/db/cpelements",
101
	"captiveportal_element_sizelimit" => 262144,
102
	"xmlrpcpath" => "/pfSense/xmlrpc.php",
103
	"embeddedbootupslice" => "/dev/ad0a",
104 e3a13b00 Scott Ullrich
	"services_dhcp_server_enable" => true,
105 f668c765 jim-p
	"wireless_regex" => "/^(ndis|wi|ath|an|ral|ural|iwi|wlan|rum|zyd|mwl|bwi|ipw|iwn|malo|uath|upgt|urtw|wpi)/",
106 462c4a27 jim-p
	"help_base_url" => "/help.php"
107 5b237745 Scott Ullrich
);
108
109 3f9a98c1 Scott Ullrich
// Loop through and set vlan_long_frame VLAN_MTU
110 575a279a Ermal Lu?i
$vlan_native_supp = get_nics_with_capabilities("vlanmtu");
111 3f9a98c1 Scott Ullrich
if(count($vlan_native_supp) > 0)
112
	$g['vlan_long_frame'] = $vlan_native_supp;
113
else 
114
	$g['vlan_long_frame'] = array("vge", "bfe",  "bge",  "dc",  "em",  "fxp",  "gem",  "hme",  "ixgb",  "le",  "nge",  "re",  "rl",  "sis",  "sk",  "ste",  "ti",  "tl",  "tx",  "txp",  "vr", "xl", "lagg");
115
116 a03e3c1f Bill Marquette
/* IP TOS flags */
117 ec6adc21 Bill Marquette
$iptos = array("lowdelay", "throughput", "reliability");
118 a03e3c1f Bill Marquette
119
/* TCP flags */
120
$tcpflags = array("syn", "ack", "fin", "rst", "psh", "urg");
121
122 b24a7390 Scott Ullrich
if(file_exists("/etc/platform")) {
123 8395832c Scott Ullrich
	$arch = trim(`uname -m`);
124 03cc2016 Erik
	$g['platform'] = trim(file_get_contents("/etc/platform"));
125 aadf2c9f Scott Ullrich
	if($g['platform'] == "nanobsd") {
126 8395832c Scott Ullrich
		$g['update_url']="http://snapshots.pfsense.org/FreeBSD_RELENG_8_0/{$arch}/pfSense_HEAD/.updaters/";
127 aadf2c9f Scott Ullrich
		$g['update_manifest']="http://updates.pfSense.com/nanobsd/manifest";
128 b4a9785a jim-p
		$g['firmware_update_text']="pfSense-*.img.gz";
129 fdcd8ac7 jim-p
130 aadf2c9f Scott Ullrich
	} else {
131 40b0b541 Ermal Lu?i
		$g['update_url']="http://snapshots.pfsense.org/FreeBSD_RELENG_8_1/{$arch}/pfSense_HEAD/.updaters/";
132 aadf2c9f Scott Ullrich
		$g['update_manifest']="http://updates.pfSense.com/manifest";
133 b4a9785a jim-p
		$g['firmware_update_text']="pfSense-*.tgz";
134 aadf2c9f Scott Ullrich
	}
135 b24a7390 Scott Ullrich
}
136
137 3a35f55f Scott Ullrich
/* Default sysctls */
138
$sysctls = array("net.inet.ip.portrange.first" => "1024", 
139 575a279a Ermal Lu?i
		 "net.inet.tcp.blackhole" => "2", 
140
		 "net.inet.udp.blackhole" => "1", 
141
		 "net.inet.ip.random_id" => "1", 
142
		 "net.inet.tcp.drop_synfin" => "1", 
143
		 "net.inet.ip.redirect" => "1", 
144
		 "net.inet6.ip6.redirect" => "1", 
145
		 "net.inet.tcp.syncookies" => "1", 
146
		 "net.inet.tcp.recvspace" => "65228", 
147
		 "net.inet.tcp.sendspace" => "65228", 
148
		 "net.inet.ip.fastforwarding" => "1", 
149
		 "net.inet.tcp.delayed_ack" => "0", 
150
		 "net.inet.udp.maxdgram" => "57344", 
151
		 "net.link.bridge.pfil_onlyip" => "0", 
152
		 "net.link.bridge.pfil_member" => "1", 
153
		 "net.link.bridge.pfil_bridge" => "0", 
154
		 "net.link.tap.user_open" => "1", 
155
		 "kern.rndtest.verbose" => "0", 
156
		 "kern.randompid" => "347", 
157
		 "net.inet.ip.intr_queue_maxlen" => "1000", 
158
		 "hw.syscons.kbd_reboot" => "0", 
159
		 "net.inet.tcp.inflight.enable" => "1", 
160
		 "net.inet.tcp.log_debug" => "0", 
161
		 "net.inet.icmp.icmplim" => "750", 
162
		 "net.inet.tcp.tso" => "0", 
163
		 "hw.bce.tso_enable" => "0"
164
		  );
165 3a35f55f Scott Ullrich
166 094dfa16 Ermal Lu?i
?>