|
@@ -25,7 +25,6 @@ typedef enum QmpCommandOptions
|
|
QCO_ALLOW_OOB = (1U << 1),
|
|
QCO_ALLOW_OOB = (1U << 1),
|
|
QCO_ALLOW_PRECONFIG = (1U << 2),
|
|
QCO_ALLOW_PRECONFIG = (1U << 2),
|
|
QCO_COROUTINE = (1U << 3),
|
|
QCO_COROUTINE = (1U << 3),
|
|
- QCO_DEPRECATED = (1U << 4),
|
|
|
|
} QmpCommandOptions;
|
|
} QmpCommandOptions;
|
|
|
|
|
|
typedef struct QmpCommand
|
|
typedef struct QmpCommand
|
|
@@ -34,6 +33,7 @@ typedef struct QmpCommand
|
|
/* Runs in coroutine context if QCO_COROUTINE is set */
|
|
/* Runs in coroutine context if QCO_COROUTINE is set */
|
|
QmpCommandFunc *fn;
|
|
QmpCommandFunc *fn;
|
|
QmpCommandOptions options;
|
|
QmpCommandOptions options;
|
|
|
|
+ unsigned special_features;
|
|
QTAILQ_ENTRY(QmpCommand) node;
|
|
QTAILQ_ENTRY(QmpCommand) node;
|
|
bool enabled;
|
|
bool enabled;
|
|
const char *disable_reason;
|
|
const char *disable_reason;
|
|
@@ -42,7 +42,8 @@ typedef struct QmpCommand
|
|
typedef QTAILQ_HEAD(QmpCommandList, QmpCommand) QmpCommandList;
|
|
typedef QTAILQ_HEAD(QmpCommandList, QmpCommand) QmpCommandList;
|
|
|
|
|
|
void qmp_register_command(QmpCommandList *cmds, const char *name,
|
|
void qmp_register_command(QmpCommandList *cmds, const char *name,
|
|
- QmpCommandFunc *fn, QmpCommandOptions options);
|
|
|
|
|
|
+ QmpCommandFunc *fn, QmpCommandOptions options,
|
|
|
|
+ unsigned special_features);
|
|
const QmpCommand *qmp_find_command(const QmpCommandList *cmds,
|
|
const QmpCommand *qmp_find_command(const QmpCommandList *cmds,
|
|
const char *name);
|
|
const char *name);
|
|
void qmp_disable_command(QmpCommandList *cmds, const char *name,
|
|
void qmp_disable_command(QmpCommandList *cmds, const char *name,
|