ECS__Master master = ECS__MASTER__INIT;
ECS__MonitorNtf ntf = ECS__MONITOR_NTF__INIT;
- TRACE("data size : %d, data : %s\n", size, data);
+ LOG_INFO("data size : %d, data : %s\n", size, data);
ntf.command = (char *) g_malloc(size + 1);
memcpy(ntf.command, data, size);
static void ecs_monitor_flush(Monitor *mon)
{
- if (mon && mon->outbuf != NULL) {
+ if (mon->outbuf != NULL) {
bool ret = send_monitor_ntf(qstring_get_str(mon->outbuf), qstring_get_length(mon->outbuf));
- qstring_free(mon->outbuf, false);
- mon->outbuf = NULL;
- TRACE("ecs_monitor_flush return value of send_monitor_ntf : %d, \n", ret);
+ LOG_INFO("ecs_monitor_flush return value of send_monitor_ntf : %d, \n", ret);
+ qobject_unref(mon->outbuf);
+ mon->outbuf = qstring_new();
}
}
str = "\n";
}
- LOG_INFO("ecs_monitor_puts - data: %s", str);
+ LOG_INFO("ecs_monitor_puts - data: %s\n", str);
for (i = 0; str[i]; i++) {
c = str[i];
if (c == '\n') {
-#ifdef _WIN32
+#ifdef CONFIG_WIN32
qstring_append_chr(mon->outbuf, '\r');
-#endif // _WIN32
+#endif // CONFIG_WIN32
}
qstring_append_chr(mon->outbuf, c);
- if (c == '\n') {
- ecs_monitor_flush(mon);
- }
}
+
+ ecs_monitor_flush(mon);
}
static QDict *build_qmp_error_dict(Error *err)
{
const QObject *data = QOBJECT(rsp);
QString *json;
-
- //Add type in response
- if (mon->common.outbuf) {
- qdict_put(rsp, "type", mon->common.outbuf);
- qstring_free(mon->common.outbuf , false);
- mon->common.outbuf = NULL;
- } else {
- qdict_put_str(rsp, "type", "unknown");
- }
+ LOG_INFO("ecs_monitor_qmp_respond: qobject_to_json_pretty\n");
json = mon->pretty ? qobject_to_json_pretty(data) : qobject_to_json(data);
assert(json != NULL);
qobject_unref(json);
}
-static bool ecs_qmp_oob_enabled(MonitorQMP *mon)
-{
- return mon->capab[QMP_CAPABILITY_OOB];
-}
-
static void ecs_monitor_qmp_dispatch(MonitorQMP *mon, QObject *req)
{
Monitor *old_mon;
old_mon = cur_mon;
cur_mon = &mon->common;
- rsp = qmp_dispatch(mon->commands, req, ecs_qmp_oob_enabled(mon));
+ rsp = qmp_dispatch(mon->commands, req, true);
cur_mon = old_mon;
Error *local_err = NULL;
assert(!req != !err);
+ assert(mon != NULL);
if (err) {
local_err = err;
if (qdict) {
id = qdict_get(qdict, "id");
if (qdict_haskey(qdict, "type")) {
- //store type in outbuf to return in response
- mon->common.outbuf = qobject_to(QString, qdict_get(qdict, "type"));
+ //TODO: store type in outbuf to return in response
qdict_del(qdict, "type");
}
} /* else will fail qmp_dispatch() */