summary refs log tree commit diff stats
path: root/include/qjson.h
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2015-02-05 17:11:50 +0000
committerPeter Maydell <peter.maydell@linaro.org>2015-02-05 17:11:50 +0000
commitb3cd91e0eaf5c962cf139ce6ca59392c8b00f177 (patch)
treed6221d057f8cd22f40256a0c37c022793f1d2c93 /include/qjson.h
parent651621b780515f35711c5d7305310ab1d241c7e2 (diff)
parentbb426311901776b95b021cece831b69dce4ef5ee (diff)
downloadfocaccia-qemu-b3cd91e0eaf5c962cf139ce6ca59392c8b00f177.tar.gz
focaccia-qemu-b3cd91e0eaf5c962cf139ce6ca59392c8b00f177.zip
Merge remote-tracking branch 'remotes/juanquintela/tags/migration/20150205' into staging
migration/next for 20150205

# gpg: Signature made Thu 05 Feb 2015 16:17:08 GMT using RSA key ID 5872D723
# gpg: Can't check signature: public key not found

* remotes/juanquintela/tags/migration/20150205:
  fix mc146818rtc wrong subsection name to avoid vmstate_subsection_load() fail
  Tracify migration/rdma.c
  Add migration stream analyzation script
  migration: Append JSON description of migration stream
  qemu-file: Add fast ftell code path
  QJSON: Add JSON writer
  Print errors in some of the early migration failure cases.
  Migration: Add lots of trace events
  savevm: Convert fprintf to error_report
  vmstate-static-checker: update whitelist

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/qjson.h')
-rw-r--r--include/qjson.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/include/qjson.h b/include/qjson.h
new file mode 100644
index 0000000000..7c54fdf0ac
--- /dev/null
+++ b/include/qjson.h
@@ -0,0 +1,29 @@
+/*
+ * QEMU JSON writer
+ *
+ * Copyright Alexander Graf
+ *
+ * Authors:
+ *  Alexander Graf <agraf@suse.de>
+ *
+ * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
+ * See the COPYING.LIB file in the top-level directory.
+ *
+ */
+#ifndef QEMU_QJSON_H
+#define QEMU_QJSON_H
+
+#define TYPE_QJSON "QJSON"
+typedef struct QJSON QJSON;
+
+QJSON *qjson_new(void);
+void json_prop_str(QJSON *json, const char *name, const char *str);
+void json_prop_int(QJSON *json, const char *name, int64_t val);
+void json_end_array(QJSON *json);
+void json_start_array(QJSON *json, const char *name);
+void json_end_object(QJSON *json);
+void json_start_object(QJSON *json, const char *name);
+const char *qjson_get_str(QJSON *json);
+void qjson_finish(QJSON *json);
+
+#endif /* QEMU_QJSON_H */