[modify][components][utilities]check if the ve_exporter_num is out of bounds.
Signed-off-by: WillianChan <chentingwei@rt-thread.com>
This commit is contained in:
parent
4b2913a898
commit
e53ae3ddfa
|
@ -69,6 +69,9 @@ int var_export_init(void)
|
||||||
ve_exporter_table = (const ve_exporter_t *)ptr_begin;
|
ve_exporter_table = (const ve_exporter_t *)ptr_begin;
|
||||||
ve_exporter_num = (ptr_end - ptr_begin) / (sizeof(struct ve_exporter) / sizeof(unsigned int)) + 1;
|
ve_exporter_num = (ptr_end - ptr_begin) / (sizeof(struct ve_exporter) / sizeof(unsigned int)) + 1;
|
||||||
|
|
||||||
|
/* check if the ve_exporter_num is out of bounds */
|
||||||
|
RT_ASSERT(ve_exporter_num < (sizeof(ve_exporter_tab) / sizeof(ve_exporter_t)));
|
||||||
|
|
||||||
for (index_i = 0; index_i < ve_exporter_num; index_i++)
|
for (index_i = 0; index_i < ve_exporter_num; index_i++)
|
||||||
{
|
{
|
||||||
ve_exporter_tab[index_i] = ve_exporter_table[index_i];
|
ve_exporter_tab[index_i] = ve_exporter_table[index_i];
|
||||||
|
|
|
@ -67,7 +67,7 @@ static int ve_find_module(int argc, char **argv)
|
||||||
exporter = ve_iter_next(&iter);
|
exporter = ve_iter_next(&iter);
|
||||||
if (exporter == RT_NULL)
|
if (exporter == RT_NULL)
|
||||||
{
|
{
|
||||||
return RT_EOK;
|
return -RT_ERROR;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -104,7 +104,7 @@ static int ve_find_value(int argc, char **argv)
|
||||||
exporter = ve_iter_next(&iter);
|
exporter = ve_iter_next(&iter);
|
||||||
if (exporter == RT_NULL)
|
if (exporter == RT_NULL)
|
||||||
{
|
{
|
||||||
return RT_EOK;
|
return -RT_ERROR;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue