[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2] util/id: fully allocate names table
From: |
John Snow |
Subject: |
[Qemu-devel] [PATCH v2] util/id: fully allocate names table |
Date: |
Wed, 25 Nov 2015 16:03:37 -0500 |
Trivial: this array should be allocated to have ID_MAX entries always.
Otherwise if someone were to forget to expand this table, the assertion
in the id generator won't actually trigger; it will read junk data.
v2: Fix the range assertion, too. Compare against the known actual size
of the table instead of what it "should" be.
Signed-off-by: John Snow <address@hidden>
---
util/id.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/util/id.c b/util/id.c
index bcc64d8..7883fbe 100644
--- a/util/id.c
+++ b/util/id.c
@@ -29,7 +29,7 @@ bool id_wellformed(const char *id)
#define ID_SPECIAL_CHAR '#'
-static const char *const id_subsys_str[] = {
+static const char *const id_subsys_str[ID_MAX] = {
[ID_QDEV] = "qdev",
[ID_BLOCK] = "block",
};
@@ -53,7 +53,7 @@ char *id_generate(IdSubSystems id)
static uint64_t id_counters[ID_MAX];
uint32_t rnd;
- assert(id < ID_MAX);
+ assert(id < ARRAY_SIZE(id_subsys_str));
assert(id_subsys_str[id]);
rnd = g_random_int_range(0, 100);
--
2.4.3
- [Qemu-devel] [PATCH v2] util/id: fully allocate names table,
John Snow <=