From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38633) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XeJQc-0003GW-Vr for qemu-devel@nongnu.org; Wed, 15 Oct 2014 03:55:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XeJQW-0006y4-7q for qemu-devel@nongnu.org; Wed, 15 Oct 2014 03:55:26 -0400 Received: from mx1.redhat.com ([209.132.183.28]:30721) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XeJQW-0006y0-0K for qemu-devel@nongnu.org; Wed, 15 Oct 2014 03:55:20 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s9F7tJQ2025117 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Wed, 15 Oct 2014 03:55:19 -0400 From: Juan Quintela Date: Wed, 15 Oct 2014 09:55:06 +0200 Message-Id: <1413359710-2799-4-git-send-email-quintela@redhat.com> In-Reply-To: <1413359710-2799-1-git-send-email-quintela@redhat.com> References: <1413359710-2799-1-git-send-email-quintela@redhat.com> Subject: [Qemu-devel] [PATCH 3/7] runstate: create runstate_index function List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, laine@redhat.com, lcapitulino@redhat.com Given a string state, we need a way to get the RunState for that string. Signed-off-by: Juan Quintela --- 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