From d830cf0553f1de1eb3a6eed1bf2e3dca880278d1 Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Wed, 20 Jul 2011 13:40:11 +0300 Subject: server/smartcard: handle BaseChannel messages According to spice.proto the smartcard channel can receive acks and any other message defined in BaseChannel. While the spicec implementation didn't send an ACK spice-gtk does, so handle it. --- server/smartcard.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'server') diff --git a/server/smartcard.c b/server/smartcard.c index 7136d111..272098e8 100644 --- a/server/smartcard.c +++ b/server/smartcard.c @@ -449,6 +449,11 @@ static int smartcard_channel_handle_message(RedChannel *channel, SpiceDataHeader VSCMsgHeader* vheader = (VSCMsgHeader*)msg; SmartCardChannel* smartcard_channel = (SmartCardChannel*)channel; + if (header->type != SPICE_MSGC_SMARTCARD_DATA) { + /* handle ack's, spicy sends them while spicec does not */ + return red_channel_handle_message(channel, header, msg); + } + ASSERT(header->size == vheader->length + sizeof(VSCMsgHeader)); switch (vheader->type) { case VSC_ReaderAdd: -- cgit