PokerUnicorn
Loading...
Searching...
No Matches
server.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <openssl/ssl.h>
#include <libpq-fe.h>
#include "ref.h"
#include "sugar.h"
#include "string.h"
#include "account.h"
#include "card.h"
#include "poker.h"
#include "websocket.h"
#include "eventloop.h"

Go to the source code of this file.

Data Structures

struct  pkrsrv_server_packet_enter_t
 
struct  pkrsrv_server_packet_leave_t
 
struct  pkrsrv_server_packet_join_t
 
struct  pkrsrv_server_packet_unjoin_t
 
struct  pkrsrv_server_packet_poker_action_t
 
struct  pkrsrv_server_packet_get_tables_t
 
struct  pkrsrv_server_packet_get_sessions_t
 
struct  pkrsrv_server_packet_json_t
 
struct  on_client_connected_params_t
 
struct  on_client_disconnected_params_t
 
struct  on_client_meowed_params_t
 
struct  on_client_enter_params_t
 
struct  on_client_leave_params_t
 
struct  on_client_join_params_t
 
struct  on_client_unjoin_params_t
 
struct  on_client_action_params_t
 
struct  on_client_get_tables_params_t
 
struct  on_client_get_sessions_params_t
 
struct  on_client_json_params_t
 
struct  pkrsrv_server_t
 
struct  pkrsrv_server_clients_t
 
struct  pkrsrv_server_client_t
 
struct  pkrsrv_server_new_params_t
 
struct  pkrsrv_server_send_enter_res_params_t
 
struct  pkrsrv_server_send_leave_res_params_t
 
struct  pkrsrv_server_send_join_res_params_t
 
struct  pkrsrv_server_send_unjoin_res_params_t
 
struct  pkrsrv_server_send_poker_info_params_t
 
struct  pkrsrv_server_send_poker_state_params_t
 
struct  pkrsrv_server_send_poker_action_reflection_params_t
 
struct  pkrsrv_server_send_poker_end_params_t
 
struct  pkrsrv_server_send_poker_restarted_params_t
 
struct  pkrsrv_server_send_unjoined_params_t
 
struct  pkrsrv_server_send_tables_params_t
 
struct  pkrsrv_server_send_sessions_params_t
 
struct  pkrsrv_server_send_server_info_params_t
 
struct  pkrsrv_server_send_json_params_t
 

Typedefs

typedef struct pkrsrv_server_packet_frame_header pkrsrv_server_packet_frame_header_t
 
typedef struct pkrsrv_server_packet_frame_login pkrsrv_server_packet_frame_login_t
 
typedef struct pkrsrv_server_packet_frame_login_res pkrsrv_server_packet_frame_login_res_t
 
typedef struct pkrsrv_server_packet_frame_login_res_account pkrsrv_server_packet_frame_login_res_account_t
 
typedef struct pkrsrv_server_packet_frame_signup pkrsrv_server_packet_frame_signup_t
 
typedef struct pkrsrv_server_packet_frame_signup_res pkrsrv_server_packet_frame_signup_res_t
 
typedef struct pkrsrv_server_packet_frame_signup_res_account pkrsrv_server_packet_frame_signup_res_account_t
 
typedef struct pkrsrv_server_packet_frame_account pkrsrv_server_packet_frame_account_t
 
typedef struct pkrsrv_server_packet_frame_enter pkrsrv_server_packet_frame_enter_t
 
typedef struct pkrsrv_server_packet_frame_enter_res pkrsrv_server_packet_frame_enter_res_t
 
typedef struct pkrsrv_server_packet_frame_leave pkrsrv_server_packet_frame_leave_t
 
typedef struct pkrsrv_server_packet_frame_leave_res pkrsrv_server_packet_frame_leave_res_t
 
typedef struct pkrsrv_server_packet_frame_join pkrsrv_server_packet_frame_join_t
 
typedef struct pkrsrv_server_packet_frame_join_res pkrsrv_server_packet_frame_join_res_t
 
typedef struct pkrsrv_server_packet_frame_unjoin pkrsrv_server_packet_frame_unjoin_t
 
typedef struct pkrsrv_server_packet_frame_unjoin_res pkrsrv_server_packet_frame_unjoin_res_t
 
typedef struct pkrsrv_server_packet_frame_poker_info pkrsrv_server_packet_frame_poker_info_t
 
