From c120b431b7ccda0a0a1076e31f2f1367dbee656f Mon Sep 17 00:00:00 2001 From: Uri Lublin <uril@redhat.com> Date: Sun, 11 Oct 2020 20:59:17 +0300 Subject: [PATCH 09/10] vdagentd: do not allow to use an already used file-xfer id Signed-off-by: Uri Lublin <uril@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com> --- src/vdagentd/vdagentd.c | 7 +++++++ 1 file changed, 7 insertions(+) --- a/src/vdagentd/vdagentd.c +++ b/src/vdagentd/vdagentd.c @@ -359,6 +359,13 @@ static void do_client_file_xfer(struct v "Cancelling client file-xfer request %u", s->id, VD_AGENT_FILE_XFER_STATUS_ERROR, NULL, 0); return; + } else if (g_hash_table_lookup(active_xfers, GUINT_TO_POINTER(s->id)) != NULL) { + // id is already used -- client is confused + send_file_xfer_status(vport, + "File transfer ID is already used. " + "Cancelling client file-xfer request %u", + s->id, VD_AGENT_FILE_XFER_STATUS_ERROR, NULL, 0); + return; } msg_type = VDAGENTD_FILE_XFER_START; id = s->id;