summaryrefslogtreecommitdiffstats
path: root/server/dispatcher.c
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2011-11-07 13:27:54 +0200
committerAlon Levy <alevy@redhat.com>2011-11-08 14:59:51 +0200
commitfff04e867c02eb5c3582f17810c1a092ce240fc6 (patch)
tree2a3e8037e6505472037690222d1f072fcbc788ce /server/dispatcher.c
parent776bdd6c95715dcd8e609dc3ff647d0ad73fd339 (diff)
downloadspice-fff04e867c02eb5c3582f17810c1a092ce240fc6.tar.gz
spice-fff04e867c02eb5c3582f17810c1a092ce240fc6.tar.xz
spice-fff04e867c02eb5c3582f17810c1a092ce240fc6.zip
introduce DISPATCHER_{NONE,ACK,ASYNC}
Diffstat (limited to 'server/dispatcher.c')
-rw-r--r--server/dispatcher.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/server/dispatcher.c b/server/dispatcher.c
index 1cd9e43a..81abbdf3 100644
--- a/server/dispatcher.c
+++ b/server/dispatcher.c
@@ -120,10 +120,12 @@ static int dispatcher_handle_single_read(Dispatcher *dispatcher)
} else {
red_printf("error: no handler for message type %d\n", type);
}
- if (msg->ack && write_safe(dispatcher->recv_fd,
- &ack, sizeof(ack)) == -1) {
- red_printf("error writing ack for message %d\n", type);
- /* TODO: close socketpair? */
+ if (msg->ack == DISPATCHER_ACK) {
+ if (write_safe(dispatcher->recv_fd,
+ &ack, sizeof(ack)) == -1) {
+ red_printf("error writing ack for message %d\n", type);
+ /* TODO: close socketpair? */
+ }
}
return 1;
}
@@ -159,7 +161,7 @@ void dispatcher_send_message(Dispatcher *dispatcher, uint32_t message_type,
message_type);
goto unlock;
}
- if (msg->ack) {
+ if (msg->ack == DISPATCHER_ACK) {
if (read_safe(send_fd, &ack, sizeof(ack), 1) == -1) {
red_printf("error: failed to read ack");
} else if (ack != ACK) {