On Sun, 2017-05-21 at 15:09 +0200, Jakub Janků wrote: > Agent can send VDAgentFileXferStatusMessage with result > VD_AGENT_FILE_XFER_STATUS_NOT_ENOUGH_SPACE to indicate lack of free > space. This enables more detailed error reporting, so the user knows > why the file transfer has failed. > > Add VD_AGENT_CAP_FILE_XFER_DETAILED_ERRORS to ensure detailed errors > are not sent to clients that do not support it. This can be used > with more file xfer errors in the future. > --- > spice/vd_agent.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/spice/vd_agent.h b/spice/vd_agent.h > index 3b1f183..2a168d0 100644 > --- a/spice/vd_agent.h > +++ b/spice/vd_agent.h > @@ -99,11 +99,19 @@ enum { > VD_AGENT_FILE_XFER_STATUS_CANCELLED, > VD_AGENT_FILE_XFER_STATUS_ERROR, > VD_AGENT_FILE_XFER_STATUS_SUCCESS, > + VD_AGENT_FILE_XFER_STATUS_NOT_ENOUGH_SPACE, > }; > > typedef struct SPICE_ATTR_PACKED VDAgentFileXferStatusMessage { > uint32_t id; > uint32_t result; > + /* Used to send additional data for detailed error messages > + * to clients with VD_AGENT_CAP_FILE_XFER_DETAILED_ERRORS > capability. > + * Type of data varies with the result: > + * result : data type > + * VD_AGENT_FILE_XFER_STATUS_NOT_ENOUGH_SPACE : uint64_t > + */ > + uint8_t data[0]; > } VDAgentFileXferStatusMessage; > > typedef struct SPICE_ATTR_PACKED VDAgentFileXferStartMessage { > @@ -248,6 +256,7 @@ enum { > VD_AGENT_CAP_AUDIO_VOLUME_SYNC, > VD_AGENT_CAP_MONITORS_CONFIG_POSITION, > VD_AGENT_CAP_FILE_XFER_DISABLED, > + VD_AGENT_CAP_FILE_XFER_DETAILED_ERRORS, > VD_AGENT_END_CAP, > }; > Looks good to me, ack. Thanks, Pavel _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel