more http auth related fixes, unified login sequence function
This commit is contained in:
parent
bffdddd0b0
commit
b8aa49bc97
|
@ -608,9 +608,12 @@
|
||||||
|
|
||||||
if (!$_SERVER['PHP_AUTH_USER'] || $force_logout) {
|
if (!$_SERVER['PHP_AUTH_USER'] || $force_logout) {
|
||||||
|
|
||||||
|
if ($force_logout) logout_user();
|
||||||
|
|
||||||
header('WWW-Authenticate: Basic realm="Tiny Tiny RSS"');
|
header('WWW-Authenticate: Basic realm="Tiny Tiny RSS"');
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
print "<h1>401 Unathorized</h1>";
|
print "<h1>401 Unathorized</h1>";
|
||||||
|
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
@ -619,7 +622,7 @@
|
||||||
$password = db_escape_string($_SERVER['PHP_AUTH_PW']);
|
$password = db_escape_string($_SERVER['PHP_AUTH_PW']);
|
||||||
|
|
||||||
return authenticate_user($link, $login, $password);
|
return authenticate_user($link, $login, $password);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function make_password($length = 8) {
|
function make_password($length = 8) {
|
||||||
|
@ -659,4 +662,33 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function logout_user() {
|
||||||
|
$_SESSION["uid"] = null;
|
||||||
|
$_SESSION["name"] = null;
|
||||||
|
$_SESSION["access_level"] = null;
|
||||||
|
session_destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
function login_sequence($link) {
|
||||||
|
if (!SINGLE_USER_MODE) {
|
||||||
|
|
||||||
|
if (!USE_HTTP_AUTH) {
|
||||||
|
if (!$_SESSION["uid"]) {
|
||||||
|
header("Location: login.php?rt=tt-rss.php");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$force_logout = $_POST["ForceLogout"];
|
||||||
|
|
||||||
|
if (!http_authenticate_user($link, $force_logout == "yes")) {
|
||||||
|
if (!http_authenticate_user($link, true)) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$_SESSION["uid"] = 1;
|
||||||
|
$_SESSION["name"] = "admin";
|
||||||
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -2,12 +2,9 @@
|
||||||
session_start();
|
session_start();
|
||||||
|
|
||||||
require_once "config.php";
|
require_once "config.php";
|
||||||
|
require_once "functions.php";
|
||||||
|
|
||||||
$_SESSION["uid"] = null;
|
logout_user();
|
||||||
$_SESSION["name"] = null;
|
|
||||||
$_SESSION["access_level"] = null;
|
|
||||||
|
|
||||||
session_destroy();
|
|
||||||
|
|
||||||
if (!USE_HTTP_AUTH) {
|
if (!USE_HTTP_AUTH) {
|
||||||
header("Location: login.php");
|
header("Location: login.php");
|
||||||
|
|
17
prefs.php
17
prefs.php
|
@ -8,22 +8,7 @@
|
||||||
|
|
||||||
$link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
$link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
||||||
|
|
||||||
if (!SINGLE_USER_MODE) {
|
login_sequence($link);
|
||||||
|
|
||||||
if (!USE_HTTP_AUTH) {
|
|
||||||
if (!$_SESSION["uid"]) {
|
|
||||||
header("Location: login.php?rt=tt-rss.php");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$force_logout = $_POST["ForceLogout"];
|
|
||||||
http_authenticate_user($link, $force_logout == "yes");
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$_SESSION["uid"] = 1;
|
|
||||||
$_SESSION["name"] = "admin";
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
|
|
16
tt-rss.php
16
tt-rss.php
|
@ -8,21 +8,7 @@
|
||||||
|
|
||||||
$link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
$link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
||||||
|
|
||||||
if (!SINGLE_USER_MODE) {
|
login_sequence($link);
|
||||||
|
|
||||||
if (!USE_HTTP_AUTH) {
|
|
||||||
if (!$_SESSION["uid"]) {
|
|
||||||
header("Location: login.php?rt=tt-rss.php");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$force_logout = $_POST["ForceLogout"];
|
|
||||||
http_authenticate_user($link, $force_logout == "yes");
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$_SESSION["uid"] = 1;
|
|
||||||
$_SESSION["name"] = "admin";
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<html>
|
<html>
|
||||||
|
|
Loading…
Reference in New Issue