• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

TFS 1.X+ MyAAC Sha1 Issue

athenso

Average Coder
Joined
May 31, 2011
Messages
152
Solutions
2
Reaction score
22
I am using MyAAC, I am using a fork of TFS 1.3 this one.

MyAAC will not recognize that the server is using Sha1 encription. (Everything is sourced/located correct in the config file for config.local and config in my www root folder). So any accounts created are submited to the database in plain text. So when I went to log in i could not log in at all.

I did use a MYSQL script to change the password to SHA1 to log in. This does work, but how do i get MyAAC to make all registered account passwords to be sha1? I have searched for quite a while and everything i have found either doesnt work, or is not supported for this tfs version i am using.
 
OP
OP
athenso

athenso

Average Coder
Joined
May 31, 2011
Messages
152
Solutions
2
Reaction score
22
I tried that as well. I did a fresh install, left everything database settings wise as default.
Post automatically merged:

I did a fresh install a few days ago and it still is not communicating with SHA1. The database connection settings are blank (as defaulted)
 
Last edited:
OP
OP
athenso

athenso

Average Coder
Joined
May 31, 2011
Messages
152
Solutions
2
Reaction score
22
Still didnt work.

My system/database.php
Lua:
<?php
/**
 * Database connection
 *
 * @package   MyAAC
 * @author    Slawkens <[email protected]>
 * @copyright 2019 MyAAC
 * @link      https://my-aac.org
 */
defined('MYAAC') or die('Direct access not allowed!');

    if(!isset($config['database_user'][0], $config['database_password'][0], $config['database_name'][0]))
    {
        if(isset($config['lua']['sqlType'])) {// tfs 0.3
            if(isset($config['lua']['mysqlHost'])) {// tfs 0.2
                $config['otserv_version'] = TFS_02;
                $config['database_type'] = 'mysql';
                $config['database_host'] = $config['lua']['mysqlHost'];
                $config['database_port'] = $config['lua']['mysqlPort'];
                $config['database_user'] = $config['lua']['mysqlUser'];
                $config['database_password'] = $config['lua']['mysqlPass'];
                $config['database_name'] = $config['lua']['mysqlDatabase'];
                $config['database_encryption'] = 'sha1';
            }
            else {
                $config['otserv_version'] = TFS_03;
                $config['database_type'] = $config['lua']['sqlType'];
                $config['database_host'] = $config['lua']['sqlHost'];
                $config['database_port'] = $config['lua']['sqlPort'];
                $config['database_user'] = $config['lua']['sqlUser'];
                $config['database_password'] = $config['lua']['sqlPass'];
                $config['database_name'] = $config['lua']['sqlDatabase'];

                $config['database_encryption'] = $config['lua']['encryptionType'];
                if(!isset($config['database_encryption']) || empty($config['database_encryption'])) // before 0.3.6
                    $config['database_encryption'] = 'sha1';
            }
        }
        else if(isset($config['lua']['mysqlHost'])) // tfs 1.0
        {
            $config['otserv_version'] = TFS_02;
            $config['database_type'] = 'mysql';
            $config['database_host'] = $config['lua']['mysqlHost'];
            $config['database_port'] = $config['lua']['mysqlPort'];
            $config['database_user'] = $config['lua']['mysqlUser'];
            $config['database_password'] = $config['lua']['mysqlPass'];
            $config['database_name'] = $config['lua']['mysqlDatabase'];
            if(!isset($config['database_socket'][0])) {
                $config['database_socket'] = isset($config['lua']['mysqlSock']) ? trim($config['lua']['mysqlSock']) : '';
            }
            $config['database_encryption'] = 'sha1';
        }
        else if(isset($config['lua']['database_type'])) // otserv
        {
            $config['otserv_version'] = OTSERV;
            $config['database_type'] = $config['lua']['database_type'];
            $config['database_host'] = $config['lua']['database_host'];
            $config['database_port'] = $config['lua']['database_port'];
            $config['database_user'] = $config['lua']['database_username'];
            $config['database_password'] = $config['lua']['database_password'];
            $config['database_name'] = $config['lua']['database_schema'];
            $config['database_encryption'] = 'sha1';
            $config['database_salt'] = isset($config['lua']['passwordsalt']) ? $config['lua']['passwordsalt'] : $config['lua']['password_salt'];
        }
        else if(isset($config['lua']['sql_host'])) // otserv 0.6.3 / 0.6.4
        {
            $config['otserv_version'] = OTSERV_06;
            $config['database_type'] = $config['lua']['sql_type'];
            $config['database_host'] = $config['lua']['sql_host'];
            $config['database_port'] = $config['lua']['sql_port'];
            $config['database_user'] = $config['lua']['sql_user'];
            $config['database_password'] = $config['lua']['sql_pass'];
            $config['database_name'] = $config['lua']['sql_db'];
            $config['database_encryption'] = 'sha1';
            $config['database_salt'] = isset($config['lua']['passwordsalt']) ? $config['lua']['passwordsalt'] : $config['lua']['password_salt'];
        }
    }

    if(isset($config['lua']['useMD5Passwords']) && getBoolean($config['lua']['useMD5Passwords']))
        $config['database_encryption'] = 'sha1';

    if(!isset($config['database_log'])) {
        $config['database_log'] = false;
    }

    if(!isset($config['database_socket'])) {
        $config['database_socket'] = '';
    }

    try {
        $ots->connect(array(
                'host' => $config['database_host'],
                'user' => $config['database_user'],
                'password' => $config['database_password'],
                'database' => $config['database_name'],
                'log' => $config['database_log'],
                'socket' => @$config['database_socket'],
                'persistent' => @$config['database_persistent']
            )
        );

        $db = POT::getInstance()->getDBHandle();
    }
    catch(PDOException $error) {
        if(isset($cache) && $cache->enabled()) {
            $cache->delete('config_lua');
        }

        if(defined('MYAAC_INSTALL')) {
            return; // installer will take care of this
        }

        die('ERROR: Cannot connect to MySQL database.<br/>' .
            'Possible reasons:' .
            '<ul>' .
                '<li>MySQL is not configured propertly in <i>config.lua</i>.</li>' .
                '<li>MySQL server is not running.</li>' .
            '</ul>' . $error);

    }
?>
 

Rallelele

New Member
Joined
Jun 11, 2017
Messages
30
Reaction score
3
I've got the same problem. Using TFS 0.4 and MyACC. Creating account and character without problem on website, but trying to login on client gives me instantly "Invalid Password".. Got the 'sha1' in config.lua.
 
Top