X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=libvirt%2Fgenerator.pl;h=8b20adf31e9eca192c59343b0d2e6f45dfdb6bff;hb=edd8d7c54997aa397dbe639d137766f140091428;hp=7beac84c417bc6f177db3e8a9e0638305cf21222;hpb=4bcef5db5222f7a2596aaa1d8664fbcfd7185076;p=virt-top.git diff --git a/libvirt/generator.pl b/libvirt/generator.pl index 7beac84..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,11 +193,6 @@ my @functions = ( # written in 'libvirt_c_oneoffs.c'. my @unimplemented = ( - "ocaml_libvirt_storage_pool_get_info", - "ocaml_libvirt_storage_vol_lookup_by_name", # XXX see above - "ocaml_libvirt_storage_vol_create_xml", # XXX see above - "ocaml_libvirt_storage_vol_get_info", - "ocaml_libvirt_job_get_info", ); #---------------------------------------------------------------------- @@ -565,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$/) { @@ -887,6 +884,13 @@ foreach my $function (@functions) { die "cannot convert c_name $c_name to c_external_name" } + print F <