typedef struct pkrsrv_server_packet_frame_poker_info_player pkrsrv_server_packet_frame_poker_info_player_t
 
typedef struct pkrsrv_server_packet_frame_poker_state pkrsrv_server_packet_frame_poker_state_t
 
typedef struct pkrsrv_server_packet_frame_poker_state_player pkrsrv_server_packet_frame_poker_state_player_t
 
typedef struct pkrsrv_server_packet_frame_poker_action pkrsrv_server_packet_frame_poker_action_t
 
typedef struct pkrsrv_server_packet_frame_poker_action_reflection pkrsrv_server_packet_frame_poker_action_reflection_t
 
typedef struct pkrsrv_server_packet_frame_poker_end pkrsrv_server_packet_frame_poker_end_t
 
typedef struct pkrsrv_server_packet_frame_poker_end_score pkrsrv_server_packet_frame_poker_end_score_t
 
typedef struct pkrsrv_server_packet_frame_poker_restarted pkrsrv_server_packet_frame_poker_restarted_t
 
typedef struct pkrsrv_server_packet_frame_unjoined pkrsrv_server_packet_frame_unjoined_t
 
typedef struct pkrsrv_server_packet_frame_get_tables pkrsrv_server_packet_frame_get_tables_t
 
typedef struct pkrsrv_server_packet_frame_tables pkrsrv_server_packet_frame_tables_t
 
typedef struct pkrsrv_server_packet_frame_get_sessions pkrsrv_server_packet_frame_get_sessions_t
 
typedef struct pkrsrv_server_packet_frame_sessions pkrsrv_server_packet_frame_sessions_t
 
typedef struct pkrsrv_server_packet_frame_table pkrsrv_server_packet_frame_table_t
 
typedef struct pkrsrv_server_packet_frame_update_account pkrsrv_server_packet_frame_update_account_t
 
typedef struct pkrsrv_server_packet_frame_update_account_res pkrsrv_server_packet_frame_update_account_res_t
 
typedef struct pkrsrv_server_packet_frame_server_info pkrsrv_server_packet_frame_server_info_t
 
typedef uint32_t pkrsrv_server_opcode_t
 
typedef void(* opcode_handler_t) (pkrsrv_server_client_t *client, pkrsrv_server_packet_frame_header_t req_header)
 

Enumerations

enum  PKRSRV_SERVER_OPCODE {
  PKRSRV_SERVER_OPCODE_NOP = 0 , PKRSRV_SERVER_OPCODE_MEOW , PKRSRV_SERVER_OPCODE_PING , PKRSRV_SERVER_OPCODE_PONG ,
  PKRSRV_SERVER_OPCODE_LOGIN , PKRSRV_SERVER_OPCODE_LOGIN_RES , PKRSRV_SERVER_OPCODE_SIGNUP , PKRSRV_SERVER_OPCODE_SIGNUP_RES ,
  PKRSRV_SERVER_OPCODE_GET_ACCOUNT , PKRSRV_SERVER_OPCODE_ACCOUNT , PKRSRV_SERVER_OPCODE_ENTER , PKRSRV_SERVER_OPCODE_ENTER_RES ,
  PKRSRV_SERVER_OPCODE_LEAVE , PKRSRV_SERVER_OPCODE_LEAVE_RES , PKRSRV_SERVER_OPCODE_JOIN , PKRSRV_SERVER_OPCODE_JOIN_RES ,
  PKRSRV_SERVER_OPCODE_UNJOIN , PKRSRV_SERVER_OPCODE_UNJOIN_RES , PKRSRV_SERVER_OPCODE_POKER_INFO , PKRSRV_SERVER_OPCODE_POKER_STATE ,
  PKRSRV_SERVER_OPCODE_POKER_ACTION , PKRSRV_SERVER_OPCODE_POKER_ACTION_REFLECTION , PKRSRV_SERVER_OPCODE_POKER_END , PKRSRV_SERVER_OPCODE_POKER_RESTARTED ,
  PKRSRV_SERVER_OPCODE_JSON , PKRSRV_SERVER_OPCODE_UNJOINED , PKRSRV_SERVER_OPCODE_GET_TABLES , PKRSRV_SERVER_OPCODE_TABLES ,
  PKRSRV_SERVER_OPCODE_GET_SESSIONS , PKRSRV_SERVER_OPCODE_SESSIONS , PKRSRV_SERVER_OPCODE_UPDATE_ACCOUNT , PKRSRV_SERVER_OPCODE_UPDATE_ACCOUNT_RES ,
  PKRSRV_SERVER_OPCODE_SERVER_INFO , PKRSRV_SERVER_OPCODE_OVER_CAPACITY , PKRSRV_SERVER_OPCODE_END
}
 
