On Mon, Jun 02, 2014 at 04:43:25PM -0600, Jim Fehlig wrote:
Daniel P. Berrange wrote:
> On Mon, Jun 02, 2014 at 01:41:58PM +0100, Ian Campbell wrote:
>
>>> I hacked around this, but it is a little dirty too. libvirt
>>> already links to libyajl for the QEMU driver, but we don't
>>> really need the raw YAJL objects. It'd be nice to have a
>>>
>>> char * libxl_domain_config_as_json(libxl_domain_config *p)
>>>
>>> as a higher level wrapper around libxl_domain_config_gen_json
>>> avoiding the pain of dealing with YAJL's different APIs.
>>>
>>> Ian J mentioned to me that he thought there was already such a
>>> method, but AFAICT, the only such code is in the 'xl' command
>>> line tool itself (xl_cmdimpl.c - printf_info_one_json)
>>>
>> That was me not Ian J I think.
>>
>
> Opps, my bad, was talking to too many people to remember things clearly :-)
>
>
>> The function you need is libxl_domain_config_to_json (which is
>> autogenerated, so in _libxl_types.[hc]). I think the general
>> libxl_*_to_json support has been there since Xen 4.2, but IIRC
>> libxl_domain_config only got moved into the autogenerated/IDL layer in
>> 4.3.
>>
>
> Ahhh, so I was looking in the wrong place - no wonder 'git grep' failed
> to find it :-)
>
This patch becomes a bit smaller by using libxl_domain_config_to_json()
- see below diff. It works with Xen 4.2-4.4, although the test fails on
all but 4.4 due to changes in the json noted earlier (e.g. additional
c_info fields added to the returned json).
Thanks, I've got changes I'm testing which will do DOM level compares
instead of string compares, which will hopefully solve the compat
problem.
Regards,
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|