summaryrefslogtreecommitdiff
path: root/src/net/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/client.c')
-rw-r--r--src/net/client.c34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/net/client.c b/src/net/client.c
index 46b4ec3..bcbaf9a 100644
--- a/src/net/client.c
+++ b/src/net/client.c
@@ -62,23 +62,23 @@ int client_connect_server(const char* host, const char* port)
return sock;
}
-bool client_parse_player_list(const uint8_t* payload, const uint8_t data_len)
+bool client_parse_player_list(const msg_t *m)
{
- assert(payload != NULL);
+ assert(m != NULL);
data_store* ds = datamodel();
uint32_t pos = 0;
- ds->players.count = payload[pos++];
+ ds->players.count = m->payload[pos++];
// read usernames from buffer
for(int i=0; i<ds->players.count; i++)
{
uint8_t namelen;
- ds->players.players[i].player_id = payload[pos++];
- namelen = payload[pos++];
+ ds->players.players[i].player_id = m->payload[pos++];
+ namelen = m->payload[pos++];
assert(namelen <= MAX_PLAYER_NAME_LENGTH);
- strncpy(ds->players.players[i].player_name, (const char*) payload+pos, namelen);
+ strncpy(ds->players.players[i].player_name, (const char*) m->payload+pos, namelen);
ds->players.players[i].player_name[namelen] = '\0';
pos += namelen;
}
@@ -86,38 +86,40 @@ bool client_parse_player_list(const uint8_t* payload, const uint8_t data_len)
return true;
}
-bool client_parse_deal_hand(const uint8_t* payload, const uint8_t payload_len)
+bool client_parse_deal_hand(const msg_t *m)
{
- assert(payload != NULL);
- assert(payload_len == MAX_HAND_CARDS); // deal_cards packet have fixed size
+ assert(m != NULL);
+ assert(m->hdr.payload_length == MAX_HAND_CARDS); // deal_cards packet have fixed size
data_store* ds = datamodel();
for(int i=0; i<MAX_HAND_CARDS; i++)
- ds->hand.cards[i] = payload[i];
+ ds->hand.cards[i] = m->payload[i];
return true;
}
-bool client_parse_selected_stack(const uint8_t* payload, const uint8_t payload_len)
+bool client_parse_selected_stack(const msg_t *m)
{
- assert(payload != NULL && payload_len == 1);
+ assert(m != NULL);
+ assert(m->hdr.payload_length == 1);
data_store* ds = datamodel();
- ds->stack_index = payload[0];
+ ds->stack_index = m->payload[0];
assert(ds->stack_index <= NUM_TABLE_STACKS);
return true;
}
-bool client_parse_initial_stacks(const uint8_t* payload, const uint8_t payload_len)
+bool client_parse_initial_stacks(const msg_t *m)
{
- assert(payload != NULL && payload_len == NUM_TABLE_STACKS);
+ assert(m != NULL);
+ assert(m->hdr.payload_length == NUM_TABLE_STACKS);
data_store* ds = datamodel();
for(int i=0; i<NUM_TABLE_STACKS; i++)
- ds->table_stacks.stacks[i].cards[0] = payload[i];
+ ds->table_stacks.stacks[i].cards[0] = m->payload[i];
return true;
}