enum  pkrsrv_server_packet_signup_res_status_t { PKRSRV_SERVER_PACKET_SIGNUP_RES_STATUS_OK = 0 , PKRSRV_SERVER_PACKET_SIGNUP_RES_STATUS_ERROR , PKRSRV_SERVER_PACKET_SIGNUP_RES_STATUS_ALREADY_EXISTS }
 

Functions

struct __attribute__ ((__packed__)) pkrsrv_server_packet_frame_header
 
int pkrsrv_server_ssl_read (SSL *ssl, void *buffer, ssize_t length)
 
int pkrsrv_server_ssl_write (SSL *ssl, void *buffer, ssize_t length)
 
int pkrsrv_server_net_read (pkrsrv_server_client_t *client, void *buffer, ssize_t length)
 
int pkrsrv_server_net_write (pkrsrv_server_client_t *client, void *buffer, ssize_t length)
 
pkrsrv_server_clients_t * pkrsrv_server_clients_new ()
 
void pkrsrv_server_add_client (pkrsrv_server_t *server, pkrsrv_server_client_t *client)
 
void pkrsrv_server_add_client__ts (pkrsrv_server_t *server, pkrsrv_server_client_t *client)
 
void pkrsrv_server_remove_client (pkrsrv_server_t *server, pkrsrv_server_client_t *client)
 
void pkrsrv_server_remove_client__ts (pkrsrv_server_t *server, pkrsrv_server_client_t *client)
 
pkrsrv_server_client_t * pkrsrv_server_client_new (pkrsrv_server_t *server)
 
void pkrsrv_server_client_free (pkrsrv_server_client_t *client)
 
bool pkrsrv_server_send_binary (pkrsrv_server_client_t *client, uint8_t *data, size_t size)
 
bool pkrsrv_server_send_over_capacity (pkrsrv_server_client_t *client)
 
bool pkrsrv_server_send_pong (pkrsrv_server_client_t *client)
 
bool pkrsrv_server_send_login_res (pkrsrv_server_send_login_res_params_t params)
 
bool pkrsrv_server_send_signup_res (pkrsrv_server_send_signup_res_params_t params)
 
bool pkrsrv_server_send_account (pkrsrv_server_send_account_params_t params)
 
bool pkrsrv_server_send_enter_res (pkrsrv_server_send_enter_res_params_t params)
 
bool pkrsrv_server_send_leave_res (pkrsrv_server_send_leave_res_params_t params)
 
bool pkrsrv_server_send_join_res (pkrsrv_server_send_join_res_params_t params)
 
bool pkrsrv_server_send_unjoin_res (pkrsrv_server_send_unjoin_res_params_t params)
 
bool pkrsrv_server_send_poker_info (pkrsrv_server_send_poker_info_params_t params)
 
bool pkrsrv_server_send_poker_info_player (pkrsrv_server_client_t *p_client, pkrsrv_poker_player_t *p_player)
 
bool pkrsrv_server_send_poker_state (pkrsrv_server_send_poker_state_params_t params)
 
bool pkrsrv_server_send_poker_state_player (pkrsrv_server_client_t *p_client, pkrsrv_poker_player_t *p_player)
 
bool pkrsrv_server_send_poker_action_reflection (pkrsrv_server_send_poker_action_reflection_params_t params)
 
bool pkrsrv_server_send_poker_end (pkrsrv_server_send_poker_end_params_t params)
 
bool pkrsrv_server_send_poker_restarted (pkrsrv_server_send_poker_restarted_params_t params)
 
bool pkrsrv_server_send_unjoined (pkrsrv_server_send_unjoined_params_t params)
 
bool pkrsrv_server_send_tables (pkrsrv_server_send_tables_params_t params)
 
bool pkrsrv_server_send_sessions (pkrsrv_server_send_sessions_params_t params)
 
bool pkrsrv_server_send_update_account_res (pkrsrv_server_send_update_account_res_params_t params)
 
bool pkrsrv_server_send_server_info (pkrsrv_server_send_server_info_params_t params)
 
bool pkrsrv_server_send_json (pkrsrv_server_send_json_params_t params)