This commit is contained in:
parent
d744135e02
commit
9eababd72b
@ -127,7 +127,6 @@ void PseuInstance::Run(void)
|
|||||||
if(_rsession->IsValid()) // TODO: need better check for IsValid(), it must check also if it could connect
|
if(_rsession->IsValid()) // TODO: need better check for IsValid(), it must check also if it could connect
|
||||||
{
|
{
|
||||||
_sh.Add(_rsession);
|
_sh.Add(_rsession);
|
||||||
_rsession->SendLogonChallenge();
|
|
||||||
_sh.Select(1,0);
|
_sh.Select(1,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -84,7 +84,7 @@ RealmSocket::~RealmSocket()
|
|||||||
|
|
||||||
bool RealmSocket::IsValid(void)
|
bool RealmSocket::IsValid(void)
|
||||||
{
|
{
|
||||||
return _valid;
|
return _valid && Ready();
|
||||||
}
|
}
|
||||||
|
|
||||||
void RealmSocket::SetHost(std::string h)
|
void RealmSocket::SetHost(std::string h)
|
||||||
@ -112,7 +112,7 @@ void RealmSocket::Start(void)
|
|||||||
// _socket.SetHost(_host);
|
// _socket.SetHost(_host);
|
||||||
// _socket.SetPort(_port);
|
// _socket.SetPort(_port);
|
||||||
|
|
||||||
Open(_rhost,_rport);
|
bool result=Open(_rhost,_rport);
|
||||||
//...
|
//...
|
||||||
_valid=true;
|
_valid=true;
|
||||||
}
|
}
|
||||||
@ -129,7 +129,7 @@ void RealmSocket::_HandleRealmList(void)
|
|||||||
{
|
{
|
||||||
SRealmHeader hd;
|
SRealmHeader hd;
|
||||||
std::string realmAddr;
|
std::string realmAddr;
|
||||||
ibuf.Read((char*)&hd, sizeof(SRealmHeader)); // TODO: FIX THIS ITS NOT CORRECT!!!!!
|
ibuf.Read((char*)&hd, sizeof(SRealmHeader));
|
||||||
|
|
||||||
|
|
||||||
////DEBUG1(printf("Realms in List: %d\n",count););
|
////DEBUG1(printf("Realms in List: %d\n",count););
|
||||||
@ -179,6 +179,7 @@ void RealmSocket::_HandleRealmList(void)
|
|||||||
|
|
||||||
void RealmSocket::OnRead(void)
|
void RealmSocket::OnRead(void)
|
||||||
{
|
{
|
||||||
|
printf("RealmSocket::OnRead() %u bytes\n",ibuf.GetLength());
|
||||||
TcpSocket::OnRead();
|
TcpSocket::OnRead();
|
||||||
if(!ibuf.GetLength())
|
if(!ibuf.GetLength())
|
||||||
return;
|
return;
|
||||||
@ -277,6 +278,11 @@ void RealmSocket::OnRead(void)
|
|||||||
|
|
||||||
void RealmSocket::SendLogonChallenge(void)
|
void RealmSocket::SendLogonChallenge(void)
|
||||||
{
|
{
|
||||||
|
if(!this->Ready())
|
||||||
|
{
|
||||||
|
printf("Error sending AUTH_LOGON_CHALLENGE, port is not ready!\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
std::string acc = stringToUpper(GetInstance()->GetConf()->accname);
|
std::string acc = stringToUpper(GetInstance()->GetConf()->accname);
|
||||||
ByteBuffer packet;
|
ByteBuffer packet;
|
||||||
packet << (uint8)AUTH_LOGON_CHALLENGE;
|
packet << (uint8)AUTH_LOGON_CHALLENGE;
|
||||||
@ -293,7 +299,7 @@ void RealmSocket::SendLogonChallenge(void)
|
|||||||
packet << (uint8)acc.length(); // length of acc name without \0
|
packet << (uint8)acc.length(); // length of acc name without \0
|
||||||
packet.append(acc.c_str(),acc.length()); // append accname, skip \0
|
packet.append(acc.c_str(),acc.length()); // append accname, skip \0
|
||||||
|
|
||||||
this->SendBuf((char*)packet.contents(),packet.size());
|
SendBuf((char*)packet.contents(),packet.size());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -469,5 +475,6 @@ void RealmSocket::_HandleLogonProof(void)
|
|||||||
void RealmSocket::OnConnect()
|
void RealmSocket::OnConnect()
|
||||||
{
|
{
|
||||||
printf("DEBUG: RealmSocket connected!\n");
|
printf("DEBUG: RealmSocket connected!\n");
|
||||||
|
SendLogonChallenge();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user