/** * Copyright (c) 2025 Dominic Masters * * This software is released under the MIT License. * https://opensource.org/licenses/MIT */ #include "server.h" #include "assert/assert.h" #include "util/memory.h" #include "console/console.h" errorret_t serverClientAccept( serverclient_t *client, const serverclientaccept_t accept ) { memoryZero(client, sizeof(serverclient_t)); assertNotNull(accept.server, "Server is NULL"); assertNotMainThread("Server client accept must not be main thread"); client->server = accept.server; switch(accept.server->type) { case SERVER_TYPE_NETWORKED: return networkedServerClientAccept(client, accept); default: assertUnreachable("Unknown server type"); } } void serverClientClose(serverclient_t *client) { assertNotNull(client, "Client is NULL"); assertIsMainThread("Server client close must be on main thread"); if(client->state == SERVER_CLIENT_STATE_DISCONNECTED) return; switch(client->server->type) { case SERVER_TYPE_NETWORKED: networkedServerClientClose(client); break; default: assertUnreachable("Unknown server type"); } }