Jump to content

Recommended Posts

Hi, i use http://freakgamers.org/threads/source-client-tools-server.6551/  this source  and I can not login in account

Syerr

 

Jun  4 12:54:06 :: Handshake: lower than zero -20
Jun  4 12:54:06 :: Handshake: client_time 0 server_time 382967
Jun  4 12:54:06 :: AUTH_PHASE 0x28cdfa80
Jun  4 12:54:07 :: InputAuth::Login : admin2(6) desc 0x28cdfa80
Jun  4 12:54:07 :: SetLoginKey 365870582
Jun  4 12:54:07 :: InputAuth::Login : key 365870582:0xbfbfbf51 login Ô$]@űÍ(*]”úÍ(
Jun  4 12:54:07 :: QID_AUTH_LOGIN: START 365870582 0x28cdfa80
Jun  4 12:54:07 ::    NOID

db.cpp Detail

void DBManager::AnalyzeReturnQuery (SQLMsg* pMsg)
{
	auto qi = (CReturnQueryInfo*) pMsg->pvUserData;
	switch (qi->iType)
	{

		case QID_AUTH_LOGIN:
		{
			auto pinfo = (TPacketCGLogin3*) qi->pvData;
			auto d = DESC_MANAGER::instance().FindByLoginKey (qi->dwIdent);

			if (!d)
			{
				M2_DELETE (pinfo);
				break;
			}

			d->SetLogin (pinfo->login);

			sys_log (0, "QID_AUTH_LOGIN: START %u %p", qi->dwIdent, get_pointer (d));

			if (pMsg->Get()->uiNumRows == 0)
			{
				sys_log (0, "   NOID");
				LoginFailure (d, "NOID");
				M2_DELETE (pinfo);
			}
			else
			{
				auto row = mysql_fetch_row (pMsg->Get()->pSQLResult);
				int  col = 0;
				char szDwID[26] = {0};
				char szEncrytPassword[45] = {0};
				char szPassword[45] = {0};
				char szSocialID[SOCIAL_ID_MAX_LEN + 1] = {0};
				char szStatus[ACCOUNT_STATUS_MAX_LEN + 1] = {0};

				DWORD dwID = 0;

				if (!row[col])
				{
					sys_err ("error column %d", col);
					M2_DELETE (pinfo);
					break;
				}

				strlcpy (szDwID, row[col++], sizeof (szDwID));
				str_to_number (dwID, szDwID);

				if (!row[col])
				{
					sys_err ("error column %d", col);
					M2_DELETE (pinfo);
					break;
				}

				strlcpy (szEncrytPassword, row[col++], sizeof (szEncrytPassword));
				if (!row[col])
				{
					sys_err ("error column %d", col);
					M2_DELETE (pinfo);
					break;
				}

				strlcpy (szPassword, row[col++], sizeof (szPassword));

				if (!row[col])
				{
					sys_err ("error column %d", col);
					M2_DELETE (pinfo);
					break;
				}

				strlcpy (szSocialID, row[col++], sizeof (szSocialID));

				if (!row[col])
				{
					sys_err ("error column %d", col);
					M2_DELETE (pinfo);
					break;
				}

				strlcpy (szStatus, row[col++], sizeof (szStatus));

				BYTE bNotAvail = 0;
				str_to_number (bNotAvail, row[col++]);

				int aiPremiumTimes[PREMIUM_MAX_NUM];
				memset (&aiPremiumTimes, 0, sizeof (aiPremiumTimes));

				char szCreateDate[256] = "00000000";

				str_to_number (aiPremiumTimes[PREMIUM_EXP], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_ITEM], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_SAFEBOX], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_AUTOLOOT], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_FISH_MIND], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_MARRIAGE_FAST], row[col++]);
				str_to_number (aiPremiumTimes[PREMIUM_GOLD], row[col++]);

				long retValue = 0;
				str_to_number (retValue, row[col]);

				time_t create_time = retValue;
				struct tm* tm1;
				tm1 = localtime (&create_time);
				strftime (szCreateDate, 255, "%Y%m%d", tm1);

				sys_log (0, "Create_Time %d %s", retValue, szCreateDate);
				sys_log (0, "Block Time %d ", strncmp (szCreateDate, g_stBlockDate.c_str(), 8));



				int nPasswordDiff = strcmp (szEncrytPassword, szPassword);
				if (nPasswordDiff)
				{
					LoginFailure (d, "WRONGPWD");
					sys_log (0, "   WRONGPWD");
					M2_DELETE (pinfo);
				}
				else if (bNotAvail)
				{
					LoginFailure (d, "NOTAVAIL");
					sys_log (0, "   NOTAVAIL");
					M2_DELETE (pinfo);
				}
				else if (DESC_MANAGER::instance().FindByLoginName (pinfo->login))
				{
					LoginFailure (d, "ALREADY");
					sys_log (0, "   ALREADY");
					M2_DELETE (pinfo);
				}
				else if (strcmp (szStatus, "OK"))
				{
					LoginFailure (d, szStatus);
					sys_log (0, "   STATUS: %s", szStatus);
					M2_DELETE (pinfo);
				}
				else
				{
					if (strncmp (szCreateDate, g_stBlockDate.c_str(), 8) >= 0)
					{
						LoginFailure (d, "BLKLOGIN");
						sys_log (0, "   BLKLOGIN");
						M2_DELETE (pinfo);
						break;
					}

					char szQuery[54 + 1];
					snprintf (szQuery, sizeof (szQuery), "UPDATE account SET last_play=NOW() WHERE id=%u", dwID);
					std::unique_ptr<SQLMsg> msg (DBManager::instance().DirectQuery (szQuery));

					auto &r = d->GetAccountTable();

					r.id = dwID;
					trim_and_lower (pinfo->login, r.login, sizeof (r.login));
					strlcpy (r.passwd, pinfo->passwd, sizeof (r.passwd));
					strlcpy (r.social_id, szSocialID, sizeof (r.social_id));
					DESC_MANAGER::instance().ConnectAccount (r.login, d);

					LoginPrepare (d, pinfo->adwClientKey, aiPremiumTimes);
					M2_DELETE (pinfo);
					break;

				}
			}
		}
		break;

what might be the problem ?
 

Link to comment
Share on other sites

  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Days

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.