X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=libvirt%2Fgenerator.pl;h=8b20adf31e9eca192c59343b0d2e6f45dfdb6bff;hb=edd8d7c54997aa397dbe639d137766f140091428;hp=ad2069fc990e6099430e9d7dc43eba3353828adc;hpb=77448a532e21983b65664e33525d18e76f41e348;p=virt-top.git diff --git a/libvirt/generator.pl b/libvirt/generator.pl index ad2069f..8b20adf 100755 --- a/libvirt/generator.pl +++ b/libvirt/generator.pl @@ -155,14 +155,14 @@ my @functions = ( { name => "virStorageVolFree", sig => "vol : free", weak => 1 }, { name => "virStorageVolDestroy", sig => "vol : free", weak => 1 }, -# { name => "virStorageVolLookupByName", XXX see libvir-list posting -# sig => "pool, string : vol", weak => 1 }, + { name => "virStorageVolLookupByName", + sig => "pool, string : vol from pool", weak => 1 }, { name => "virStorageVolLookupByKey", sig => "conn, string : vol", weak => 1 }, { name => "virStorageVolLookupByPath", sig => "conn, string : vol", weak => 1 }, -# { name => "virStorageVolCreateXML", -# sig => "pool, string : vol", weak => 1 }, XXX + { name => "virStorageVolCreateXML", + sig => "pool, string, 0 : vol from pool", weak => 1 }, { name => "virStorageVolGetXMLDesc", sig => "vol, 0 : string", weak => 1 }, { name => "virStorageVolGetPath", @@ -193,8 +193,6 @@ my @functions = ( # written in 'libvirt_c_oneoffs.c'. my @unimplemented = ( - "ocaml_libvirt_storage_vol_lookup_by_name", # XXX see above - "ocaml_libvirt_storage_vol_create_xml", # XXX see above ); #---------------------------------------------------------------------- @@ -562,7 +560,9 @@ sub gen_c_code NONBLOCKING (r = $c_name ($1, uuid)); CHECK_ERROR (r == -1, conn, \"$c_name\"); - rv = caml_copy_string ((char *) uuid); + /* UUIDs are byte arrays with a fixed length. */ + rv = caml_alloc_string (VIR_UUID_BUFLEN); + memcpy (String_val (rv), uuid, VIR_UUID_BUFLEN); CAMLreturn (rv); " } elsif ($sig =~ /^(\w+) : uuid string$/) { @@ -886,7 +886,7 @@ foreach my $function (@functions) { print F <