• M
    allow qemu_iovec_from_buffer() to specify offset from which to start copying · 03396148
    Michael Tokarev 提交于
    Similar to
     qemu_iovec_memset(QEMUIOVector *qiov, size_t offset,
                       int c, size_t bytes);
    the new prototype is:
     qemu_iovec_from_buf(QEMUIOVector *qiov, size_t offset,
                         const void *buf, size_t bytes);
    
    The processing starts at offset bytes within qiov.
    
    This way, we may copy a bounce buffer directly to
    a middle of qiov.
    
    This is exactly the same function as iov_from_buf() from
    iov.c, so use the existing implementation and rename it
    to qemu_iovec_from_buf() to be shorter and to match the
    utility function.
    
    As with utility implementation, we now assert that the
    offset is inside actual iovec.  Nothing changed for
    current callers, because `offset' parameter is new.
    
    While at it, stop using "bounce-qiov" in block/qcow2.c
    and copy decrypted data directly from cluster_data
    instead of recreating a temp qiov for doing that.
    Signed-off-by: NMichael Tokarev <mjt@tls.msk.ru>
    03396148
curl.c 16.2 KB