[Spice-devel] [PATCH 10/18] Move agent_file_xfer to RedsState struct
Frediano Ziglio
fziglio at redhat.com
Tue Feb 2 17:05:59 CET 2016
From: Jonathon Jongsma <jjongsma at redhat.com>
Removing more global variables
---
server/reds-private.h | 1 +
server/reds.c | 16 ++++++++--------
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/server/reds-private.h b/server/reds-private.h
index 52f88f8..9c3db70 100644
--- a/server/reds-private.h
+++ b/server/reds-private.h
@@ -223,6 +223,7 @@ struct RedsState {
gboolean agent_mouse;
gboolean agent_copypaste;
+ gboolean agent_file_xfer;
};
#endif
diff --git a/server/reds.c b/server/reds.c
index b7c04e4..f3268d6 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -146,7 +146,6 @@ static SpiceCoreInterfaceInternal core_interface_adapter = {
static pthread_mutex_t *lock_cs;
static long *lock_count;
-int agent_file_xfer = TRUE;
static bool exit_on_disconnect = FALSE;
RedsState *reds = NULL;
@@ -414,7 +413,7 @@ static void reds_reset_vdp(RedsState *reds)
}
/* Reset read filter to start with clean state when the agent reconnects */
agent_msg_filter_init(&state->read_filter, reds->agent_copypaste,
- agent_file_xfer, TRUE);
+ reds->agent_file_xfer, TRUE);
/* Throw away pending chunks from the current (if any) and future
* messages written by the client.
* TODO: client should clear its agent messages queue when the agent
@@ -528,7 +527,7 @@ void reds_client_disconnect(RedsState *reds, RedClient *client)
/* Reset write filter to start with clean state on client reconnect */
agent_msg_filter_init(&reds->agent_state.write_filter, reds->agent_copypaste,
- agent_file_xfer, TRUE);
+ reds->agent_file_xfer, TRUE);
/* Throw away pending chunks from the current (if any) and future
* messages read from the agent */
@@ -3293,9 +3292,9 @@ static void reds_init_vd_agent_resources(RedsState *reds)
ring_init(&state->read_bufs);
agent_msg_filter_init(&state->write_filter, reds->agent_copypaste,
- agent_file_xfer, TRUE);
+ reds->agent_file_xfer, TRUE);
agent_msg_filter_init(&state->read_filter, reds->agent_copypaste,
- agent_file_xfer, TRUE);
+ reds->agent_file_xfer, TRUE);
state->read_state = VDI_PORT_READ_STATE_READ_HEADER;
state->receive_pos = (uint8_t *)&state->vdi_chunk_header;
@@ -3428,6 +3427,7 @@ SPICE_GNUC_VISIBLE SpiceServer *spice_server_new(void)
reds->zlib_glz_state = SPICE_WAN_COMPRESSION_AUTO;
reds->agent_mouse = TRUE;
reds->agent_copypaste = TRUE;
+ reds->agent_file_xfer = TRUE;
return reds;
}
@@ -3819,9 +3819,9 @@ SPICE_GNUC_VISIBLE int spice_server_set_agent_copypaste(SpiceServer *s, int enab
SPICE_GNUC_VISIBLE int spice_server_set_agent_file_xfer(SpiceServer *s, int enable)
{
spice_assert(reds == s);
- agent_file_xfer = enable;
- reds->agent_state.write_filter.file_xfer_enabled = agent_file_xfer;
- reds->agent_state.read_filter.file_xfer_enabled = agent_file_xfer;
+ 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;
return 0;
}
--
2.4.3
More information about the Spice-devel
mailing list