On Friday, 4 November 2016 14:52:49 CET Tomáš Golembiovský wrote: > Signed-off-by: Tomáš Golembiovský <[email protected]> > --- > mllib/checksums.ml | 10 ++++++++-- > mllib/checksums.mli | 2 +- > 2 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/mllib/checksums.ml b/mllib/checksums.ml > index dfa8c3a..9fcff2f 100644 > --- a/mllib/checksums.ml > +++ b/mllib/checksums.ml > @@ -45,7 +45,7 @@ let of_string csum_type csum_value = > | "sha512" -> SHA512 csum_value > | _ -> invalid_arg csum_type > > -let verify_checksum csum filename = > +let verify_checksum csum ?(tar = "") filename =
In this case, do not set a default value to the optional argument, so
you can later check whether it was actually set. Optional arguments
are handled as 'a option. So ...
> let prog, csum_ref =
> match csum with
> | SHA1 c -> "sha1sum", c
> @@ -53,7 +53,13 @@ let verify_checksum csum filename =
> | SHA512 c -> "sha512sum", c
> in
>
> - let cmd = sprintf "%s %s" prog (Filename.quote filename) in
> + let cmd =
> + if tar = "" then
> + sprintf "%s %s" prog (Filename.quote filename)
> + else
> + sprintf "tar xOf %s %s | %s"
> + (Filename.quote tar) (Filename.quote filename) prog
> + in
... this case be:
let cmd =
match tar with
| None ->
sprintf "%s %s" prog (Filename.quote filename)
| Some tar ->
sprintf "tar xOf %s %s | %s"
(Filename.quote tar) (Filename.quote filename) prog in
Thanks,
--
Pino Toscano
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
