[Libguestfs] [PATCH v2 1/2] v2v:windows: factor out getting CurrentControlSet
Richard W.M. Jones
rjones at redhat.com
Thu Sep 1 08:53:37 UTC 2016
On Thu, Sep 01, 2016 at 11:50:18AM +0300, Roman Kagan wrote:
> It will be used in new code in a followup patch.
>
> Signed-off-by: Roman Kagan <rkagan at virtuozzo.com>
> ---
> v1 -> v2:
> - revert debug -> printf regression
>
> v2v/convert_windows.ml | 15 ++++++++-------
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/v2v/convert_windows.ml b/v2v/convert_windows.ml
> index 55bb3ef..02c7a47 100644
> --- a/v2v/convert_windows.ml
> +++ b/v2v/convert_windows.ml
> @@ -210,6 +210,13 @@ let convert ~keep_serial_console (g : G.guestfs) inspect source rcaps =
> (*----------------------------------------------------------------------*)
> (* Perform the conversion of the Windows guest. *)
>
> + (* Find the 'Current' ControlSet. *)
> + let get_current_cs root =
> + let select = g#hivex_node_get_child root "Select" in
> + let valueh = g#hivex_node_get_value select "Current" in
> + let value = int_of_le32 (g#hivex_value_value valueh) in
> + sprintf "ControlSet%03Ld" value in
> +
> let rec configure_firstboot () =
> (match installer with
> | None -> ()
> @@ -302,13 +309,7 @@ if errorlevel 3010 exit /b 0
> (* Update the SYSTEM hive. When this function is called the hive has
> * already been opened as a hivex handle inside guestfs.
> *)
> - (* Find the 'Current' ControlSet. *)
> - let current_cs =
> - let select = g#hivex_node_get_child root "Select" in
> - let valueh = g#hivex_node_get_value select "Current" in
> - let value = int_of_le32 (g#hivex_value_value valueh) in
> - sprintf "ControlSet%03Ld" value in
> -
> + let current_cs = get_current_cs root in
> debug "current ControlSet is %s" current_cs;
>
> disable_services root current_cs;
This is fine, ACK.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
More information about the Libguestfs
mailing list