Revision 586153d9 vnc.c

b/vnc.c
269 269
    client->info = QOBJECT(qdict);
270 270
}
271 271

  
272
static void vnc_qmp_event(VncState *vs, MonitorEvent event)
273
{
274
    QDict *server;
275
    QObject *data;
276

  
277
    if (!vs->info) {
278
        return;
279
    }
280

  
281
    server = qdict_new();
282
    if (vnc_server_info_put(server) < 0) {
283
        QDECREF(server);
284
        return;
285
    }
286

  
287
    data = qobject_from_jsonf("{ 'client': %p, 'server': %p }",
288
                              vs->info, QOBJECT(server));
289

  
290
    monitor_protocol_event(event, data);
291

  
292
    qobject_incref(vs->info);
293
    qobject_decref(data);
294
}
295

  
272 296
static void info_vnc_iter(QObject *obj, void *opaque)
273 297
{
274 298
    QDict *client;
......
2396 2420
    qemu_set_fd_handler2(vs->csock, NULL, vnc_client_read, NULL, vs);
2397 2421

  
2398 2422
    vnc_client_cache_addr(vs);
2423
    vnc_qmp_event(vs, QEVENT_VNC_CONNECTED);
2399 2424

  
2400 2425
    vs->vd = vd;
2401 2426
    vs->ds = vd->ds;

Also available in: Unified diff