diff options
| author | Mario Kilies <MarioKilies@GMX.net> | 2011-01-24 14:41:52 +0100 |
|---|---|---|
| committer | Mario Kilies <MarioKilies@GMX.net> | 2011-01-24 14:41:52 +0100 |
| commit | 5ab5af3b1472fe93eb164f5bbece798a402eea65 (patch) | |
| tree | c544c9ce0392093890dbddc71606b75a1e6173d8 /src/net/client.c | |
| parent | 1999007d45ba68626134b078f0b8a09430c58f5d (diff) | |
Second part of huge refactoring of networking related code.
Diffstat (limited to 'src/net/client.c')
| -rw-r--r-- | src/net/client.c | 34 |
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; } |
