Given a string state, we need a way to get the RunState for that string.
Signed-off-by: Juan Quintela <[email protected]>
---
include/sysemu/sysemu.h | 1 +
vl.c | 13 +++++++++++++
2 files changed, 14 insertions(+)
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index ae217da..2a6e669 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -29,6 +29,7 @@ void runstate_set(RunState new_state);
int runstate_is_running(void);
bool runstate_needs_reset(void);
int runstate_store(char *str, int size);
+RunState runstate_index(char *str);
typedef struct vm_change_state_entry VMChangeStateEntry;
typedef void VMChangeStateHandler(void *opaque, int running, RunState state);
diff --git a/vl.c b/vl.c
index ce8e28b..c4bc43c 100644
--- a/vl.c
+++ b/vl.c
@@ -687,6 +687,19 @@ int runstate_store(char *str, int size)
return 0;
}
+RunState runstate_index(char *str)
+{
+ RunState i = 0;
+
+ while (i != RUN_STATE_MAX) {
+ if (strcmp(str, RunState_lookup[i]) == 0) {
+ return i;
+ }
+ i++;
+ }
+ return -1;
+}
+
static void runstate_init(void)
{
const RunStateTransition *p;
--
2.1.0