This commit is contained in:
azw 2023-04-24 07:23:58 +00:00
parent 00f7a3663b
commit eecf02b2a4

View File

@ -85,10 +85,10 @@ void KcpSession::DecodeUserPacket(char* buf, int& offset, unsigned int buflen)
//packagelen + msgid + magiccode + msgbody
//2 + 2 + 4+ xx + \0 + xx
bool warning = false;
while (buflen - offset >= sizeof(f8::PackHead)) {
f8::PackHead* p = (f8::PackHead*)&buf[offset];
while (buflen - offset >= sizeof(f8::PackHead) + GetSecretKeyLen()) {
f8::PackHead* p = (f8::PackHead*)&buf[offset + GetSecretKeyLen()];
if (p->magic_code == f8::MAGIC_CODE) {
if (buflen - offset < sizeof(f8::PackHead) + p->packlen) {
if (buflen - offset < sizeof(f8::PackHead) + p->packlen + GetSecretKeyLen()) {
break;
}
//a8::XPrintf("Recv MsgId:%d\n", {p->msgid});
@ -98,7 +98,7 @@ void KcpSession::DecodeUserPacket(char* buf, int& offset, unsigned int buflen)
//saddr,
p->msgid,
p->seqid,
&buf[offset + sizeof(f8::PackHead)],
&buf[offset + sizeof(f8::PackHead) + GetSecretKeyLen()],
p->packlen);
offset += sizeof(f8::PackHead) + p->packlen;
} else {