Project

General

Profile

Download (6.93 KB) Statistics
| Branch: | Tag: | Revision:
1 5b237745 Scott Ullrich
<?php
2 307cd525 Bill Marquette
/* $Id$ */
3 5b237745 Scott Ullrich
/*
4 9ba87997 Phil Davis
	globals.inc
5
	part of pfSense (https://www.pfsense.org)
6
	Copyright (C) 2004-2010 Scott Ullrich
7
8
	Originally Part of m0n0wall
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 523855b0 Scott Ullrich
33
	pfSense_MODULE:	utils
34
35 5b237745 Scott Ullrich
*/
36
37 8346b5c4 jim-p
global $g;
38 5b237745 Scott Ullrich
$g = array(
39 9ba87997 Phil Davis
	"base_packages" => "siproxd",
40 0ae6daf8 Ermal
	"event_address" => "unix:///var/run/check_reload_status",
41 4b96b367 mgrooms
	"factory_shipped_username" => "admin",
42 46974905 Chris Buechler
	"factory_shipped_password" => "pfsense",
43 1ef7b568 Scott Ullrich
	"upload_path" => "/root",
44 e9e7d501 Matthew Grooms
	"dhcpd_chroot_path" => "/var/dhcpd",
45 6671b7cd Warren Baker
	"unbound_chroot_path" => "/var/unbound",
46 563771b1 Renato Botelho
	"var_path" => "/var",
47 e9e7d501 Matthew Grooms
	"varrun_path" => "/var/run",
48
	"varetc_path" => "/var/etc",
49
	"vardb_path" => "/var/db",
50
	"varlog_path" => "/var/log",
51
	"etc_path" => "/etc",
52
	"tmp_path" => "/tmp",
53
	"conf_path" => "/conf",
54
	"ftmp_path" => "/ftmp",
55
	"conf_default_path" => "/conf.default",
56
	"cf_path" => "/cf",
57
	"cf_conf_path" => "/cf/conf",
58
	"www_path" => "/usr/local/www",
59
	"xml_rootobj" => "pfsense",
60
	"admin_group" => "admins",
61 36d0358b Scott Ullrich
	"product_name" => "pfSense",
62 90a27e64 Chris Buechler
	"product_copyright" => "Electric Sheep Fencing LLC",
63
	"product_copyright_url" => "http://www.electricsheepfencing.com",
64 2bb93345 Tuyan Ozipek
	"product_copyright_years" => "2004 - ".date("Y"),
65 73113ce9 Ermal Luci
	"product_website" => "www.pfsense.org",
66 ef459eb7 Chris Buechler
	"product_website_footer" => "https://www.pfsense.org/?gui22",
67 c57e9f90 Chris Buechler
	"product_email" => "coreteam@pfsense.org",
68 3d7639eb Scott Ullrich
	"hideplatform" => false,
69 3ff39566 Scott Ullrich
	"hidedownloadbackup" => false,
70 9beebb5e Renato Botelho
	"hidebackupbeforeupgrade" => false,
71 8b289232 Chris Buechler
	"disablethemeselection" => false,
72 3b29612f Chris Buechler
	"disablehelpmenu" => false,
73 28181237 Renato Botelho
	"disablehelpicon" => false,
74 36365f49 Scott Ullrich
	"disablecrashreporter" => false,
75 f3109fac Chris Buechler
	"crashreporterurl" => "https://crashreporter.pfsense.org/crash_reporter.php",
76 e9e7d501 Matthew Grooms
	"debug" => false,
77 877740ee Renato Botelho
	"latest_config" => "11.8",
78 e9e7d501 Matthew Grooms
	"nopkg_platforms" => array("cdrom"),
79 67b0ed57 Chris Buechler
	"minimum_ram_warning" => "101",
80 9f274393 Chris Buechler
	"minimum_ram_warning_text" => "128 MB",
81 9ba87997 Phil Davis
	"wan_interface_name" => "wan",
82 e9e7d501 Matthew Grooms
	"nopccard_platforms" => array("wrap", "net48xx"),
83 4db99d5b Chris Buechler
	"xmlrpcbaseurl" => "https://packages.pfsense.org",
84 e9e7d501 Matthew Grooms
	"captiveportal_path" => "/usr/local/captiveportal",
85
	"captiveportal_element_path" => "/var/db/cpelements",
86 c2d0699f Scott Ullrich
	"captiveportal_element_sizelimit" => 1048576,
87 4db99d5b Chris Buechler
	"xmlrpcpath" => "/xmlrpc.php",
88 e9e7d501 Matthew Grooms
	"embeddedbootupslice" => "/dev/ad0a",
89 e3a13b00 Scott Ullrich
	"services_dhcp_server_enable" => true,
90 8c62fa48 jim-p
	"wireless_regex" => "/^(ndis|wi|ath|an|ral|ural|iwi|wlan|rum|run|bwn|zyd|mwl|bwi|ipw|iwn|malo|uath|upgt|urtw|wpi)/",
91 0bd239d9 Renato Botelho
	"help_base_url" => "/help.php",
92
	"pkg_prefix" => "pfSense-pkg-"
93 5b237745 Scott Ullrich
);
94
95 a03e3c1f Bill Marquette
/* IP TOS flags */
96 ec6adc21 Bill Marquette
$iptos = array("lowdelay", "throughput", "reliability");
97 a03e3c1f Bill Marquette
98
/* TCP flags */
99 79cc9e6b bcyrill
$tcpflags = array("syn", "ack", "fin", "rst", "psh", "urg", "ece", "cwr");
100 a03e3c1f Bill Marquette
101 9ba87997 Phil Davis
if (file_exists("/etc/platform")) {
102 9a7f6731 Ermal
	$arch = php_uname("m");
103 f5b23288 Renato Botelho
	$current_version = trim(file_get_contents("{$g['etc_path']}/version"));
104 9633e518 jim-p
105 f5b23288 Renato Botelho
	if (strstr($current_version, "-RELEASE")) {
106
		/* This is only necessary for RELEASE */
107
		$arch = ($arch == "i386") ? "" : '/' . $arch;
108
		/* Full installs and NanoBSD use the same update directory and manifest in 2.x */
109
		$g['update_url']="https://updates.pfsense.org/_updaters{$arch}";
110
		$g['update_manifest']="https://updates.pfsense.org/manifest";
111
	} else {
112
		/* Full installs and NanoBSD use the same update directory and manifest in 2.x */
113
		$g['update_url']="https://snapshots.pfsense.org/FreeBSD_releng/10.1/{$arch}/pfSense_HEAD/.updaters/";
114
		$g['update_manifest']="https://updates.pfSense.org/manifest";
115
	}
116 9633e518 jim-p
117 03cc2016 Erik
	$g['platform'] = trim(file_get_contents("/etc/platform"));
118 9ba87997 Phil Davis
	if ($g['platform'] == "nanobsd") {
119 b4a9785a jim-p
		$g['firmware_update_text']="pfSense-*.img.gz";
120 9beebb5e Renato Botelho
		$g['hidedownloadbackup'] = true;
121
		$g['hidebackupbeforeupgrade'] = true;
122 fdcd8ac7 jim-p
123 aadf2c9f Scott Ullrich
	} else {
124 b4a9785a jim-p
		$g['firmware_update_text']="pfSense-*.tgz";
125 aadf2c9f Scott Ullrich
	}
126 b24a7390 Scott Ullrich
}
127
128 3a35f55f Scott Ullrich
/* Default sysctls */
129 9ba87997 Phil Davis
$sysctls = array("net.inet.ip.portrange.first" => "1024",
130
	"net.inet.tcp.blackhole" => "2",
131
	"net.inet.udp.blackhole" => "1",
132
	"net.inet.ip.random_id" => "1",
133
	"net.inet.tcp.drop_synfin" => "1",
134
	"net.inet.ip.redirect" => "1",
135
	"net.inet6.ip6.redirect" => "1",
136 20a3b436 Renato Botelho
	"net.inet6.ip6.use_tempaddr" => "0",
137
	"net.inet6.ip6.prefer_tempaddr" => "0",
138 9ba87997 Phil Davis
	"net.inet.tcp.syncookies" => "1",
139
	"net.inet.tcp.recvspace" => "65228",
140
	"net.inet.tcp.sendspace" => "65228",
141
	"net.inet.ip.fastforwarding" => "0",
142
	"net.inet.tcp.delayed_ack" => "0",
143
	"net.inet.udp.maxdgram" => "57344",
144
	"net.link.bridge.pfil_onlyip" => "0",
145
	"net.link.bridge.pfil_member" => "1",
146
	"net.link.bridge.pfil_bridge" => "0",
147
	"net.link.tap.user_open" => "1",
148
	"kern.randompid" => "347",
149
	"net.inet.ip.intr_queue_maxlen" => "1000",
150
	"hw.syscons.kbd_reboot" => "0",
151
	"net.inet.tcp.log_debug" => "0",
152
	"net.inet.tcp.tso" => "1",
153 feae85bc Scott Ullrich
	"net.inet.icmp.icmplim" => "0",
154 abe7607f Scott Ullrich
	"vfs.read_max" => "32",
155 2b7ca9b2 Ermal
	"kern.ipc.maxsockbuf" => "4262144",
156 c06240db Ermal
	"net.inet.ip.process_options" => 0,
157 b2b002cd Ermal
	"kern.random.sys.harvest.interrupt" => 0,
158
	"kern.random.sys.harvest.point_to_point" => 0,
159 f06ce79d Ermal
	"kern.random.sys.harvest.ethernet" => 0,
160 7d8b75ab Ermal
	"net.route.netisr_maxqlen" => 1024,
161 a3a1b24e Ermal
	"net.inet.udp.checksum" => 1,
162 415b71f1 Ermal
	"net.bpf.zerocopy_enable" => 1,
163 2f5488df Ermal
	"net.inet.icmp.reply_from_interface" => 1,
164 36314cba Ermal LUÇI
	"vfs.forcesync" => "1",
165 ec5753e7 Ermal LUÇI
	"net.inet6.ip6.rfc6204w3" => 1,
166 c46f9695 Ermal
	"net.enc.out.ipsec_bpf_mask" => "0x0001",
167
	"net.enc.out.ipsec_filter_mask" => "0x0001",
168
	"net.enc.in.ipsec_bpf_mask" => "0x0002",
169 24ad8e26 jim-p
	"net.enc.in.ipsec_filter_mask" => "0x0002",
170 62dc93d1 Chris Buechler
	"net.key.preferred_oldsa" => "0",
171 1dbe220c jim-p
	"net.inet.carp.senderr_demotion_factor" => 0, /* Do not demote CARP for interface send errors */
172 53bc8504 Chris Buechler
	"net.pfsync.carp_demotion_factor" => 0 /* Do not demote CARP for pfsync errors */
173 feae85bc Scott Ullrich
);
174 3a35f55f Scott Ullrich
175 8346b5c4 jim-p
/* Include override values for the above if needed. If the file doesn't exist, don't try to load it. */
176 9ba87997 Phil Davis
if (file_exists("/etc/inc/globals_override.inc")) {
177 8346b5c4 jim-p
	@include("globals_override.inc");
178 9ba87997 Phil Davis
}
179 8346b5c4 jim-p
180 16d6c1df Renato Botelho
function platform_booting($on_console = false) {
181 285ef132 Ermal LUÇI
	global $g;
182
183 9ba87997 Phil Davis
	if ($g['booting'] || file_exists("{$g['varrun_path']}/booting")) {
184
		if ($on_console == false || php_sapi_name() != 'fpm-fcgi') {
185 16d6c1df Renato Botelho
			return true;
186 9ba87997 Phil Davis
		}
187
	}
188 285ef132 Ermal LUÇI
189
	return false;
190
}
191 b8d09280 Ermal LUÇI
192 9ba87997 Phil Davis
if (file_exists("{$g['cf_conf_path']}/enableserial_force")) {
193 719db60e Ermal LUÇI
	$g['enableserial_force'] = true;
194 9ba87997 Phil Davis
}
195 719db60e Ermal LUÇI
196 1883455a Ermal
$config_parsed = false;
197 9734b054 Scott Ullrich
198 2b7ca9b2 Ermal
?>