From 8d1391507cbb943ecf17a8e4097f524da2505e32 Mon Sep 17 00:00:00 2001 From: Reiner Herrmann Date: Sat, 15 Jan 2011 18:44:52 +0100 Subject: 1. network fix: send also packet length in every packet after packet type to be able to determine exact amount to recv 2. implement functions for sending/receiving dealt hands --- src/net.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/net.h') diff --git a/src/net.h b/src/net.h index 907412d..018a8e5 100644 --- a/src/net.h +++ b/src/net.h @@ -3,12 +3,21 @@ #include #include "player.h" +#include "hand.h" + +/* + * Packet format: + * first byte: msg_type_t + * second byte: packet length + * followed by payload + */ typedef enum { // Specify message type identifier here msg_type_hello = 0x0, - msg_type_start_game = 0x1 + msg_type_start_game = 0x1, + msg_type_deal_cards = 0x2 } msg_type_t; typedef struct @@ -23,11 +32,15 @@ typedef struct uint8_t payload[]; } msg_t; + +// Server side functions int server_start(const char* port); int* server_get_players(int serversock, const uint8_t count); void server_start_game(int* clients, const uint8_t clientcount, const struct player_list* players); +void server_deal_cards(int sock, const hand h); void* server_recv(int sock, uint8_t wanted); +// Client side functions int client_connect_server(const char* host, const char* port); void client_hello(int sock, const char* username); void* client_recv(int sock, uint8_t wanted); -- cgit v1.2.3