Compare commits
No commits in common. "master" and "game1008_banshu" have entirely different histories.
master
...
game1008_b
@ -12,8 +12,6 @@
|
|||||||
#include "ss_proto.pb.h"
|
#include "ss_proto.pb.h"
|
||||||
#include "handlermgr.h"
|
#include "handlermgr.h"
|
||||||
|
|
||||||
const int PACK_MAX = 1024 * 1024 * 10;
|
|
||||||
|
|
||||||
class GSClientSession: public a8::MixedSession
|
class GSClientSession: public a8::MixedSession
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -26,10 +24,10 @@ public:
|
|||||||
is_activite = true;
|
is_activite = true;
|
||||||
#endif
|
#endif
|
||||||
bool warning = false;
|
bool warning = false;
|
||||||
while (buflen - offset >= sizeof(f8::BigPackHead)) {
|
while (buflen - offset >= sizeof(f8::PackHead)) {
|
||||||
f8::BigPackHead* p = (f8::BigPackHead*)&buf[offset];
|
f8::PackHead* p = (f8::PackHead*)&buf[offset];
|
||||||
if (p->magic_code == f8::MAGIC_CODE) {
|
if (p->magic_code == f8::MAGIC_CODE) {
|
||||||
if (buflen - offset < sizeof(f8::BigPackHead) + p->packlen) {
|
if (buflen - offset < sizeof(f8::PackHead) + p->packlen) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
App::Instance()->AddSocketMsg(SF_GameServer,
|
App::Instance()->AddSocketMsg(SF_GameServer,
|
||||||
@ -37,9 +35,9 @@ public:
|
|||||||
saddr,
|
saddr,
|
||||||
p->msgid,
|
p->msgid,
|
||||||
p->seqid,
|
p->seqid,
|
||||||
&buf[offset + sizeof(f8::BigPackHead)],
|
&buf[offset + sizeof(f8::PackHead)],
|
||||||
p->packlen);
|
p->packlen);
|
||||||
offset += sizeof(f8::BigPackHead) + p->packlen;
|
offset += sizeof(f8::PackHead) + p->packlen;
|
||||||
} else {
|
} else {
|
||||||
warning = true;
|
warning = true;
|
||||||
offset++;
|
offset++;
|
||||||
@ -77,7 +75,6 @@ public:
|
|||||||
static void CreateGameClientSocket(a8::TcpSession **p)
|
static void CreateGameClientSocket(a8::TcpSession **p)
|
||||||
{
|
{
|
||||||
*p = new GSClientSession();
|
*p = new GSClientSession();
|
||||||
(*p)->SetMaxPacketLen(PACK_MAX);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void GSListeneron_error(a8::TcpListener*, int type, int errorid)
|
static void GSListeneron_error(a8::TcpListener*, int type, int errorid)
|
||||||
@ -104,18 +101,18 @@ void GSListener::UnInit()
|
|||||||
|
|
||||||
void GSListener::ForwardTargetConnMsg(f8::MsgHdr& hdr)
|
void GSListener::ForwardTargetConnMsg(f8::MsgHdr& hdr)
|
||||||
{
|
{
|
||||||
char* buff = (char*)malloc(sizeof(f8::BigPackHead) + hdr.buflen);
|
char* buff = (char*)malloc(sizeof(f8::PackHead) + hdr.buflen);
|
||||||
f8::BigPackHead* head = (f8::BigPackHead*)buff;
|
f8::PackHead* head = (f8::PackHead*)buff;
|
||||||
head->packlen = hdr.buflen;
|
head->packlen = hdr.buflen;
|
||||||
head->msgid = hdr.msgid;
|
head->msgid = hdr.msgid;
|
||||||
head->seqid = hdr.seqid;
|
head->seqid = hdr.seqid;
|
||||||
head->magic_code = f8::MAGIC_CODE;
|
head->magic_code = f8::MAGIC_CODE;
|
||||||
head->rpc_error_code = 0;
|
head->rpc_error_code = 0;
|
||||||
if (hdr.buflen > 0) {
|
if (hdr.buflen > 0) {
|
||||||
memmove(buff + sizeof(f8::BigPackHead), hdr.buf, hdr.buflen);
|
memmove(buff + sizeof(f8::PackHead), hdr.buf, hdr.buflen);
|
||||||
}
|
}
|
||||||
|
|
||||||
tcp_listener_->SendClientMsg(hdr.socket_handle, buff, sizeof(f8::BigPackHead) + head->packlen);
|
tcp_listener_->SendClientMsg(hdr.socket_handle, buff, sizeof(f8::PackHead) + head->packlen);
|
||||||
free(buff);
|
free(buff);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ class GSListener : public a8::Singleton<GSListener>
|
|||||||
void SendMsg(unsigned short socket_handle, T& msg)
|
void SendMsg(unsigned short socket_handle, T& msg)
|
||||||
{
|
{
|
||||||
static int msgid = ::f8::Net_GetMessageId(msg);
|
static int msgid = ::f8::Net_GetMessageId(msg);
|
||||||
f8::Net_SendBigMsg(tcp_listener_, socket_handle, 0, msgid, msg);
|
f8::Net_SendMsg(tcp_listener_, socket_handle, 0, msgid, msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ForwardTargetConnMsg(f8::MsgHdr& hdr);
|
void ForwardTargetConnMsg(f8::MsgHdr& hdr);
|
||||||
|
2
third_party/a8engine
vendored
2
third_party/a8engine
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 6e5c873aecdd5464324818307237bca83860e16a
|
Subproject commit bc1e1e002cdfbbac07abdf14151afb0bbd8025a8
|
2
third_party/framework
vendored
2
third_party/framework
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 628e40d32269414703ba6a74b534593611aa5be8
|
Subproject commit 18133846b6672634219c080064b7a24720d17588
|
Loading…
x
Reference in New Issue
Block a user