skynet message length limit 16M

This commit is contained in:
云风
2013-09-21 15:19:56 +08:00
parent c972b647bd
commit 1676713b09

View File

@@ -189,8 +189,16 @@ dispatch_message(struct gate *g, struct connection *c, int id, void * data, int
if (size < 0) {
return;
} else if (size > 0) {
_forward(g, c, size);
databuffer_reset(&c->buffer);
if (size >= 0x1000000) {
struct skynet_context * ctx = g->ctx;
databuffer_clear(&c->buffer,&g->mp);
skynet_socket_close(ctx, id);
skynet_error(ctx, "Recv socket message > 16M");
return;
} else {
_forward(g, c, size);
databuffer_reset(&c->buffer);
}
}
}
}