summaryrefslogtreecommitdiffstats
path: root/server/main_channel.h
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2011-04-11 20:58:01 +0300
committerAlon Levy <alevy@redhat.com>2011-08-23 17:58:01 +0300
commit4e304ff40f89c8619d462b584ee6ad7d6e10ce93 (patch)
tree8f8aefb97f4ef416219c2e4e5c668b9993736fde /server/main_channel.h
parentd65b08e12d337379e9c62112565ced8d1839c10a (diff)
downloadspice-4e304ff40f89c8619d462b584ee6ad7d6e10ce93.tar.gz
spice-4e304ff40f89c8619d462b584ee6ad7d6e10ce93.tar.xz
spice-4e304ff40f89c8619d462b584ee6ad7d6e10ce93.zip
server/main_channel: move connection_id from reds
Expose additional api to find a client given a connection_id. The connection_id is first set when the first channel connects, which is the main channel. It could also be kept in the RedClient instead, not sure. TODO: multiple todo's added for multiclient handling. I don't remember why I wrote them exactly, and besides if I did any migration tests. So: TODO.
Diffstat (limited to 'server/main_channel.h')
-rw-r--r--server/main_channel.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/server/main_channel.h b/server/main_channel.h
index 651334db..fd7e38b7 100644
--- a/server/main_channel.h
+++ b/server/main_channel.h
@@ -47,10 +47,11 @@ struct MainMigrateData {
typedef struct MainChannel MainChannel;
Channel *main_channel_init(void);
+RedClient *main_channel_get_client_by_link_id(MainChannel *main_chan, uint32_t link_id);
/* This is a 'clone' from the reds.h Channel.link callback */
MainChannelClient *main_channel_link(struct Channel *, RedClient *client,
- RedsStream *stream, int migration, int num_common_caps,
- uint32_t *common_caps, int num_caps, uint32_t *caps);
+ RedsStream *stream, uint32_t link_id, int migration, int num_common_caps,
+ uint32_t *common_caps, int num_caps, uint32_t *caps);
void main_channel_close(MainChannel *main_chan); // not destroy, just socket close
int main_channel_push_ping(MainChannel *main_chan, int size);
void main_channel_push_mouse_mode(MainChannel *main_chan, int current_mode, int is_client_mouse_allowed);