From ae2d4a28f08f02df3da67614497842059704c21b Mon Sep 17 00:00:00 2001 From: zhaohang Date: Wed, 18 Sep 2024 10:28:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8D=A2=E4=B8=80=E7=A7=8D=E6=94=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhaohang --- interfaces/inner_api/syscap_interface.c | 5 +++++ src/main.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/interfaces/inner_api/syscap_interface.c b/interfaces/inner_api/syscap_interface.c index 0580c69..ffaec32 100644 --- a/interfaces/inner_api/syscap_interface.c +++ b/interfaces/inner_api/syscap_interface.c @@ -625,6 +625,11 @@ static int32_t ComparePcidWithPriSyscap(struct PcidPriSyscapInfo pcidPriSyscapIn free(temp); return -1; } + if (pcidPriSyscapInfo.ossyscapFlag + prisyscapFlag >= MAX_MISS_SYSCAP) + { + PRINT_ERR("array index out of bounds.\n"); + return -1; + } result->syscap[pcidPriSyscapInfo.ossyscapFlag + prisyscapFlag] = temp; ++prisyscapFlag; } diff --git a/src/main.c b/src/main.c index 2fd051a..be00763 100644 --- a/src/main.c +++ b/src/main.c @@ -74,9 +74,9 @@ int main(int argc, char **argv) int32_t ret; uint16_t bitMap = 0x0; char curpath[PATH_MAX] = {0}; - g_customerfileinfo.inputfile = NULL; - g_customerfileinfo.pcidfile = NULL; - g_customerfileinfo.rpcidfile = NULL; + g_customerfileinfo.inputfile = ""; + g_customerfileinfo.pcidfile = ""; + g_customerfileinfo.rpcidfile = ""; char *outputpath = getcwd(curpath, sizeof(curpath)); if (outputpath == NULL) { PRINT_ERR("Get outputpath failed.\n");