[Libguestfs] [hivex] OCaml binding error?

Richard W.M. Jones rjones at redhat.com
Wed Aug 31 09:28:41 UTC 2011


On Tue, Aug 30, 2011 at 05:47:01PM -0700, Alex Nelson wrote:
> Hello all,
> 
> I am in the process of adding a new return type for the hivex ABI, and I found what I think is an error.  I'm not sure, because I don't understand the OCaml binding data structures.  Can somebody inform me if the patch below actually corrects a problem?
> 
> --Alex
> 
> 
> ---
>  generator/generator.ml |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/generator/generator.ml b/generator/generator.ml
> index de103ed..c98e625 100755
> --- a/generator/generator.ml
> +++ b/generator/generator.ml
> @@ -1946,7 +1946,7 @@ copy_type_len (size_t len, hive_type t)
>    v = Val_hive_type (t);
>    Store_field (rv, 0, v);
>    v = Val_int (len);
> -  Store_field (rv, 1, len);
> +  Store_field (rv, 1, v);
>    CAMLreturn (rv);
>  }

Yes, that is a very serious bug in Hivex.value_type.  (Luckily
everyone uses Hivex.value_value instead, so we didn't hit this).

I have applied your patch.

Thanks,

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into Xen guests.
http://et.redhat.com/~rjones/virt-p2v




More information about the Libguestfs mailing list