return strlen(s) + 1;
}
-struct NetworkBuffer *newNetworkBuffer()
+struct NetworkBuffer *newNetworkBuffer(void)
{
struct NetworkBuffer *new = checked_calloc(sizeof(struct NetworkBuffer));
int receiveNetworkBufferBytes(struct NetworkBuffer *nb, TCPsocket socket,
int num_bytes)
{
+ if (num_bytes > MAX_PACKET_SIZE)
+ {
+ Error(ERR_NETWORK_SERVER, "protocol error: invalid packet size %d",
+ num_bytes);
+
+ return -1;
+ }
+
if (nb->pos + num_bytes > nb->max_size)
increaseNetworkBuffer(nb, num_bytes);
SendNetworkBufferToAllButOne(write_buffer, player);
}
-void ExitNetworkServer(int exit_value)
+static void ExitNetworkServer(int exit_value)
{
Error(ERR_NETWORK_SERVER, "exiting network server");