6#define _WINSOCK_DEPRECATED_NO_WARNINGS 1
7#ifndef WINSOCK2_IMPORTED
8#define WINSOCK2_IMPORTED
13#include <netinet/in.h>
14#include <sys/socket.h>
117 std::mutex internal_wait;
118 std::thread do_forwarding;
119 bool started =
false;
void broadcast_save_to_clients(sys::state &state, command::payload &c, uint8_t const *buffer, uint32_t length, sys::checksum_key const &k)
void write_network_save(sys::state &state)
void broadcast_to_clients(sys::state &state, command::payload &c)
void kick_player(sys::state &state, client_data &client)
constexpr short default_server_port
void finish(sys::state &state, bool notify_host)
void switch_player(sys::state &state, dcon::nation_id new_n, dcon::nation_id old_n)
void ban_player(sys::state &state, client_data &client)
void send_and_receive_commands(sys::state &state)
void init(sys::state &state)
struct sockaddr_storage address
std::vector< char > send_buffer
bool is_banned(sys::state &state) const
dcon::nation_id playing_as
size_t save_stream_offset
command::payload recv_buffer
client_handshake_data hshake_buffer
std::vector< char > early_send_buffer
sys::player_name nickname
uint32_t current_save_length
std::vector< char > send_buffer
std::vector< uint8_t > save_data
std::vector< struct in6_addr > v6_banlist
rigtorp::SPSCQueue< command::payload > outgoing_commands
std::vector< char > early_send_buffer
std::array< client_data, 128 > clients
ankerl::unordered_dense::map< int32_t, sys::player_name > map_of_player_names
struct sockaddr_storage address
sys::player_name nickname
std::unique_ptr< uint8_t[]> current_save_buffer
sys::checksum_key current_save_checksum
std::vector< struct in_addr > v4_banlist
std::atomic< bool > save_slock
command::payload recv_buffer
server_handshake_data s_hshake
dcon::nation_id assigned_nation
sys::checksum_key save_checksum
sys::checksum_key scenario_checksum