On Mon, Oct 05, 2015 at 05:11:52PM +0100, Richard W.M. Jones wrote:
Oh I see - yes it's broken upstream too :-(
(See the comment "XXX This won't work if paths contain non-ASCII.")
Since String.lowercase assumes the string is ISO-8859-1, it could
actually corrupt UTF-8 paths.
As usual we're in a hard place here because we don't want to add
dependencies on external libraries like Camomile
(
https://github.com/yoriyuki/Camomile) which would be the obvious
choice, but no one has written a working replacement for
mllib/common_utils.ml.
If you have a look at the patch series I just posted:
https://www.redhat.com/archives/libguestfs/2015-October/msg00068.html
You can now use String.lowercase_ascii which is safe.
In fact you won't be able to use String.lowercase any longer since
that patch series hides the function.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org