On 15/08/2016 18:29, ashish mittal wrote: >>> +/* >>> + * Convert the json formatted command line into qapi. >>> +*/ >>> + >>> +static int vxhs_parse_json(BlockdevOptionsVxHS *conf, >>> + QDict *options, Error **errp) >>> +{ > ... >>> + errno = EINVAL; >>> + return -errno; >>> +} >> >> Ewww this is really horrible code. It is open-coding a special purpose >> conversion of QemuOpts -> QDict -> QAPI scheme. We should really put >> my qdict_crumple() API impl as a pre-requisite of this, so you can then >> use qdict_crumple + qmp_input_visitor to do this conversion in a generic >> manner removing all this code. >> >> https://lists.gnu.org/archive/html/qemu-devel/2016-07/msg03118.html >> > > Thanks for the suggestions. I will try to incorporate them in the next > version. Actually, I used block/gluster.c for reference (as advised). > This is exactly how it parses json CLI options. It also implements the > *parse_uri() in a similar way.
I think I pointed you to block/nbd.c instead, which works as Kevin suggested. Paolo