mirror of
https://github.com/stylersnico/librenms.git
synced 2026-07-26 00:18:03 +02:00
more fixes and updates from sid3windr
git-svn-id: http://www.observium.org/svn/observer/trunk@579 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
@@ -26,12 +26,39 @@ if($_COOKIE['username'] && $_COOKIE['password']){
|
||||
$_SESSION['password'] = mres($_COOKIE['password']);
|
||||
}
|
||||
|
||||
$auth_success = 0;
|
||||
|
||||
$encrypted = md5($_SESSION['password']);
|
||||
$sql = "SELECT * FROM `users` WHERE `username`='".$_SESSION['username']."' AND `password`='".$encrypted."'";
|
||||
$query = mysql_query($sql);
|
||||
$row = @mysql_fetch_array($query);
|
||||
if($row['username'] && $row['username'] == $_SESSION['username']) {
|
||||
if ($config['auth_mechanism'] == "mysql")
|
||||
{
|
||||
$encrypted = md5($_SESSION['password']);
|
||||
$sql = "SELECT username FROM `users` WHERE `username`='".$_SESSION['username']."' AND `password`='".$encrypted."'";
|
||||
$query = mysql_query($sql);
|
||||
$row = @mysql_fetch_array($query);
|
||||
if($row['username'] && $row['username'] == $_SESSION['username']) {
|
||||
$auth_success = 1;
|
||||
}
|
||||
}
|
||||
else if ($config['auth_mechanism'] == "ldap")
|
||||
{
|
||||
$ds=@ldap_connect($config['auth_ldap_server'],$config['auth_ldap_port']);
|
||||
if ($ds)
|
||||
{
|
||||
if (ldap_bind($ds, $config['auth_ldap_prefix'] . $_SESSION['username'] . $config['auth_ldap_suffix'], $_SESSION['password']))
|
||||
{
|
||||
$auth_success = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "ERROR: no valid auth_mechanism defined.";
|
||||
exit();
|
||||
}
|
||||
|
||||
if ($auth_success) {
|
||||
$sql = "SELECT * FROM `users` WHERE `username`='".$_SESSION['username']."'";
|
||||
$query = mysql_query($sql);
|
||||
$row = @mysql_fetch_array($query);
|
||||
$_SESSION['userlevel'] = $row['level'];
|
||||
$_SESSION['user_id'] = $row['user_id'];
|
||||
if(!$_SESSION['authenticated']) {
|
||||
@@ -39,11 +66,12 @@ if($row['username'] && $row['username'] == $_SESSION['username']) {
|
||||
mysql_query("INSERT INTO authlog (`user`,`address`,`result`) VALUES ('".$_SESSION['username']."', '".$_SERVER["REMOTE_ADDR"]."', 'logged in')");
|
||||
header("Location: ".$_SERVER['REQUEST_URI']);
|
||||
}
|
||||
if(isset($_POST['remember'])){
|
||||
if(isset($_POST['remember'])) {
|
||||
setcookie("username", $_SESSION['username'], time()+60*60*24*100, "/");
|
||||
setcookie("password", $_SESSION['password'], time()+60*60*24*100, "/");
|
||||
}
|
||||
} elseif ($_SESSION['username']) {
|
||||
}
|
||||
elseif ($_SESSION['username']) {
|
||||
$auth_message = "Authentication Failed";
|
||||
unset ($_SESSION['authenticated']);
|
||||
mysql_query("INSERT INTO authlog (`user`,`address`,`result`) VALUES ('".$_SESSION['username']."', '".$_SERVER["REMOTE_ADDR"]."', 'authentication failure')");
|
||||
|
||||
@@ -36,13 +36,6 @@
|
||||
} ?>
|
||||
<!-- <li><a href="alerts/"><img src='images/16/exclamation.png' border=0 align=absmiddle> Alerts</a></li> -->
|
||||
<li><a href="inventory/"><img src='images/16/bricks.png' border=0 align=absmiddle> Inventory</a></li>
|
||||
<?php
|
||||
if($_SESSION['userlevel'] >= '10') {
|
||||
echo("
|
||||
|
||||
<li><a href='authlog/'><img src='images/16/lock.png' border=0 align=absmiddle> Authlog</a></li>");
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -204,7 +197,9 @@ echo(" <li><hr /></li>
|
||||
<li><hr width=140/></li>
|
||||
<li><a href='?page=adduser'><img src='images/16/user_add.png' border=0 align=absmiddle> Add User</a></li>
|
||||
<li><a href='?page=deluser'><img src='images/16/user_delete.png' border=0 align=absmiddle> Remove User</a></li>
|
||||
<li><a href='?page=edituser'><img src='images/16/user_edit.png' border=0 align=absmiddle> Edit User</a></li>");
|
||||
<li><a href='?page=edituser'><img src='images/16/user_edit.png' border=0 align=absmiddle> Edit User</a></li>
|
||||
<li><hr width=140 /></li>
|
||||
<li><a href='authlog/'><img src='images/16/lock.png' border=0 align=absmiddle> Authlog</a></li>");
|
||||
} ?>
|
||||
</ul>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -22,7 +22,11 @@ function generate_front_box ($type, $content) {
|
||||
|
||||
echo("<div style='padding: 3px 10px; background: #fff;'>");
|
||||
|
||||
if($_SESSION['userlevel'] == '10') {
|
||||
$sql = mysql_query("SELECT * FROM `devices` WHERE `status` = '0' AND `ignore` = '0'");
|
||||
} else {
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D, devices_perms AS P WHERE D.device_id = P.device_id AND P.user_id = '" . $_SESSION['user_id'] . "' AND D.status = '0' AND D.ignore = '0'");
|
||||
}
|
||||
while($device = mysql_fetch_array($sql)){
|
||||
|
||||
generate_front_box("alert", "<center><strong>".generatedevicelink($device, shorthost($device['hostname']))."</strong><br />
|
||||
@@ -33,9 +37,12 @@ while($device = mysql_fetch_array($sql)){
|
||||
|
||||
}
|
||||
|
||||
if($_SESSION['userlevel'] == '10') {
|
||||
$sql = mysql_query("SELECT * FROM `interfaces` AS I, `devices` AS D WHERE I.device_id = D.device_id AND ifOperStatus = 'down' AND ifAdminStatus = 'up' AND D.ignore = '0' AND I.ignore = '0'");
|
||||
} else {
|
||||
$sql = mysql_query("SELECT * FROM `interfaces` AS I, `devices` AS D, devices_perms AS P WHERE D.device_id = P.device_id AND P.user_id = '" . $_SESSION['user_id'] . "' AND I.device_id = D.device_id AND ifOperStatus = 'down' AND ifAdminStatus = 'up' AND D.ignore = '0' AND I.ignore = '0'");
|
||||
}
|
||||
while($interface = mysql_fetch_array($sql)){
|
||||
|
||||
generate_front_box("warn", "<center><strong>".generatedevicelink($interface, shorthost($interface['hostname']))."</strong><br />
|
||||
<span style='font-size: 14px; font-weight: bold; margin: 5px; color: #c00;'>Port Down</span><br />
|
||||
<!-- <img src='graph.php?type=bits&if=".$interface['interface_id']."&from=$day&to=$now&width=100&height=32' /> -->
|
||||
@@ -45,10 +52,9 @@ while($interface = mysql_fetch_array($sql)){
|
||||
|
||||
}
|
||||
|
||||
/* FIXME service permissions? seem nonexisting now.. */
|
||||
$sql = mysql_query("SELECT * FROM `services` AS S, `devices` AS D WHERE S.service_host = D.device_id AND service_status = 'down' AND D.ignore = '0' AND S.service_ignore = '0'");
|
||||
while($service = mysql_fetch_array($sql)){
|
||||
|
||||
|
||||
generate_front_box("alert", "<center><strong>".generatedevicelink($service, shorthost($service['hostname']))."</strong><br />
|
||||
<span style='font-size: 14px; font-weight: bold; margin: 5px; color: #c00;'>Service Down</span>
|
||||
<strong>".$service['service_type']."</strong><br />
|
||||
@@ -57,7 +63,11 @@ while($service = mysql_fetch_array($sql)){
|
||||
|
||||
}
|
||||
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D, bgpPeers AS B WHERE bgpPeerState != 'established' AND B.device_id = D.device_id");
|
||||
if($_SESSION['userlevel'] == '10') {
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D, bgpPeers AS B WHERE bgpPeerState != 'established' AND B.device_id = D.device_id AND D.ignore = 0");
|
||||
} else {
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D, bgpPeers AS B, devices_perms AS P WHERE D.device_id = P.device_id AND P.user_id = '" . $_SESSION['user_id'] . "' AND bgpPeerState != 'established' AND B.device_id = D.device_id AND D.ignore = 0");
|
||||
}
|
||||
while($peer = mysql_fetch_array($sql)){
|
||||
|
||||
generate_front_box("alert", "<center><strong>".generatedevicelink($peer, shorthost($peer['hostname']))."</strong><br />
|
||||
@@ -68,7 +78,11 @@ while($peer = mysql_fetch_array($sql)){
|
||||
|
||||
}
|
||||
|
||||
$sql = mysql_query("SELECT * FROM `devices` WHERE status = '1' AND `uptime` < '84600'");
|
||||
if($_SESSION['userlevel'] == '10') {
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D WHERE D.status = '1' AND D.uptime < '84600' AND D.ignore = 0");
|
||||
} else {
|
||||
$sql = mysql_query("SELECT * FROM `devices` AS D, devices_perms AS P WHERE D.device_id = P.device_id AND P.user_id = '" . $_SESSION['user_id'] . "' AND D.status = '1' AND D.uptime < '84600' AND D.ignore = 0");
|
||||
}
|
||||
while($device = mysql_fetch_array($sql)){
|
||||
generate_front_box("info", "<center><strong>".generatedevicelink($device, shorthost($device['hostname']))."</strong><br />
|
||||
<span style='font-size: 14px; font-weight: bold; margin: 5px; color: #009;'>Device<br />Rebooted</span><br />
|
||||
|
||||
Reference in New Issue
Block a user