On 2/19/24 23:24, Vincent Vanlaer wrote:
> Similar to when actual data is being written to the stream, it is
> necessary to acknowledge handling of the client request when a hole is
> encountered. This is done later in daemonStreamHandleWrite by sending a
> fake zero-length reply if the status variable is set to
> VIR_STREAM_CONTINUE. It seems that setting status from the message
> header was missed for holes in the introduction of the sparse stream
> feature.
> 
> Signed-off-by: Vincent Vanlaer <[email protected]>
> ---
>  src/remote/remote_daemon_stream.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/src/remote/remote_daemon_stream.c 
> b/src/remote/remote_daemon_stream.c
> index 1a89ff822c..453728a66b 100644
> --- a/src/remote/remote_daemon_stream.c
> +++ b/src/remote/remote_daemon_stream.c
> @@ -747,6 +747,7 @@ daemonStreamHandleWrite(virNetServerClient *client,
>               * Otherwise just carry on with processing stream
>               * data. */
>              ret = daemonStreamHandleHole(client, stream, msg);
> +            status = msg->header.status;
>          } else if (msg->header.type == VIR_NET_STREAM) {
>              status = msg->header.status;
>              switch (status) {

I'm wondering why is this needed. I mean - is there a bug and what are
the steps to reproduce? It's been a while since I touched this part of
the codebase.

Michal
_______________________________________________
Devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to