~ubuntu-branches/ubuntu/wily/qemu-kvm-spice/wily

« back to all changes in this revision

Viewing changes to qapi/qmp-registry.c

  • Committer: Bazaar Package Importer
  • Author(s): Serge Hallyn
  • Date: 2011-10-19 10:44:56 UTC
  • Revision ID: james.westby@ubuntu.com-20111019104456-xgvskumk3sxi97f4
Tags: upstream-0.15.0+noroms
ImportĀ upstreamĀ versionĀ 0.15.0+noroms

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Core Definitions for QAPI/QMP Dispatch
 
3
 *
 
4
 * Copyright IBM, Corp. 2011
 
5
 *
 
6
 * Authors:
 
7
 *  Anthony Liguori   <aliguori@us.ibm.com>
 
8
 *  Michael Roth      <mdroth@us.ibm.com>
 
9
 *
 
10
 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
 
11
 * See the COPYING.LIB file in the top-level directory.
 
12
 *
 
13
 */
 
14
 
 
15
#include "qapi/qmp-core.h"
 
16
 
 
17
static QTAILQ_HEAD(, QmpCommand) qmp_commands =
 
18
    QTAILQ_HEAD_INITIALIZER(qmp_commands);
 
19
 
 
20
void qmp_register_command(const char *name, QmpCommandFunc *fn)
 
21
{
 
22
    QmpCommand *cmd = qemu_mallocz(sizeof(*cmd));
 
23
 
 
24
    cmd->name = name;
 
25
    cmd->type = QCT_NORMAL;
 
26
    cmd->fn = fn;
 
27
    QTAILQ_INSERT_TAIL(&qmp_commands, cmd, node);
 
28
}
 
29
 
 
30
QmpCommand *qmp_find_command(const char *name)
 
31
{
 
32
    QmpCommand *i;
 
33
 
 
34
    QTAILQ_FOREACH(i, &qmp_commands, node) {
 
35
        if (strcmp(i->name, name) == 0) {
 
36
            return i;
 
37
        }
 
38
    }
 
39
    return NULL;
 
40
}