From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=53170 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PwPFn-0002Kw-RI for qemu-devel@nongnu.org; Sun, 06 Mar 2011 20:28:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PwPFh-0001ag-TJ for qemu-devel@nongnu.org; Sun, 06 Mar 2011 20:28:50 -0500 Received: from e36.co.us.ibm.com ([32.97.110.154]:39063) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PwPFh-0001ac-LM for qemu-devel@nongnu.org; Sun, 06 Mar 2011 20:28:49 -0500 Received: from d03relay02.boulder.ibm.com (d03relay02.boulder.ibm.com [9.17.195.227]) by e36.co.us.ibm.com (8.14.4/8.13.1) with ESMTP id p271Nbtt021386 for ; Sun, 6 Mar 2011 18:23:37 -0700 Received: from d03av02.boulder.ibm.com (d03av02.boulder.ibm.com [9.17.195.168]) by d03relay02.boulder.ibm.com (8.13.8/8.13.8/NCO v9.1) with ESMTP id p271SmmW101328 for ; Sun, 6 Mar 2011 18:28:49 -0700 Received: from d03av02.boulder.ibm.com (loopback [127.0.0.1]) by d03av02.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id p271SmSw031699 for ; Sun, 6 Mar 2011 18:28:48 -0700 From: Anthony Liguori Date: Sun, 6 Mar 2011 19:28:43 -0600 Message-Id: <1299461323-16404-1-git-send-email-aliguori@us.ibm.com> In-Reply-To: <1299460984-15849-1-git-send-email-aliguori@us.ibm.com> References: <1299460984-15849-1-git-send-email-aliguori@us.ibm.com> Subject: [Qemu-devel] [PATCH] qapi: add qmp-marshal.c and qmp.h List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Adam Litke , Anthony Liguori , Markus Armbruster , Luiz Capitulino Not for committing. diff --git a/qmp-marshal.c b/qmp-marshal.c new file mode 100644 index 0000000..0cb643a --- /dev/null +++ b/qmp-marshal.c @@ -0,0 +1,102 @@ +/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT */ + +#include "qmp.h" +#include "qmp-core.h" + + +static void qmp_marshal_query_version(const QDict *qdict, QObject **ret_data, Error **err) +{ + Error *qmp__err = NULL; + struct VersionInfo * qmp_retval = 0; + + (void)qmp__err; + qmp_retval = qmp_query_version(err); + + if (error_is_set(err)) { + goto qmp__out; + } + *ret_data = qmp_marshal_type_VersionInfo(qmp_retval); + +qmp__out: + + qmp_free_version_info(qmp_retval); + return; +} + +static void qmp_marshal_quit(const QDict *qdict, QObject **ret_data, Error **err) +{ + Error *qmp__err = NULL; + + (void)qmp__err; + qmp_quit(err); + + if (error_is_set(err)) { + goto qmp__out; + } + +qmp__out: + + return; +} + +static void qmp_marshal_qmp_capabilities(QmpState *qmp__sess, const QDict *qdict, QObject **ret_data, Error **err) +{ + Error *qmp__err = NULL; + + (void)qmp__err; + qmp_qmp_capabilities(qmp__sess, err); + + if (error_is_set(err)) { + goto qmp__out; + } + +qmp__out: + + return; +} + +static void qmp_marshal_put_event(QmpState *qmp__sess, const QDict *qdict, QObject **ret_data, Error **err) +{ + Error *qmp__err = NULL; + int64_t tag = 0; + + (void)qmp__err; + + if (!qdict_haskey(qdict, "tag")) { + error_set(err, QERR_MISSING_PARAMETER, "tag"); + goto qmp__out; + } + + tag = qmp_unmarshal_type_int(qdict_get(qdict, "tag"), &qmp__err); + if (qmp__err) { + if (error_is_type(qmp__err, QERR_INVALID_PARAMETER_TYPE)) { + error_set(err, QERR_INVALID_PARAMETER_TYPE, "tag", + error_get_field(qmp__err, "expected")); + error_free(qmp__err); + qmp__err = NULL; + } else { + error_propagate(err, qmp__err); + } + goto qmp__out; + } + + qmp_state_del_connection(qmp__sess, tag, err); + + if (error_is_set(err)) { + goto qmp__out; + } + +qmp__out: + + return; +} + +static void qmp_init_marshal(void) +{ + qmp_register_command("query-version", &qmp_marshal_query_version); + qmp_register_command("quit", &qmp_marshal_quit); + qmp_register_stateful_command("qmp_capabilities", &qmp_marshal_qmp_capabilities); + qmp_register_stateful_command("put-event", &qmp_marshal_put_event); +}; + +qapi_init(qmp_init_marshal); diff --git a/qmp.h b/qmp.h new file mode 100644 index 0000000..edada79 --- /dev/null +++ b/qmp.h @@ -0,0 +1,12 @@ +/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT */ +#ifndef QMP_MARSHAL_H +#define QMP_MARSHAL_H + +#include "qemu-common.h" +#include "qemu-objects.h" +#include "qmp-types.h" +#include "error.h" + +struct VersionInfo * qmp_query_version(Error **err); +void qmp_quit(Error **err); +#endif -- 1.7.0.4