diff options
author | Hans de Goede <hdegoede@redhat.com> | 2013-06-06 16:03:33 +0200 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2013-06-06 16:07:30 +0200 |
commit | db278430f8994fe774beb50397cc935de5f1755f (patch) | |
tree | cff7b836f3ef7de76584a99756ccf49076c7b14b /server/agent-msg-filter.c | |
parent | b30daf38bfcb9e4a7c0e80b128493e0794469ba2 (diff) | |
download | spice-db278430f8994fe774beb50397cc935de5f1755f.tar.gz spice-db278430f8994fe774beb50397cc935de5f1755f.tar.xz spice-db278430f8994fe774beb50397cc935de5f1755f.zip |
server: Add support for filtering out agent file-xfer msgs (rhbz#961848)
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'server/agent-msg-filter.c')
-rw-r--r-- | server/agent-msg-filter.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/server/agent-msg-filter.c b/server/agent-msg-filter.c index b48dd765..567e03d0 100644 --- a/server/agent-msg-filter.c +++ b/server/agent-msg-filter.c @@ -27,10 +27,11 @@ #include "red_dispatcher.h" void agent_msg_filter_init(struct AgentMsgFilter *filter, - int copy_paste, int discard_all) + int copy_paste, int file_xfer, int discard_all) { memset(filter, 0, sizeof(*filter)); filter->copy_paste_enabled = copy_paste; + filter->file_xfer_enabled = file_xfer; filter->discard_all = discard_all; } @@ -81,6 +82,15 @@ data_to_read: filter->result = AGENT_MSG_FILTER_DISCARD; } break; + case VD_AGENT_FILE_XFER_START: + case VD_AGENT_FILE_XFER_STATUS: + case VD_AGENT_FILE_XFER_DATA: + if (filter->file_xfer_enabled) { + filter->result = AGENT_MSG_FILTER_OK; + } else { + filter->result = AGENT_MSG_FILTER_DISCARD; + } + break; case VD_AGENT_MONITORS_CONFIG: if (red_dispatcher_use_client_monitors_config()) { filter->result = AGENT_MSG_FILTER_MONITORS_CONFIG; |