[dm-devel] [dm- devel][PATCH] vector: add lower bound check of E in VECTOR_SLOT
Zhiqiang Liu
liuzhiqiang26 at huawei.com
Mon Aug 3 02:41:48 UTC 2020
In VECTOR_SLOT(V, E), we add the lower bound check of E.
E cannot be less than zero.
Signed-off-by: Zhiqiang Liu <liuzhiqiang26 at huawei.com>
---
libmultipath/vector.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libmultipath/vector.h b/libmultipath/vector.h
index e16ec461..cdb94b24 100644
--- a/libmultipath/vector.h
+++ b/libmultipath/vector.h
@@ -32,7 +32,7 @@ typedef struct _vector *vector;
#define VECTOR_DEFAULT_SIZE 1
#define VECTOR_SIZE(V) ((V) ? ((V)->allocated) / VECTOR_DEFAULT_SIZE : 0)
-#define VECTOR_SLOT(V,E) (((V) && (E) < VECTOR_SIZE(V)) ? (V)->slot[(E)] : NULL)
+#define VECTOR_SLOT(V,E) (((V) && (E) < VECTOR_SIZE(V) && (E) >= 0) ? (V)->slot[(E)] : NULL)
#define VECTOR_LAST_SLOT(V) (((V) && VECTOR_SIZE(V) > 0) ? (V)->slot[(VECTOR_SIZE(V) - 1)] : NULL)
#define vector_foreach_slot(v,p,i) \
--
2.24.0.windows.2
More information about the dm-devel
mailing list