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