mirror of
https://github.com/EQEmu/Server.git
synced 2026-06-26 23:57:17 +00:00
Remove the two hello steps before handshake that are now obsolete out
This commit is contained in:
@@ -72,8 +72,12 @@ void EQ::Net::ServertalkClient::Connect()
|
|||||||
m_connection->OnRead(std::bind(&EQ::Net::ServertalkClient::ProcessData, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));
|
m_connection->OnRead(std::bind(&EQ::Net::ServertalkClient::ProcessData, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));
|
||||||
m_connection->Start();
|
m_connection->Start();
|
||||||
|
|
||||||
SendHello();
|
SendHandshake();
|
||||||
m_connecting = false;
|
m_connecting = false;
|
||||||
|
|
||||||
|
if (m_on_connect_cb) {
|
||||||
|
m_on_connect_cb(this);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,12 +87,6 @@ void EQ::Net::ServertalkClient::ProcessData(EQ::Net::TCPConnection *c, const uns
|
|||||||
ProcessReadBuffer();
|
ProcessReadBuffer();
|
||||||
}
|
}
|
||||||
|
|
||||||
void EQ::Net::ServertalkClient::SendHello()
|
|
||||||
{
|
|
||||||
EQ::Net::DynamicPacket p;
|
|
||||||
InternalSend(ServertalkClientHello, p);
|
|
||||||
}
|
|
||||||
|
|
||||||
void EQ::Net::ServertalkClient::InternalSend(ServertalkPacketType type, EQ::Net::Packet &p)
|
void EQ::Net::ServertalkClient::InternalSend(ServertalkPacketType type, EQ::Net::Packet &p)
|
||||||
{
|
{
|
||||||
if (!m_connection)
|
if (!m_connection)
|
||||||
@@ -133,9 +131,6 @@ void EQ::Net::ServertalkClient::ProcessReadBuffer()
|
|||||||
if (length == 0) {
|
if (length == 0) {
|
||||||
EQ::Net::DynamicPacket p;
|
EQ::Net::DynamicPacket p;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case ServertalkServerHello:
|
|
||||||
ProcessHello(p);
|
|
||||||
break;
|
|
||||||
case ServertalkMessage:
|
case ServertalkMessage:
|
||||||
ProcessMessage(p);
|
ProcessMessage(p);
|
||||||
break;
|
break;
|
||||||
@@ -144,9 +139,6 @@ void EQ::Net::ServertalkClient::ProcessReadBuffer()
|
|||||||
else {
|
else {
|
||||||
EQ::Net::StaticPacket p(&m_buffer[current + 5], length);
|
EQ::Net::StaticPacket p(&m_buffer[current + 5], length);
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case ServertalkServerHello:
|
|
||||||
ProcessHello(p);
|
|
||||||
break;
|
|
||||||
case ServertalkMessage:
|
case ServertalkMessage:
|
||||||
ProcessMessage(p);
|
ProcessMessage(p);
|
||||||
break;
|
break;
|
||||||
@@ -164,25 +156,6 @@ void EQ::Net::ServertalkClient::ProcessReadBuffer()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void EQ::Net::ServertalkClient::ProcessHello(EQ::Net::Packet &p)
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
SendHandshake();
|
|
||||||
|
|
||||||
if (m_on_connect_cb) {
|
|
||||||
m_on_connect_cb(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (std::exception &ex) {
|
|
||||||
LogError("Error parsing hello from server: {0}", ex.what());
|
|
||||||
m_connection->Disconnect();
|
|
||||||
|
|
||||||
if (m_on_connect_cb) {
|
|
||||||
m_on_connect_cb(nullptr);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void EQ::Net::ServertalkClient::ProcessMessage(EQ::Net::Packet &p)
|
void EQ::Net::ServertalkClient::ProcessMessage(EQ::Net::Packet &p)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -26,10 +26,8 @@ namespace EQ
|
|||||||
private:
|
private:
|
||||||
void Connect();
|
void Connect();
|
||||||
void ProcessData(EQ::Net::TCPConnection *c, const unsigned char *data, size_t length);
|
void ProcessData(EQ::Net::TCPConnection *c, const unsigned char *data, size_t length);
|
||||||
void SendHello();
|
|
||||||
void InternalSend(ServertalkPacketType type, EQ::Net::Packet &p);
|
void InternalSend(ServertalkPacketType type, EQ::Net::Packet &p);
|
||||||
void ProcessReadBuffer();
|
void ProcessReadBuffer();
|
||||||
void ProcessHello(EQ::Net::Packet &p);
|
|
||||||
void ProcessMessage(EQ::Net::Packet &p);
|
void ProcessMessage(EQ::Net::Packet &p);
|
||||||
void SendHandshake();
|
void SendHandshake();
|
||||||
|
|
||||||
|
|||||||
@@ -8,8 +8,6 @@ namespace EQ
|
|||||||
{
|
{
|
||||||
enum ServertalkPacketType
|
enum ServertalkPacketType
|
||||||
{
|
{
|
||||||
ServertalkClientHello = 1,
|
|
||||||
ServertalkServerHello,
|
|
||||||
ServertalkClientHandshake,
|
ServertalkClientHandshake,
|
||||||
ServertalkMessage,
|
ServertalkMessage,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -81,11 +81,6 @@ void EQ::Net::ServertalkServerConnection::ProcessReadBuffer()
|
|||||||
if (length == 0) {
|
if (length == 0) {
|
||||||
EQ::Net::DynamicPacket p;
|
EQ::Net::DynamicPacket p;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case ServertalkClientHello:
|
|
||||||
{
|
|
||||||
SendHello();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case ServertalkClientHandshake:
|
case ServertalkClientHandshake:
|
||||||
ProcessHandshake(p);
|
ProcessHandshake(p);
|
||||||
break;
|
break;
|
||||||
@@ -97,11 +92,6 @@ void EQ::Net::ServertalkServerConnection::ProcessReadBuffer()
|
|||||||
else {
|
else {
|
||||||
EQ::Net::StaticPacket p(&m_buffer[current + 5], length);
|
EQ::Net::StaticPacket p(&m_buffer[current + 5], length);
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case ServertalkClientHello:
|
|
||||||
{
|
|
||||||
SendHello();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case ServertalkClientHandshake:
|
case ServertalkClientHandshake:
|
||||||
ProcessHandshake(p);
|
ProcessHandshake(p);
|
||||||
break;
|
break;
|
||||||
@@ -127,14 +117,6 @@ void EQ::Net::ServertalkServerConnection::OnDisconnect(TCPConnection *c)
|
|||||||
m_parent->ConnectionDisconnected(this);
|
m_parent->ConnectionDisconnected(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EQ::Net::ServertalkServerConnection::SendHello()
|
|
||||||
{
|
|
||||||
EQ::Net::DynamicPacket hello;
|
|
||||||
hello.PutInt8(0, 0);
|
|
||||||
|
|
||||||
InternalSend(ServertalkServerHello, hello);
|
|
||||||
}
|
|
||||||
|
|
||||||
void EQ::Net::ServertalkServerConnection::InternalSend(ServertalkPacketType type, EQ::Net::Packet &p)
|
void EQ::Net::ServertalkServerConnection::InternalSend(ServertalkPacketType type, EQ::Net::Packet &p)
|
||||||
{
|
{
|
||||||
if (!m_connection)
|
if (!m_connection)
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ namespace EQ
|
|||||||
void OnRead(TCPConnection* c, const unsigned char* data, size_t sz);
|
void OnRead(TCPConnection* c, const unsigned char* data, size_t sz);
|
||||||
void ProcessReadBuffer();
|
void ProcessReadBuffer();
|
||||||
void OnDisconnect(TCPConnection* c);
|
void OnDisconnect(TCPConnection* c);
|
||||||
void SendHello();
|
|
||||||
void InternalSend(ServertalkPacketType type, EQ::Net::Packet &p);
|
void InternalSend(ServertalkPacketType type, EQ::Net::Packet &p);
|
||||||
void ProcessHandshake(EQ::Net::Packet &p);
|
void ProcessHandshake(EQ::Net::Packet &p);
|
||||||
void ProcessMessage(EQ::Net::Packet &p);
|
void ProcessMessage(EQ::Net::Packet &p);
|
||||||
|
|||||||
Reference in New Issue
Block a user