[Spice-devel] [PATCH 13/18] RedsState: use local variables in more places
Frediano Ziglio
fziglio at redhat.com
Thu Feb 4 15:57:45 UTC 2016
From: Jonathon Jongsma <jjongsma at redhat.com>
Various functions were still using the global 'reds' variable rather
than the local argument of type RedsState
---
server/reds.c | 68 +++++++++++++++++++++++++++++------------------------------
1 file changed, 34 insertions(+), 34 deletions(-)
diff --git a/server/reds.c b/server/reds.c
index fe35d84..012c0f3 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -859,7 +859,7 @@ static int reds_get_n_clients(RedsState *reds)
SPICE_GNUC_VISIBLE int spice_server_get_num_clients(SpiceServer *s)
{
spice_assert(reds == s);
- return reds_get_n_clients(reds);
+ return reds_get_n_clients(s);
}
static int secondary_channels[] = {
@@ -1340,6 +1340,7 @@ int reds_handle_migrate_data(RedsState *reds, MainChannelClient *mcc,
static void reds_channel_init_auth_caps(RedLinkInfo *link, RedChannel *channel)
{
+ RedsState *reds = link->reds;
if (reds->sasl_enabled && !link->skip_auth) {
red_channel_set_common_cap(channel, SPICE_COMMON_CAP_AUTH_SASL);
} else {
@@ -3116,11 +3117,11 @@ static int spice_server_char_device_add_interface(SpiceServer *s,
spice_assert(char_device->st);
/* setting the char_device state to "started" for backward compatibily with
* qemu releases that don't call spice api for start/stop (not implemented yet) */
- if (reds->vm_running) {
+ if (s->vm_running) {
spice_char_device_start(char_device->st);
}
spice_char_device_set_server(char_device->st, reds);
- reds_char_device_add_state(reds, char_device->st);
+ reds_char_device_add_state(s, char_device->st);
} else {
spice_warning("failed to create device state for %s", char_device->subtype);
return -1;
@@ -3740,7 +3741,7 @@ SPICE_GNUC_VISIBLE int spice_server_set_channel_security(SpiceServer *s, const c
SPICE_GNUC_VISIBLE int spice_server_get_sock_info(SpiceServer *s, struct sockaddr *sa, socklen_t *salen)
{
spice_assert(reds == s);
- if (main_channel_getsockname(reds->main_channel, sa, salen) < 0) {
+ if (main_channel_getsockname(s->main_channel, sa, salen) < 0) {
return -1;
}
return 0;
@@ -3749,7 +3750,7 @@ SPICE_GNUC_VISIBLE int spice_server_get_sock_info(SpiceServer *s, struct sockadd
SPICE_GNUC_VISIBLE int spice_server_get_peer_info(SpiceServer *s, struct sockaddr *sa, socklen_t *salen)
{
spice_assert(reds == s);
- if (main_channel_getpeername(reds->main_channel, sa, salen) < 0) {
+ if (main_channel_getpeername(s->main_channel, sa, salen) < 0) {
return -1;
}
return 0;
@@ -3758,7 +3759,7 @@ SPICE_GNUC_VISIBLE int spice_server_get_peer_info(SpiceServer *s, struct sockadd
SPICE_GNUC_VISIBLE int spice_server_is_server_mouse(SpiceServer *s)
{
spice_assert(reds == s);
- return reds->mouse_mode == SPICE_MOUSE_MODE_SERVER;
+ return s->mouse_mode == SPICE_MOUSE_MODE_SERVER;
}
SPICE_GNUC_VISIBLE int spice_server_add_renderer(SpiceServer *s, const char *name)
@@ -3802,7 +3803,6 @@ SPICE_GNUC_VISIBLE int spice_server_set_playback_compression(SpiceServer *s, int
SPICE_GNUC_VISIBLE int spice_server_set_agent_mouse(SpiceServer *s, int enable)
{
- spice_assert(reds == s);
reds->agent_mouse = enable;
reds_update_mouse_mode(reds);
return 0;
@@ -3812,8 +3812,8 @@ SPICE_GNUC_VISIBLE int spice_server_set_agent_copypaste(SpiceServer *s, int enab
{
spice_assert(reds == s);
s->agent_copypaste = enable;
- reds->agent_state.write_filter.copy_paste_enabled = s->agent_copypaste;
- reds->agent_state.read_filter.copy_paste_enabled = s->agent_copypaste;
+ s->agent_state.write_filter.copy_paste_enabled = s->agent_copypaste;
+ s->agent_state.read_filter.copy_paste_enabled = s->agent_copypaste;
return 0;
}
@@ -3821,8 +3821,8 @@ SPICE_GNUC_VISIBLE int spice_server_set_agent_file_xfer(SpiceServer *s, int enab
{
spice_assert(reds == s);
s->agent_file_xfer = enable;
- reds->agent_state.write_filter.file_xfer_enabled = s->agent_file_xfer;
- reds->agent_state.read_filter.file_xfer_enabled = s->agent_file_xfer;
+ s->agent_state.write_filter.file_xfer_enabled = s->agent_file_xfer;
+ s->agent_state.read_filter.file_xfer_enabled = s->agent_file_xfer;
return 0;
}
@@ -3863,9 +3863,9 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_connect(SpiceServer *s, const char*
spice_assert(s->migration_interface);
spice_assert(reds == s);
- if (reds->expect_migrate) {
+ if (s->expect_migrate) {
spice_info("consecutive calls without migration. Canceling previous call");
- main_channel_migrate_src_complete(reds->main_channel, FALSE);
+ main_channel_migrate_src_complete(s->main_channel, FALSE);
}
sif = SPICE_CONTAINEROF(s->migration_interface->base.sif, SpiceMigrateInterface, base);
@@ -3875,7 +3875,7 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_connect(SpiceServer *s, const char*
return -1;
}
- reds->expect_migrate = TRUE;
+ s->expect_migrate = TRUE;
/*
* seamless migration support was added to the client after the support in
@@ -3885,16 +3885,16 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_connect(SpiceServer *s, const char*
* occured when the agent was not connected, the tokens state after migration will still
* be valid (see reds_reset_vdp for more details).
*/
- try_seamless = reds->seamless_migration_enabled &&
- red_channel_test_remote_cap(&reds->main_channel->base,
+ try_seamless = s->seamless_migration_enabled &&
+ red_channel_test_remote_cap(&s->main_channel->base,
SPICE_MAIN_CAP_AGENT_CONNECTED_TOKENS);
/* main channel will take care of clients that are still during migration (at target)*/
- if (main_channel_migrate_connect(reds->main_channel, reds->mig_spice,
+ if (main_channel_migrate_connect(s->main_channel, s->mig_spice,
try_seamless)) {
- reds_mig_started(reds);
+ reds_mig_started(s);
} else {
- if (reds->num_clients == 0) {
- reds_mig_release(reds);
+ if (s->num_clients == 0) {
+ reds_mig_release(s);
spice_info("no client connected");
}
sif->migrate_connect_complete(s->migration_interface);
@@ -3921,7 +3921,7 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_start(SpiceServer *s)
{
spice_assert(reds == s);
spice_info(NULL);
- if (!reds->mig_spice) {
+ if (!s->mig_spice) {
return -1;
}
return 0;
@@ -3938,19 +3938,19 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_end(SpiceServer *s, int completed)
spice_assert(reds == s);
sif = SPICE_CONTAINEROF(s->migration_interface->base.sif, SpiceMigrateInterface, base);
- if (completed && !reds->expect_migrate && reds->num_clients) {
+ if (completed && !s->expect_migrate && s->num_clients) {
spice_warning("spice_server_migrate_info was not called, disconnecting clients");
- reds_disconnect(reds);
+ reds_disconnect(s);
ret = -1;
goto complete;
}
- reds->expect_migrate = FALSE;
- if (!reds_main_channel_connected(reds)) {
+ s->expect_migrate = FALSE;
+ if (!reds_main_channel_connected(s)) {
spice_info("no peer connected");
goto complete;
}
- reds_mig_finished(reds, completed);
+ reds_mig_finished(s, completed);
return 0;
complete:
if (sif->migrate_end_complete) {
@@ -3964,11 +3964,11 @@ SPICE_GNUC_VISIBLE int spice_server_migrate_switch(SpiceServer *s)
{
spice_assert(reds == s);
spice_info(NULL);
- if (!reds->num_clients) {
+ if (!s->num_clients) {
return 0;
}
- reds->expect_migrate = FALSE;
- reds_mig_switch(reds);
+ s->expect_migrate = FALSE;
+ reds_mig_switch(s);
return 0;
}
@@ -3977,8 +3977,8 @@ SPICE_GNUC_VISIBLE void spice_server_vm_start(SpiceServer *s)
RingItem *item;
spice_assert(s == reds);
- reds->vm_running = TRUE;
- RING_FOREACH(item, &reds->char_devs_states) {
+ s->vm_running = TRUE;
+ RING_FOREACH(item, &s->char_devs_states) {
SpiceCharDeviceStateItem *st_item;
st_item = SPICE_CONTAINEROF(item, SpiceCharDeviceStateItem, link);
@@ -3992,8 +3992,8 @@ SPICE_GNUC_VISIBLE void spice_server_vm_stop(SpiceServer *s)
RingItem *item;
spice_assert(s == reds);
- reds->vm_running = FALSE;
- RING_FOREACH(item, &reds->char_devs_states) {
+ s->vm_running = FALSE;
+ RING_FOREACH(item, &s->char_devs_states) {
SpiceCharDeviceStateItem *st_item;
st_item = SPICE_CONTAINEROF(item, SpiceCharDeviceStateItem, link);
@@ -4006,7 +4006,7 @@ SPICE_GNUC_VISIBLE void spice_server_set_seamless_migration(SpiceServer *s, int
{
spice_assert(s == reds);
/* seamless migration is not supported with multiple clients */
- reds->seamless_migration_enabled = enable && !reds->allow_multiple_clients;
+ s->seamless_migration_enabled = enable && !s->allow_multiple_clients;
spice_debug("seamless migration enabled=%d", enable);
}
--
2.5.0
More information about the Spice-devel
mailing list