mirror of
https://git.tt-rss.org/git/tt-rss.git
synced 2025-12-13 12:25:56 +00:00
implement basic feed authentication parameter encryption in the database (FEED_CRYPT_KEY)
This commit is contained in:
@@ -10,6 +10,25 @@
|
||||
<body>
|
||||
|
||||
<?php
|
||||
function make_password($length = 8) {
|
||||
|
||||
$password = "";
|
||||
$possible = "0123456789abcdfghjkmnpqrstvwxyzABCDFGHJKMNPQRSTVWXYZ*%+^";
|
||||
|
||||
$i = 0;
|
||||
|
||||
while ($i < $length) {
|
||||
$char = substr($possible, mt_rand(0, strlen($possible)-1), 1);
|
||||
|
||||
if (!strstr($password, $char)) {
|
||||
$password .= $char;
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
return $password;
|
||||
}
|
||||
|
||||
|
||||
function sanity_check($db_type) {
|
||||
$errors = array();
|
||||
|
||||
@@ -108,6 +127,12 @@
|
||||
|
||||
$finished = false;
|
||||
|
||||
if (function_exists("mcrypt_decrypt")) {
|
||||
$crypt_key = make_password(24);
|
||||
} else {
|
||||
$crypt_key = "";
|
||||
}
|
||||
|
||||
foreach ($data as $line) {
|
||||
if (preg_match("/define\('DB_TYPE'/", $line)) {
|
||||
$rv .= "\tdefine('DB_TYPE', '$DB_TYPE');\n";
|
||||
@@ -123,6 +148,8 @@
|
||||
$rv .= "\tdefine('DB_PORT', '$DB_PORT');\n";
|
||||
} else if (preg_match("/define\('SELF_URL_PATH'/", $line)) {
|
||||
$rv .= "\tdefine('SELF_URL_PATH', '$SELF_URL_PATH');\n";
|
||||
} else if (preg_match("/define\('FEED_CRYPT_KEY'/", $line)) {
|
||||
$rv .= "\tdefine('FEED_CRYPT_KEY', '$crypt_key');\n";
|
||||
} else if (!$finished) {
|
||||
$rv .= "$line\n";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user