That's why I've chosen to work purely with disk target at NBD level. We
have strong rules what characters can occur there. Moreover, it's fairly
easy to derive qemu disk ID from the target. Oh, and we require targets
to be unique throughout the domain. So I think it's the best option for
the extension you're planning.
Hm.. what about this, introduce just this new function:
virTypedParamsGetArrayForKey(.., const char *key, ...)