about summary refs log tree commit diff
path: root/masterserver/src/network.cpp
blob: 7d557cdff6faefd596c94b1e1f6d6c3dd7b5a1ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <cstring>
#include "common.h"
#include "network.h"

char *WriteInt32(char *buffer, int32 value)
{
	buffer[0] = value >> 24;
	buffer[1] = value >> 16;
	buffer[2] = value >> 8;
	buffer[3] = value;

	return buffer + sizeof(int32);
}

char *WriteFixedString(char *buffer, const char *string, int strlen)
{
	memcpy(buffer, string, strlen);

	return buffer + strlen;
}



char *ReadInt32(char *buffer, int32 *value)
{
	*value = buffer[0] << 24;
	*value |= buffer[1] << 16;
	*value |= buffer[2] << 8;
	*value |= buffer[3];

	return buffer + sizeof(int32);
}

char *ReadFixedString(char *buffer, char *string, int strlen)
{
	memcpy(string, buffer, strlen);

	return buffer + strlen;
}