1
This commit is contained in:
parent
ccacf371bf
commit
3641e6f4c6
@ -95,12 +95,17 @@ void KcpSession::DecodeUserPacket(char* buf, int& offset, unsigned int buflen)
|
|||||||
//2 + 2 + 4+ xx + \0 + xx
|
//2 + 2 + 4+ xx + \0 + xx
|
||||||
bool warning = false;
|
bool warning = false;
|
||||||
while (buflen - offset >= sizeof(f8::PackHead) + GetSecretKeyLen()) {
|
while (buflen - offset >= sizeof(f8::PackHead) + GetSecretKeyLen()) {
|
||||||
|
long long secret_key = KcpSession::ReadSecretKey(&buf[offset], buflen);
|
||||||
|
if (secret_key != secret_key_) {
|
||||||
|
warning = true;
|
||||||
|
offset++;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
f8::PackHead* p = (f8::PackHead*)&buf[offset + GetSecretKeyLen()];
|
f8::PackHead* p = (f8::PackHead*)&buf[offset + GetSecretKeyLen()];
|
||||||
if (p->magic_code == f8::MAGIC_CODE) {
|
if (p->magic_code == f8::MAGIC_CODE) {
|
||||||
if (buflen - offset < sizeof(f8::PackHead) + p->packlen + GetSecretKeyLen()) {
|
if (buflen - offset < sizeof(f8::PackHead) + p->packlen + GetSecretKeyLen()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//a8::XPrintf("Recv MsgId:%d\n", {p->msgid});
|
|
||||||
App::Instance()->AddSocketMsg(SF_Client,
|
App::Instance()->AddSocketMsg(SF_Client,
|
||||||
socket_handle_,
|
socket_handle_,
|
||||||
0,
|
0,
|
||||||
|
@ -128,6 +128,8 @@ void LongSessionMgr::ProcUdpPacket(a8::UdpPacket* pkt)
|
|||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
session->GetKcpSession()->OnRecvPacket(pkt);
|
||||||
|
#if 0
|
||||||
if (pkt->buf_len > IKCP_OVERHEAD + KcpSession::GetSecretKeyLen()) {
|
if (pkt->buf_len > IKCP_OVERHEAD + KcpSession::GetSecretKeyLen()) {
|
||||||
long long secret_key = KcpSession::ReadSecretKey(pkt->buf + IKCP_OVERHEAD, pkt->buf_len);
|
long long secret_key = KcpSession::ReadSecretKey(pkt->buf + IKCP_OVERHEAD, pkt->buf_len);
|
||||||
if (secret_key == session->GetKcpSession()->GetSecretKey()) {
|
if (secret_key == session->GetKcpSession()->GetSecretKey()) {
|
||||||
@ -149,6 +151,7 @@ void LongSessionMgr::ProcUdpPacket(a8::UdpPacket* pkt)
|
|||||||
pkt->buf_len
|
pkt->buf_len
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void LongSessionMgr::DelSession(int socket_handle)
|
void LongSessionMgr::DelSession(int socket_handle)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user