You need to sign in or sign up before continuing.
  • E
    list: add virDomainListAllSnapshots API · 37bb0447
    Eric Blake 提交于
    There was an inherent race between virDomainSnapshotNum() and
    virDomainSnapshotListNames(), where an additional snapshot could
    be created in the meantime, or where a snapshot could be deleted
    before converting the name back to a virDomainSnapshotPtr.  It
    was also an awkward name: the function operates on domains, not
    domain snapshots.  virDomainSnapshotListChildrenNames() suffered
    from the same inherent race, although its naming was nicer.
    
    This patch makes things nicer by grabbing a snapshot list
    atomically, in the format most useful to the user.
    
    * include/libvirt/libvirt.h.in (virDomainListAllSnapshots)
    (virDomainSnapshotListAllChildren): New declarations.
    * src/libvirt.c (virDomainSnapshotListNames)
    (virDomainSnapshotListChildrenNames): Add cross-references.
    (virDomainListAllSnapshots, virDomainSnapshotListAllChildren):
    New functions.
    * src/libvirt_public.syms (LIBVIRT_0.9.13): Export them.
    * src/driver.h (virDrvDomainListAllSnapshots)
    (virDrvDomainSnapshotListAllChildren): New callbacks.
    * python/generator.py (skip_function): Prepare for later
    hand-written versions.
    37bb0447
libvirt_public.syms 13.1 KB