refactor: Centralize includes and initialization (#4991)

This commit is contained in:
Tony Murray 2016-11-21 14:12:59 -06:00 committed by Neil Lathwood
parent bbf05feb90
commit 9a33464c52
61 changed files with 326 additions and 578 deletions

View File

@ -13,12 +13,8 @@
use LibreNMS\Exceptions\HostUnreachableException;
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$options = getopt('g:p:f::');

View File

@ -12,19 +12,11 @@
*
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
if (file_exists('html/includes/authentication/'.$config['auth_mechanism'].'.inc.php')) {
include 'html/includes/authentication/'.$config['auth_mechanism'].'.inc.php';
} else {
echo "ERROR: no valid auth_mechanism defined.\n";
exit();
$init_modules = array();
if (php_sapi_name() != 'cli') {
$init_modules[] = 'auth';
}
require __DIR__ . '/includes/init.php';
if (auth_usermanagement()) {
if (isset($argv[1]) && isset($argv[2]) && isset($argv[3])) {

View File

@ -25,10 +25,8 @@
* @subpackage Alerts
*/
chdir(__DIR__); // cwd to the directory containing this script
require_once 'includes/defaults.inc.php';
require_once 'config.php';
$init_modules = array('alerts');
require __DIR__ . '/includes/init.php';
$options = getopt('d::');
@ -47,9 +45,6 @@ if ($lock === true) {
file_put_contents($config['install_dir'].'/.alerts.lock', getmypid());
}
require_once $config['install_dir'].'/includes/definitions.inc.php';
require_once $config['install_dir'].'/includes/functions.php';
require_once $config['install_dir'].'/includes/alerts.inc.php';
if (isset($options['d'])) {
echo "DEBUG!\n";

View File

@ -11,12 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$options = getopt('r');

View File

@ -13,12 +13,8 @@
* the source code distribution for details.
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$options = getopt('d::');
if (isset($options['d'])) {

View File

@ -11,6 +11,7 @@ chdir(__DIR__); // cwd to the directory containing this script
// check if we are running through the CLI, otherwise abort
if (php_sapi_name() == 'cli' && empty($_SERVER['REMOTE_ADDR'])) {
$config['install_dir'] = __DIR__;
include_once 'includes/defaults.inc.php';
include_once 'config.php';
echo json_encode($config);

View File

@ -11,10 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require realpath(__DIR__ . '/..') . '/includes/init.php';
$handle = fopen('ips.txt', 'w');
@ -39,4 +37,4 @@ foreach (dbFetchRows('SELECT * FROM `ipv4_networks`') as $data) {
fclose($handle);
shell_exec('fping -t 100 -f ips.txt > ips-scanned.txt');
shell_exec($config['fping'] . ' -t 100 -f ips.txt > ips-scanned.txt');

View File

@ -6,13 +6,8 @@
* (c) 2013 LibreNMS Contributors
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require_once 'includes/definitions.inc.php';
require 'includes/functions.php';
require_once 'includes/alerts.inc.php';
$init_modules = array('alerts');
require __DIR__ . '/includes/init.php';
$options = getopt('f:d');

View File

@ -11,12 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
// Remove a host and all related data from the system
if ($argv[1]) {

View File

@ -11,13 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
require 'includes/discovery/functions.inc.php';
$init_modules = array('discovery');
require __DIR__ . '/includes/init.php';
$start = microtime(true);
$runtime_stats = array();

View File

@ -13,14 +13,8 @@
* the source code distribution for details.
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
require 'includes/polling/functions.inc.php';
require 'includes/alerts.inc.php';
$init_modules = array('polling', 'alerts');
require __DIR__ . '/includes/init.php';
$options = getopt('l:u:r::');

View File

@ -12,12 +12,8 @@
* the source code distribution for details.
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
set_debug($_REQUEST['debug']);

View File

@ -14,14 +14,8 @@
// FUA
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
require_once 'includes/vars.inc.php';
require_once '../includes/alerts.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
set_debug($_REQUEST['debug']);

View File

@ -10,16 +10,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/functions.inc.php';
require_once '../includes/dbFacile.php';
require_once '../includes/common.php';
require_once '../includes/rewrites.php';
require_once 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
set_debug($_REQUEST['debug']);

View File

@ -12,19 +12,17 @@
* the source code distribution for details.
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
require_once '../includes/alerts.inc.php';
$init_modules = array('web', 'auth', 'alerts');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (!$_SESSION['authenticated']) {
echo "Unauthenticated\n";
exit;
}
set_debug($_REQUEST['debug']);
$id = mres($_REQUEST['id']);
if (isset($id)) {
if (file_exists("includes/output/$id.inc.php")) {
include_once "includes/output/$id.inc.php";
}
require $config['install_dir'] . "/html/includes/output/$id.inc.php";
}

View File

@ -28,12 +28,8 @@ if (!isset($_SESSION['authenticated'])) {
die('Unauthorized.');
}
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/functions.inc.php';
require_once 'includes/vars.inc.php';
$init_modules = array('web');
require realpath(__DIR__ . '/..') . '/includes/init.php';
set_debug($_REQUEST['debug']);

View File

@ -1,11 +1,7 @@
<?php
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
$modules = array('web');
require realpath(__DIR__ . '/..') . '/includes/init.php';
set_debug($_REQUEST['debug']);

View File

@ -12,12 +12,13 @@
* the source code distribution for details.
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (!$_SESSION['authenticated']) {
echo "Unauthenticated\n";
exit;
}
set_debug($_REQUEST['debug']);

View File

@ -12,18 +12,13 @@
* the source code distribution for details.
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/common.php';
require_once '../includes/dbFacile.php';
require_once '../includes/rewrites.php';
require_once 'includes/functions.inc.php';
require_once '../includes/rrdtool.inc.php';
require 'lib/Slim/Slim.php';
$init_modules = array('web', 'alerts');
require realpath(__DIR__ . '/..') . '/includes/init.php';
require $config['install_dir'] . '/html/lib/Slim/Slim.php';
\Slim\Slim::registerAutoloader();
$app = new \Slim\Slim();
require_once 'includes/api_functions.inc.php';
require $config['install_dir'] . '/html/includes/api_functions.inc.php';
$app->setName('api');
$app->group(

View File

@ -27,12 +27,8 @@ if (strpos($_SERVER['REQUEST_URI'], 'debug')) {
ini_set('error_reporting', 0);
}
require '../includes/defaults.inc.php';
require '../config.php';
require '../includes/definitions.inc.php';
require '../includes/functions.php';
require 'includes/functions.inc.php';
require 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (get_client_ip() != $_SERVER['SERVER_ADDR']) {
if (!$_SESSION['authenticated']) {
@ -41,11 +37,11 @@ if (get_client_ip() != $_SERVER['SERVER_ADDR']) {
}
}
require_once 'lib/jpgraph/jpgraph.php';
require_once 'lib/jpgraph/jpgraph_line.php';
require_once 'lib/jpgraph/jpgraph_bar.php';
require_once 'lib/jpgraph/jpgraph_utils.inc.php';
require_once 'lib/jpgraph/jpgraph_date.php';
require_once $config['install_dir'] . '/html/lib/jpgraph/jpgraph.php';
require_once $config['install_dir'] . '/html/lib/jpgraph/jpgraph_line.php';
require_once $config['install_dir'] . '/html/lib/jpgraph/jpgraph_bar.php';
require_once $config['install_dir'] . '/html/lib/jpgraph/jpgraph_utils.inc.php';
require_once $config['install_dir'] . '/html/lib/jpgraph/jpgraph_date.php';
if (is_numeric($_GET['bill_id'])) {
if (get_client_ip() != $_SERVER['SERVER_ADDR']) {

View File

@ -27,12 +27,8 @@ if (strpos($_SERVER['REQUEST_URI'], 'debug')) {
ini_set('error_reporting', 0);
}
require '../includes/defaults.inc.php';
require '../config.php';
require '../includes/definitions.inc.php';
require '../includes/functions.php';
require 'includes/functions.inc.php';
require 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (get_client_ip() != $_SERVER['SERVER_ADDR']) {
if (!$_SESSION['authenticated']) {
@ -41,10 +37,10 @@ if (get_client_ip() != $_SERVER['SERVER_ADDR']) {
}
}
require 'lib/jpgraph/jpgraph.php';
require 'lib/jpgraph/jpgraph_line.php';
require 'lib/jpgraph/jpgraph_utils.inc.php';
require 'lib/jpgraph/jpgraph_date.php';
require $config['install_dir'] . '/html/lib/jpgraph/jpgraph.php';
require $config['install_dir'] . '/html/lib/jpgraph/jpgraph_line.php';
require $config['install_dir'] . '/html/lib/jpgraph/jpgraph_utils.inc.php';
require $config['install_dir'] . '/html/lib/jpgraph/jpgraph_date.php';
if (is_numeric($_GET['bill_id'])) {
if (get_client_ip() != $_SERVER['SERVER_ADDR']) {

View File

@ -26,13 +26,8 @@ if (strpos($_SERVER['PATH_INFO'], 'debug')) {
ini_set('error_reporting', 0);
}
require '../includes/defaults.inc.php';
require '../config.php';
require_once '../includes/definitions.inc.php';
require '../includes/functions.php';
require 'includes/functions.inc.php';
require 'includes/vars.inc.php';
require 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
$report = mres($vars['report']);
if (!empty($report) && file_exists("includes/reports/$report.csv.inc.php")) {
@ -42,7 +37,7 @@ if (!empty($report) && file_exists("includes/reports/$report.csv.inc.php")) {
}
$csv = array();
include_once "includes/reports/$report.csv.inc.php";
require $config['install_dir'] . "/html/includes/reports/$report.csv.inc.php";
foreach ($csv as $line) {
echo implode(',', $line)."\n";
}

View File

@ -10,18 +10,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
// FIXME - fewer includes!
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/common.php';
require_once '../includes/dbFacile.php';
require_once '../includes/rewrites.php';
require_once 'includes/functions.inc.php';
require_once 'includes/authenticate.inc.php';
require_once '../includes/snmp.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (is_numeric($_GET['id']) && ($config['allow_unauth_graphs'] || port_permitted($_GET['id']))) {
$port = get_port_by_id($_GET['id']);

View File

@ -1,80 +0,0 @@
<?php
/*
* LibreNMS
*
* Copyright (c) 2014 Neil Lathwood <https://github.com/laf/ http://www.lathwood.co.uk/fa>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
enable_debug();
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once 'includes/functions.inc.php';
require_once '../includes/functions.php';
require_once 'includes/authenticate.inc.php';
if (!$_SESSION['authenticated']) {
echo 'unauthenticated';
exit;
}
$new_conf_type = $_POST['new_conf_type'];
$new_conf_name = $_POST['new_conf_name'];
$new_conf_desc = $_POST['new_conf_desc'];
if (empty($new_conf_name)) {
echo "You haven't specified a config name";
exit;
} elseif (empty($new_conf_desc)) {
echo "You haven't specified a config description";
exit;
} elseif (empty($_POST['new_conf_single_value']) && empty($_POST['new_conf_multi_value'])) {
echo "You haven't specified a config value";
exit;
}
$db_inserted = '0';
if ($new_conf_type == 'Single') {
$new_conf_type = 'single';
$new_conf_value = $_POST['new_conf_single_value'];
$db_inserted = add_config_item($new_conf_name, $new_conf_value, $new_conf_type, $new_conf_desc);
} elseif ($new_conf_type == 'Single Array') {
$new_conf_type = 'single-array';
$new_conf_value = $_POST['new_conf_single_value'];
$db_inserted = add_config_item($new_conf_name, $new_conf_value, $new_conf_type, $new_conf_desc);
} elseif ($new_conf_type == 'Standard Array' || $new_conf_type == 'Multi Array') {
if ($new_conf_type == 'Standard Array') {
$new_conf_type = 'array';
} elseif ($new_conf_type == 'Multi Array') {
$new_conf_type = 'multi-array';
} else {
// $new_conf_type is invalid so clear values so we don't create any config
$new_conf_value = '';
}
$new_conf_value = nl2br($_POST['new_conf_multi_value']);
$values = explode('<br />', $new_conf_value);
foreach ($values as $item) {
$new_conf_value = trim($item);
$db_inserted = add_config_item($new_conf_name, $new_conf_value, $new_conf_type, $new_conf_desc);
}
} else {
echo 'Bad config type!';
$db_inserted = 0;
exit;
}//end if
if ($db_inserted == 1) {
echo 'Your new config item has been added';
} else {
echo 'An error occurred adding your config item to the database';
}

View File

@ -13,17 +13,8 @@
*
*/
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/common.php';
require_once '../includes/dbFacile.php';
require_once '../includes/rewrites.php';
require_once 'includes/functions.inc.php';
require_once 'includes/authenticate.inc.php';
require_once '../includes/snmp.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (is_numeric($_GET['id']) && ($config['allow_unauth_graphs'] || port_permitted($_GET['id']))) {
$port = get_port_by_id($_GET['id']);

View File

@ -13,8 +13,6 @@
$start = microtime(true);
require_once 'Net/IPv4.php';
if (isset($_GET['debug'])) {
$debug = true;
ini_set('display_errors', 1);
@ -29,22 +27,12 @@ if (isset($_GET['debug'])) {
ini_set('error_reporting', 0);
}
require_once '../includes/defaults.inc.php';
require_once '../config.php';
require_once '../includes/common.php';
require_once '../includes/definitions.inc.php';
require_once '../includes/dbFacile.php';
require_once '../includes/rewrites.php';
require_once 'includes/functions.inc.php';
require_once '../includes/rrdtool.inc.php';
if ($config['allow_unauth_graphs'] != true) {
require_once 'includes/authenticate.inc.php';
}
$init_modules = array('web', 'graphs');
require realpath(__DIR__ . '/..') . '/includes/init.php';
rrdtool_initialize(false);
require 'includes/graphs/graph.inc.php';
require $config['install_dir'] . '/html/includes/graphs/graph.inc.php';
rrdtool_close();

View File

@ -12,12 +12,6 @@
* the source code distribution for details.
*/
require_once '../includes/functions.php';
require_once '../includes/device-groups.inc.php';
if (file_exists('../html/includes/authentication/'.$config['auth_mechanism'].'.inc.php')) {
include '../html/includes/authentication/'.$config['auth_mechanism'].'.inc.php';
}
function authToken(\Slim\Route $route)
{
$app = \Slim\Slim::getInstance();

View File

@ -48,13 +48,6 @@ if (!isset($config['auth_mechanism'])) {
$config['auth_mechanism'] = 'mysql';
}
if (file_exists('includes/authentication/'.$config['auth_mechanism'].'.inc.php')) {
include_once 'includes/authentication/'.$config['auth_mechanism'].'.inc.php';
} else {
print_error('ERROR: no valid auth_mechanism defined!');
exit();
}
$auth_success = 0;
if ((isset($_SESSION['username'])) || (isset($_COOKIE['sess_id'],$_COOKIE['token']))) {

View File

@ -1055,19 +1055,6 @@ function clean_bootgrid($string)
}//end clean_bootgrid()
// Insert new config items
function add_config_item($new_conf_name, $new_conf_value, $new_conf_type, $new_conf_desc)
{
if (dbInsert(array('config_name' => $new_conf_name, 'config_value' => $new_conf_value, 'config_default' => $new_conf_value, 'config_type' => $new_conf_type, 'config_desc' => $new_conf_desc, 'config_group' => '500_Custom Settings', 'config_sub_group' => '01_Custom settings', 'config_hidden' => '0', 'config_disabled' => '0'), 'config')) {
$db_inserted = 1;
} else {
$db_inserted = 0;
}
return ($db_inserted);
}//end add_config_item()
function get_config_by_group($group)
{
$group = array($group);

View File

@ -1,7 +1,6 @@
<?php
// Authorises bill viewing and sets $ports as reference to mysql query containing ports for this bill
require '../includes/billing.php';
if (is_numeric($_GET['id']) && ($auth || bill_permitted($_GET['id']))) {
$bill = dbFetchRow('SELECT * FROM `bills` WHERE bill_id = ?', array($_GET['id']));

View File

@ -57,6 +57,7 @@ if ($config['title_image']) {
<li><a href="<?php echo(generate_url(array('page'=>'availability-map'))); ?>"><i class="fa fa-arrow-circle-up fa-fw fa-lg" aria-hidden="true"></i> Availability</a></li>
<li><a href="<?php echo(generate_url(array('page'=>'map'))); ?>"><i class="fa fa-desktop fa-fw fa-lg" aria-hidden="true"></i> Network</a></li>
<?php
echo 'BROKE HERE';
require_once '../includes/device-groups.inc.php';
$devices_groups = GetDeviceGroups();
if (count($devices_groups) > 0) {

View File

@ -61,12 +61,8 @@ if (!file_exists('../config.php') && $_SERVER['PATH_INFO'] != '/install.php') {
exit;
}
require '../includes/defaults.inc.php';
require '../config.php';
require_once '../includes/definitions.inc.php';
require '../includes/functions.php';
require 'includes/functions.inc.php';
require 'includes/vars.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
$config['memcached']['ttl'] = $config['time']['now']+300;
@ -79,8 +75,6 @@ ob_start();
ini_set('allow_url_fopen', 0);
ini_set('display_errors', 0);
require 'includes/authenticate.inc.php';
if (strstr($_SERVER['REQUEST_URI'], 'widescreen=yes')) {
$_SESSION['widescreen'] = 1;
}

View File

@ -6,87 +6,71 @@ if (empty($_POST) && !empty($_SESSION) && !isset($_REQUEST['stage'])) {
$_SESSION = $_POST;
}
$stage = $_POST['stage'];
$stage = isset($_POST['stage']) ? $_POST['stage'] : 0;
// Before we do anything, if we see config.php, redirect back to the homepage.
if (file_exists('../config.php') && $stage != "6") {
if (file_exists('../config.php') && $stage != 6) {
header("Location: /");
exit;
}
// List of php modules we expect to see
// $version_id = $major_version * 10000 + $minor_version * 100 + $release_version;
if (PHP_VERSION_ID < 70000) {
$modules = array('gd','mysql','snmp','mcrypt');
} else {
$modules = array('gd','mysqli','snmp','mcrypt');
// do not use the DB in init, we'll bring it up ourselves
$init_modules = array('web', 'nodb');
if ($stage > 3) {
$init_modules[] = 'auth';
}
require realpath(__DIR__ . '/..') . '/includes/init.php';
// List of php modules we expect to see
$modules = array('gd','mysqli','snmp','mcrypt');
$dbhost = @$_POST['dbhost'] ?: 'localhost';
$dbuser = @$_POST['dbuser'] ?: 'librenms';
$dbpass = @$_POST['dbpass'] ?: '';
$dbname = @$_POST['dbname'] ?: 'librenms';
$config['db_host']=$dbhost;
$config['db_user']=$dbuser;
$config['db_pass']=$dbpass;
$config['db_name']=$dbname;
$add_user = @$_POST['add_user'] ?: '';
$add_pass = @$_POST['add_pass'] ?: '';
$add_email = @$_POST['add_email'] ?: '';
if ($stage == "4" || $stage == "3") {
// Ok now let's set the db connection up
$config['db_host']=$dbhost;
$config['db_user']=$dbuser;
$config['db_pass']=$dbpass;
$config['db_name']=$dbname;
}
require '../includes/defaults.inc.php';
// Work out the install directory
$cur_dir = explode('/', __DIR__);
$check = end($cur_dir);
if (empty($check)) {
$install_dir = array_pop($cur_dir);
}
unset($check);
$install_dir = array_pop($cur_dir);
$install_dir = implode('/', $cur_dir);
$config['install_dir'] = $install_dir;
$config['log_dir'] = $install_dir.'/logs';
if ($_POST['stage'] == "3" || $_POST['stage'] == "4") {
require_once '../includes/definitions.inc.php';
}
require '../includes/functions.php';
require 'includes/functions.inc.php';
// Check we can connect to MySQL DB, if not, back to stage 1 :)
if ($stage == 2 || $stage == 3) {
if ($stage > 1) {
$database_link = mysqli_connect('p:'.$dbhost, $dbuser, $dbpass, $dbname);
if (mysqli_connect_error()) {
$stage = 1;
$msg = "Couldn't connect to the database, please check your details<br /> " . mysqli_connect_error();
} elseif ($stage != 3) {
} elseif ($stage == 2) {
if ($_SESSION['build-ok'] == true) {
$stage = 3;
$msg = "It appears that the database is already setup so have moved onto stage $stage";
}
}
$_SESSION['stage'] = $stage;
} elseif ($stage == "4") {
}
if ($stage == 4) {
// Now check we have a username, password and email before adding new user
if (empty($add_user) || empty($add_pass) || empty($add_email)) {
$stage = 3;
$msg = "You haven't entered enough information to add the user account, please check below and re-try";
}
} elseif ($stage == "6") {
} elseif ($stage == 6) {
session_destroy();
// If we get here then let's do some final checks.
if (!file_exists("../config.php")) {
// config.php file doesn't exist. go back to that stage
$msg = "config.php still doesn't exist";
$stage = "5";
$stage = 5;
}
}
if (empty($stage)) {
$stage = '0';
$stage = 0;
}
$total_stages = 6;
@ -478,7 +462,6 @@ if (!file_exists("../config.php")) {
</div>
<div class="col-md-6">
<?php
require 'includes/authenticate.inc.php';
if (auth_usermanagement()) {
if (!user_exists($add_user)) {
if (adduser($add_user, $add_pass, '10', $add_email)) {

View File

@ -20,12 +20,8 @@ if ($_GET[debug]) {
ini_set('error_reporting', E_ALL);
}
require '../includes/defaults.inc.php';
require '../config.php';
require_once '../includes/definitions.inc.php';
require 'includes/functions.inc.php';
require '../includes/functions.php';
require 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (!$_SESSION['authenticated']) {
echo 'unauthenticated';

View File

@ -18,13 +18,8 @@ ini_set('error_reporting', E_ALL);
$links = 1;
include_once '../includes/defaults.inc.php';
include_once '../config.php';
include_once '../includes/definitions.inc.php';
include_once '../includes/functions.php';
include_once '../includes/dbFacile.php';
include_once 'includes/functions.inc.php';
include_once 'includes/authenticate.inc.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (strpos($_SERVER['REQUEST_URI'], 'anon')) {
$anon = 1;

View File

@ -26,13 +26,9 @@ if (strpos($_SERVER['PATH_INFO'], 'debug')) {
ini_set('error_reporting', 0);
}
require '../includes/defaults.inc.php';
require '../config.php';
require_once '../includes/definitions.inc.php';
require '../includes/functions.php';
require 'includes/functions.inc.php';
require 'includes/authenticate.inc.php';
require_once 'lib/tcpdf/tcpdf.php';
$init_modules = array('web', 'auth');
require realpath(__DIR__ . '/..') . '/includes/init.php';
require $config['install_dir'] . '/html/lib/tcpdf/tcpdf.php';
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

View File

@ -22,9 +22,6 @@
* @subpackage Alerts
*/
include_once($config['install_dir'].'/includes/common.inc.php');
include_once($config['install_dir'].'/includes/device-groups.inc.php');
include_once($config['install_dir'].'/html/includes/authentication/'.$config['auth_mechanism'].'.inc.php');
/**
* Generate SQL from Rule

View File

@ -18,10 +18,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
require_once $config['install_dir'] . "/includes/rrdtool.inc.php";
require_once $config['install_dir'] . "/includes/influxdb.inc.php";
/**
* Filter all elements with keys that start with 'rrd_'
*

View File

@ -22,19 +22,6 @@
//
error_reporting(E_ERROR|E_PARSE|E_CORE_ERROR|E_COMPILE_ERROR);
// set install_dir
$config['install_dir'] = realpath(__DIR__ . '/..');
// initialize the class loader and add custom mappings
require_once $config['install_dir'] . '/LibreNMS/ClassLoader.php';
$classLoader = new LibreNMS\ClassLoader();
$classLoader->registerClass('Console_Color2', $config['install_dir'] . '/lib/console_colour.php');
$classLoader->registerClass('Console_Table', $config['install_dir'] . '/lib/console_table.php');
$classLoader->registerClass('PHPMailer', $config['install_dir'] . "/lib/phpmailer/class.phpmailer.php");
$classLoader->registerClass('SMTP', $config['install_dir'] . "/lib/phpmailer/class.smtp.php");
$classLoader->registerClass('PasswordHash', $config['install_dir'] . '/html/lib/PasswordHash.php');
$classLoader->register();
// Default directories
$config['project_name'] = 'LibreNMS';
$config['project_id'] = strtolower($config['project_name']);

View File

@ -1,49 +1,9 @@
<?php
require_once $config['install_dir'].'/includes/common.php';
require_once $config['install_dir'].'/includes/dbFacile.php';
require_once $config['install_dir'].'/includes/mergecnf.inc.php';
// Connect to database
$database_link = mysqli_connect('p:'.$config['db_host'], $config['db_user'], $config['db_pass']);
if (!$database_link) {
if (isCli()) {
c_echo("[%RFAIL%n] Could not connect to MySQL\n");
} else {
echo '<h2>MySQL Error: could not connect</h2>';
}
echo mysqli_error($database_link);
die;
}
$database_db = mysqli_select_db($database_link, $config['db_name']);
if ($config['memcached']['enable'] === true) {
if (class_exists('Memcached')) {
$config['memcached']['ttl'] = 60;
$config['memcached']['resource'] = new Memcached();
$config['memcached']['resource']->addServer($config['memcached']['host'], $config['memcached']['port']);
} else {
echo "WARNING: You have enabled memcached but have not installed the PHP bindings. Disabling memcached support.\n";
echo "Try 'apt-get install php5-memcached' or 'pecl install memcached'. You will need the php5-dev and libmemcached-dev packages to use pecl.\n\n";
$config['memcached']['enable'] = 0;
}
}
$clone = $config;
foreach (dbFetchRows('select config_name,config_value from config') as $obj) {
$clone = array_replace_recursive($clone, mergecnf($obj));
}
$config = array_replace_recursive($clone, $config);
//
// NO CHANGES TO THIS FILE, IT IS NOT USER-EDITABLE #
//
// YES, THAT MEANS YOU #
//
umask(0002);
$config['os']['default']['over'][0]['graph'] = 'device_processor';
$config['os']['default']['over'][0]['text'] = 'Processor Usage';
@ -2263,12 +2223,6 @@ $config['os'][$os]['over'][1]['text'] = 'CPU Usage';
$config['os'][$os]['over'][2]['graph'] = 'device_mempool';
$config['os'][$os]['over'][2]['text'] = 'Memory Usage';
// Graph Types
require_once $config['install_dir'].'/includes/load_db_graph_types.inc.php';
// Device - Wireless - AirMAX
$config['graph_types']['device']['ubnt_airmax_WlStatStaCount']['section'] = 'wireless';
$config['graph_types']['device']['ubnt_airmax_WlStatStaCount']['order'] = '0';
@ -2907,9 +2861,6 @@ $config['ipmi_unit']['RPM'] = 'fanspeed';
$config['ipmi_unit']['Watts'] = 'power';
$config['ipmi_unit']['discrete'] = '';
// INCLUDE THE VMWARE DEFINITION FILE.
require_once 'vmware_guestid.inc.php';
// Define some variables if they aren't set by user definition in config.php
if (!isset($config['html_dir'])) {
$config['html_dir'] = $config['install_dir'].'/html';

View File

@ -18,24 +18,6 @@ use LibreNMS\Exceptions\HostUnreachablePingException;
use LibreNMS\Exceptions\InvalidPortAssocModeException;
use LibreNMS\Exceptions\SnmpVersionUnsupportedException;
// Include from PEAR
include_once("Net/IPv4.php");
include_once("Net/IPv6.php");
// Includes
include_once($config['install_dir'] . "/includes/dbFacile.php");
include_once($config['install_dir'] . "/includes/common.php");
include_once($config['install_dir'] . "/includes/datastore.inc.php");
include_once($config['install_dir'] . "/includes/billing.php");
include_once($config['install_dir'] . "/includes/cisco-entities.php");
include_once($config['install_dir'] . "/includes/syslog.php");
include_once($config['install_dir'] . "/includes/rewrites.php");
include_once($config['install_dir'] . "/includes/snmp.inc.php");
include_once($config['install_dir'] . "/includes/services.inc.php");
$console_color = new Console_Color2();
function set_debug($debug)
{
if (isset($debug)) {

View File

@ -12,10 +12,6 @@
* the source code distribution for details.
*/
if (isset($config['influxdb']['enable']) && $config['influxdb']['enable'] === true) {
include $config['install_dir'].'/lib/influxdb-php/vendor/autoload.php';
}//end if
function influxdb_connect()
{
global $config;

158
includes/init.php Normal file
View File

@ -0,0 +1,158 @@
<?php
/**
* init.php
*
* Load includes and initialize needed things
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2016 Tony Murray
* @author Tony Murray <murraytony@gmail.com>
*/
/**
* @param array $modules
*/
//function librenms_init($init_modules = array())
//{
//global $console_color, $config;
$install_dir = realpath(__DIR__ . '/..');
$config['install_dir'] = $install_dir;
chdir($install_dir);
// Libraries
require('Net/IPv4.php');
require('Net/IPv6.php');
// initialize the class loader and add custom mappings
require $install_dir . '/LibreNMS/ClassLoader.php';
$classLoader = new LibreNMS\ClassLoader();
$classLoader->registerClass('Console_Color2', $config['install_dir'] . '/lib/console_colour.php');
$classLoader->registerClass('Console_Table', $config['install_dir'] . '/lib/console_table.php');
$classLoader->registerClass('PHPMailer', $config['install_dir'] . "/lib/phpmailer/class.phpmailer.php");
$classLoader->registerClass('SMTP', $config['install_dir'] . "/lib/phpmailer/class.smtp.php");
$classLoader->registerClass('PasswordHash', $config['install_dir'] . '/html/lib/PasswordHash.php');
// $classLoader->registerDir($install_dir . '/tests', 'LibreNMS\Tests');
$classLoader->register();
require $install_dir . '/lib/influxdb-php/vendor/autoload.php';
// function only files
require_once $install_dir . '/includes/common.php';
require $install_dir . '/includes/dbFacile.php';
require $install_dir . '/includes/rrdtool.inc.php';
require $install_dir . '/includes/influxdb.inc.php';
require $install_dir . '/includes/datastore.inc.php';
require $install_dir . '/includes/billing.php';
require $install_dir . '/includes/syslog.php';
require $install_dir . '/includes/snmp.inc.php';
require $install_dir . '/includes/services.inc.php';
require $install_dir . '/includes/mergecnf.inc.php';
require $install_dir . '/includes/functions.php';
if (module_selected('web', $init_modules)) {
chdir($install_dir . '/html');
require $install_dir . '/html/includes/functions.inc.php';
require_once $install_dir . '/includes/rewrites.php'; // FIXME both definitions and functions
}
if (module_selected('discovery', $init_modules)) {
require $install_dir . '/includes/discovery/functions.inc.php';
require_once $install_dir . '/includes/rewrites.php';
}
if (module_selected('polling', $init_modules)) {
require_once $install_dir . '/includes/device-groups.inc.php';
require $install_dir . '/includes/polling/functions.inc.php';
}
if (module_selected('alerts', $init_modules)) {
require_once $install_dir . '/includes/device-groups.inc.php';
require $install_dir . '/includes/alerts.inc.php';
}
// variable definitions
require $install_dir . '/includes/cisco-entities.php';
require $install_dir . '/includes/vmware_guestid.inc.php';
require $install_dir . '/includes/defaults.inc.php';
include $install_dir . '/config.php';
// init memcached
if ($config['memcached']['enable'] === true) {
if (class_exists('Memcached')) {
$config['memcached']['ttl'] = 60;
$config['memcached']['resource'] = new Memcached();
$config['memcached']['resource']->addServer($config['memcached']['host'], $config['memcached']['port']);
} else {
echo "WARNING: You have enabled memcached but have not installed the PHP bindings. Disabling memcached support.\n";
echo "Try 'apt-get install php5-memcached' or 'pecl install memcached'. You will need the php5-dev and libmemcached-dev packages to use pecl.\n\n";
$config['memcached']['enable'] = 0;
}
}
if (!module_selected('nodb', $init_modules)) {
// Connect to database
$database_link = mysqli_connect('p:' . $config['db_host'], $config['db_user'], $config['db_pass']);
if (!$database_link) {
echo '<h2>MySQL Error</h2>';
echo mysqli_connect_error();
die;
}
$database_db = mysqli_select_db($database_link, $config['db_name']);
// pull in the database config settings
mergedb();
// load graph types from the database
require $install_dir . '/includes/load_db_graph_types.inc.php';
}
require $install_dir . '/includes/definitions.inc.php';
if (file_exists($config['install_dir'] . '/html/includes/authentication/'.$config['auth_mechanism'].'.inc.php')) {
require $config['install_dir'] . '/html/includes/authentication/'.$config['auth_mechanism'].'.inc.php';
} else {
print_error('ERROR: no valid auth_mechanism defined!');
exit();
}
if (module_selected('web', $init_modules)) {
umask(0002);
require $install_dir . '/html/includes/vars.inc.php';
}
$console_color = new Console_Color2();
if (module_selected('auth', $init_modules) ||
(
module_selected('graphs', $init_modules) &&
isset($config['allow_unauth_graphs']) &&
$config['allow_unauth_graphs'] != true
)
) {
require $install_dir . '/html/includes/authenticate.inc.php';
}
function module_selected($module, $modules)
{
return in_array($module, (array) $modules);
}

View File

@ -25,6 +25,26 @@
*/
/**
* merge the database config with the global config
* Global config overrides db
*/
function mergedb()
{
global $config;
$clone = $config;
foreach (dbFetchRows('select config_name,config_value from config') as $obj) {
$clone = array_replace_recursive($clone, mergecnf($obj));
}
$config = array_replace_recursive($clone, $config);
}
/**
* @param $obj
* @return array
*/
function mergecnf($obj)
{
$pointer = array();

View File

@ -22,11 +22,6 @@
* @subpackage Notifications
*/
require_once $config['install_dir'].'/includes/defaults.inc.php';
require_once $config['install_dir'].'/config.php';
require_once $config['install_dir'].'/includes/definitions.inc.php';
require_once $config['install_dir'].'/includes/functions.php';
/**
* Pull notifications from remotes
* @return array Notifications

View File

@ -1,7 +1,5 @@
<?php
require_once $config['install_dir'].'/includes/device-groups.inc.php';
function bulk_sensor_snmpget($device, $sensors)
{
$oid_per_pdu = get_device_oid_limit($device);

View File

@ -139,7 +139,7 @@ function gen_snmpget_cmd($device, $oids, $options = null, $mib = null, $mibdir =
function gen_snmpwalk_cmd($device, $oids, $options = null, $mib = null, $mibdir = null)
{
global $config;
if ($device['snmpver'] == 'v1' || (isset($device['os']) && $config['os'][$device['os']]['nobulk'])) {
if ($device['snmpver'] == 'v1' || (isset($device['os'], $config['os'][$device['os']]['nobulk']) && $config['os'][$device['os']]['nobulk'])) {
$snmpcmd = $config['snmpwalk'];
} else {
$snmpcmd = $config['snmpbulkwalk'];

View File

@ -15,12 +15,10 @@
* See COPYING for more details.
*/
if (!isset($debug)) {
if (!isset($debug) && php_sapi_name() == 'cli') {
// Not called from within discovery, let's load up the necessary stuff.
include 'includes/defaults.inc.php';
include 'config.php';
include 'includes/definitions.inc.php';
include 'includes/functions.php';
$init_modules = array();
require realpath(__DIR__ . '/../..') . '/includes/init.php';
$options = getopt('d');
if (isset($options['d'])) {

10
irc.php
View File

@ -19,14 +19,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* */
chdir(__DIR__); // cwd to the directory containing this script
require_once 'includes/defaults.inc.php';
require_once 'config.php';
require_once 'includes/definitions.inc.php';
require_once 'includes/functions.php';
require_once 'includes/discovery/functions.inc.php';
require_once 'html/includes/authentication/'.$config['auth_mechanism'].'.inc.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
error_reporting(E_ERROR);
$irc = new LibreNMS\IRCBot();

View File

@ -11,13 +11,9 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
// FIXME - implement cli switches, debugging, etc.
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$iter = '0';

View File

@ -11,14 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
require 'includes/polling/functions.inc.php';
require 'includes/alerts.inc.php';
$init_modules = array('polling', 'alerts');
require __DIR__ . '/includes/init.php';
$poller_start = microtime(true);
echo $config['project_name_version']." Poller\n";

View File

@ -11,12 +11,8 @@
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
// Remove a host and all related data from the system
if ($argv[1] && $argv[2]) {

View File

@ -1,15 +1,8 @@
#!/usr/bin/env php
<?php
chdir(realpath(__DIR__ . '/..')); // cwd to the parent directory of this script
require 'includes/defaults.inc.php';
require 'config.php';
require_once 'includes/definitions.inc.php';
require 'includes/functions.php';
require 'html/includes/functions.inc.php';
$console_color = new Console_Color2();
$init_modules = array();
require realpath(__DIR__ . '/..') . '/includes/init.php';
$long_opts = array(
'list::',

View File

@ -11,11 +11,8 @@
* the source code distribution for details.
*/
chdir(realpath(__DIR__ . '/..')); // cwd to the parent directory of this script
include_once("includes/defaults.inc.php");
include_once("config.php");
include_once("includes/definitions.inc.php");
$init_modules = array();
require realpath(__DIR__ . '/..') . '/includes/init.php';
?>

View File

@ -1,12 +1,9 @@
#!/usr/bin/env php
<?php
chdir(realpath(__DIR__ . '/..')); // cwd to the parent directory of this script
$init_modules = array();
require realpath(__DIR__ . '/..') . '/includes/init.php';
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
rrdtool_initialize();
$options = getopt('h:p:');

View File

@ -33,11 +33,8 @@ chdir(__DIR__); // cwd to the directory containing this script
$ts = microtime(true);
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
require 'includes/discovery/functions.inc.php';
$init_modules = array('discovery');
require __DIR__ . '/includes/init.php';
if ($config['autodiscovery']['snmpscan'] === false) {
echo 'SNMP-Scan disabled.'.PHP_EOL;

View File

@ -18,10 +18,8 @@ ini_set('display_startup_errors', 1);
ini_set('log_errors', 1);
ini_set('error_reporting', E_ALL);
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$entry = explode(',', $argv[1]);

View File

@ -12,15 +12,8 @@
*
*/
chdir(__DIR__); // cwd to the directory containing this script
require 'includes/defaults.inc.php';
require 'config.php';
require 'includes/definitions.inc.php';
require_once 'includes/syslog.php';
require_once 'includes/dbFacile.php';
require_once 'includes/common.php';
require_once 'includes/functions.php';
$init_modules = array();
require __DIR__ . '/includes/init.php';
$i = "1";

View File

@ -34,16 +34,23 @@ $config['mib_dir'] = $install_dir . '/mibs';
$config['snmpget'] = 'snmpget';
$runtime_stats = array('snmpget' => 0, 'snmpwalk' => 0);
// initialize the class loader and add custom mappings
require $install_dir . '/LibreNMS/ClassLoader.php';
$classLoader = new LibreNMS\ClassLoader();
$classLoader->registerDir($install_dir . '/tests', 'LibreNMS\Tests');
$classLoader->register();
require $install_dir . '/includes/common.php';
require $install_dir . '/html/includes/functions.inc.php';
require $install_dir . '/includes/definitions.inc.php';
require $install_dir . '/includes/rrdtool.inc.php';
require $install_dir . '/includes/syslog.php';
require $install_dir . '/includes/dbFacile.php';
require $install_dir . '/includes/functions.php';
if (getenv('SNMPSIM')) {
require $install_dir . '/includes/functions.php';
require $install_dir . '/includes/definitions.inc.php';
require $install_dir . '/includes/snmp.inc.php';
} else {
require $install_dir . '/includes/rrdtool.inc.php';
require $install_dir . '/includes/syslog.php';
require $install_dir . '/tests/mocks/mock.snmp.inc.php';
}

View File

@ -254,24 +254,3 @@ function register_mibs()
{
// stub
}
function getHostOS($device)
{
global $config;
$sysDescr = snmp_get($device, "SNMPv2-MIB::sysDescr.0", "-Ovq");
$sysObjectId = snmp_get($device, "SNMPv2-MIB::sysObjectID.0", "-Ovqn");
d_echo("| $sysDescr | $sysObjectId | \n");
$os = null;
$pattern = $config['install_dir'] . '/includes/discovery/os/*.inc.php';
foreach (glob($pattern) as $file) {
include $file;
if (isset($os)) {
return $os;
}
}
return "generic";
}

View File

@ -15,7 +15,6 @@
chdir(__DIR__); // cwd to the directory containing this script
require_once 'includes/defaults.inc.php';
require_once 'includes/common.php';
$options = getopt('m:h::');
@ -38,7 +37,6 @@ if (isset($options['h'])) {
exit;
}
$console_color = new Console_Color2();
// critical config.php checks
if (!file_exists('config.php')) {
@ -68,8 +66,8 @@ if ($config_failed) {
exit;
}
// load config.php now
require_once 'config.php';
$init_modules = array();
require 'includes/init.php';
// make sure install_dir is set correctly, or the next includes will fail
if (!file_exists($config['install_dir'].'/config.php')) {
@ -77,11 +75,6 @@ if (!file_exists($config['install_dir'].'/config.php')) {
exit;
}
// continue loading includes
require_once 'includes/definitions.inc.php';
require_once 'includes/functions.php';
require_once 'includes/alerts.inc.php';
$versions = version_info();
$cur_sha = $versions['local_sha'];