};
static void send_empty_response(debug_state_t *debug, unsigned int message_number) {
- char message_buf[5];
- message_buf[0] = 1;
- message_buf[1] = (message_number >> 0) & 0xff;
- message_buf[2] = (message_number >> 8) & 0xff;
- message_buf[3] = (message_number >> 16) & 0xff;
- message_buf[4] = (message_number >> 24) & 0xff;
- send(debug->client_fd, message_buf, 5, 0);
+ send(debug->client_fd, &message_number, 4, 0);
}
static void process_command(debug_state_t *debug, struct msg_parse_ctx_t *ctx) {
ctx.bytes_read = bytes_read;
while (ctx.offset < ctx.bytes_read) {
- u8 type = *(u8 *) &ctx.data[ctx.offset];
- ctx.offset++;
+ u32 msg_id = *(u32 *) &ctx.data[ctx.offset];
- if (type == 0) {
+ if (msg_id != 0xffffffff) {
process_command(debug, &ctx);
} else {
process_response(debug, &ctx);