On 03/22/2013 08:19 AM, Wenchao Xia wrote:
>   This function will simply call qmp interface qmp_query_snapshots()
> added in last commit and then dump information in monitor console.
>   To get snapshot info, Now qemu and qemu-img both call block layer
> function bdrv_query_snapshot_info_list() in their calling path, and
> then they just translate the qmp object got to strings in stdout or
> monitor console.
> 
> Signed-off-by: Wenchao Xia <xiaw...@linux.vnet.ibm.com>
> ---
>  hmp.c |   42 ++++++++++++++++++++++++++++++++++++++++++
>  hmp.h |    1 +
>  2 files changed, 43 insertions(+), 0 deletions(-)
> 
> diff --git a/hmp.c b/hmp.c
> index b0a861c..c475d65 100644
> --- a/hmp.c
> +++ b/hmp.c
> @@ -651,6 +651,48 @@ void hmp_info_tpm(Monitor *mon, const QDict *qdict)
>      qapi_free_TPMInfoList(info_list);
>  }
>  
> +/* assume list is valid */
> +static void monitor_dump_snapshotinfolist(Monitor *mon, SnapshotInfoList 
> *list)
> +{
> +    SnapshotInfoList *elem;
> +    char buf[256];
> +
> +    monitor_printf(mon, "%s\n", bdrv_snapshot_dump(buf, sizeof(buf), NULL));

Are you sure that won't ever be truncated?  I'm pretty sure that I could
come up with a scenario where I cause bdrv_snapshot_dump() to want to
output more than 256 bytes of details.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to