On 04/15/2013 11:52 AM, Guido Winkelmann wrote:
Hi,
I am considering starting a project libvirtvol under 2-clause BSD or maybe
Boost License in order to facilitate things like this. The goal would be to
have a consistent API to work with various hard disk image formats such as
qcow2, vmdk or vhd, offering operations such as create, open, close, read,
write, grow, shrink and discard (aka TRIM or hole-punching).
Do you think this would be a good idea? Or do you maybe know of some other
library that already solves this problem?
libqblock was proposed in the qemu lists, although at the moment it has
some flaws (it defers to qemu's default behavior of glib memory
management, which is to abort() rather than gracefully report OOM errors
back to the caller, which is rather disappointing for any
library-quality API). Discussion on that library has stalled, though,
since the last real post on the topic was in February:
https://lists.gnu.org/archive/html/qemu-devel/2013-02/msg05022.html
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org