fix: 内核告警修复

【背景】
经代码扫描工具检测,内核代码中存在
可以修复的告警

【修改方案】
1.将单语句的if, while等加上括号
2.将C语言风格的类型转换变为C++风格

【影响】
对现有的产品编译不会有影响。

Signed-off-by: yinjiaming <yinjiaming@huawei.com>
Change-Id: I7d4a04a8904abb3c33e843049bf15f4386d3efd8
This commit is contained in:
yinjiaming
2022-09-09 11:50:48 +08:00
parent 71e51d8813
commit 96b2d557ac
155 changed files with 532 additions and 460 deletions

View File

@@ -55,7 +55,7 @@ static int Testcase(void)
handle = dlopen(LIBCSO_REAL_PATH, RTLD_NOW);
ICUNIT_ASSERT_NOT_EQUAL(handle, NULL, handle);
func = (int (*)(int))dlsym(handle, SYMBOL_TO_FIND);
func = reinterpret_cast<int (*)(int)>(dlsym(handle, SYMBOL_TO_FIND));
ICUNIT_GOTO_NOT_EQUAL(func, NULL, func, EXIT);
ICUNIT_GOTO_EQUAL(func, SYMBOL_TO_MATCH, func, EXIT);
@@ -65,7 +65,7 @@ static int Testcase(void)
handle = dlopen(LIBCSO_RELATIVE_PATH, RTLD_NOW);
ICUNIT_ASSERT_NOT_EQUAL(handle, NULL, handle);
func = (int (*)(int))dlsym(handle, SYMBOL_TO_FIND);
func = reinterpret_cast<int (*)(int)>(dlsym(handle, SYMBOL_TO_FIND));
ICUNIT_GOTO_NOT_EQUAL(func, NULL, func, EXIT);
ret = dlclose(handle);

View File

@@ -41,7 +41,7 @@ static int TestCase(void)
wchar_t res2[] = L"abcdmngh";
wchar_t *p, *pnew;
pnew = (wchar_t*)malloc(sizeof(wchar_t) * (wcslen(res) + wcslen(res1)));
pnew = static_cast<wchar_t *>(malloc(sizeof(wchar_t) * (wcslen(res) + wcslen(res1))));
ICUNIT_ASSERT_NOT_EQUAL(pnew, NULL, pnew);
p = wmempcpy(pnew, res, wcslen(res));

View File

@@ -91,7 +91,7 @@ VOID *ShmWriteFunc(VOID *ptr)
shmid = shmget((key_t)1234, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
ICUNIT_ASSERT_NOT_EQUAL_NULL_VOID(shmid, -1, shmid);
shm = shmat(shmid, (void *)0, 0);
shm = shmat(shmid, nullptr, 0);
ICUNIT_ASSERT_NOT_EQUAL_NULL_VOID(shm, INVALID_PTR, shm);
printf("Memory attached at %p\n", shm);

View File

@@ -49,13 +49,13 @@ static int Testcase(VOID)
shm = shmat(shmid, NULL, SHM_REMAP);
ICUNIT_ASSERT_EQUAL(errno, EINVAL, errno);
shm = shmat(shmid, (const void *)0x100, 0);
shm = shmat(shmid, reinterpret_cast<const void *>(0x100), 0);
ICUNIT_ASSERT_EQUAL(errno, EINVAL, errno);
shm = shmat(shmid, NULL, 0);
ICUNIT_ASSERT_NOT_EQUAL(shm, (void *)-1, shm);
ICUNIT_ASSERT_NOT_EQUAL(shm, reinterpret_cast<void *>(-1), shm);
ret = shmdt((const void *)0x100);
ret = shmdt(reinterpret_cast<const void *>(0x100));
ICUNIT_ASSERT_EQUAL(ret, -1, shmid);
ICUNIT_ASSERT_EQUAL(errno, EINVAL, errno);

View File

@@ -42,14 +42,14 @@ static int Testcase(VOID)
ICUNIT_ASSERT_NOT_EQUAL(shmid, -1, shmid);
shared = shmat(shmid, 0, 0);
ICUNIT_ASSERT_NOT_EQUAL(shared, (void *)-1, shared);
ICUNIT_ASSERT_NOT_EQUAL(shared, reinterpret_cast<void *>(-1), shared);
ret = shmdt(shared);
ICUNIT_ASSERT_NOT_EQUAL(ret, -1, ret);
remap = shared;
shared = shmat(shmid, remap, SHM_REMAP);
ICUNIT_ASSERT_NOT_EQUAL(shared, (void *)-1, shared);
ICUNIT_ASSERT_NOT_EQUAL(shared, reinterpret_cast<void *>(-1), shared);
ret = shmdt(shared);
ICUNIT_ASSERT_NOT_EQUAL(ret, -1, ret);

View File

@@ -47,7 +47,7 @@ static int Testcase(void)
ret = fork();
if (ret == 0) {
usleep(100000);
if ((shared = (char *)shmat(shmid, 0, 0)) == (void *)-1) {
if ((shared = static_cast<char *>(shmat(shmid, 0, 0))) == reinterpret_cast<void *>(-1)) {
printf("child : error: shmat()\n");
exit(1);
}
@@ -72,8 +72,8 @@ static int Testcase(void)
pid = ret;
usleep(50000);
shared = (char *)shmat(shmid, 0, 0);
ICUNIT_ASSERT_NOT_EQUAL(shared, (void *)-1, shared);
shared = static_cast<char *>(shmat(shmid, 0, 0));
ICUNIT_ASSERT_NOT_EQUAL(shared, reinterpret_cast<void *>(-1), shared);
ret = strncpy_s(shared, memSize, testStr, sizeof(testStr));
ICUNIT_ASSERT_EQUAL(ret, 0, ret);

View File

@@ -42,11 +42,11 @@ static int Testcase(void)
ICUNIT_ASSERT_NOT_EQUAL(shmid, -1, shmid);
shared = shmat(shmid, 0, 0);
ICUNIT_ASSERT_EQUAL(shared, (void *)-1, shared);
ICUNIT_ASSERT_EQUAL(shared, reinterpret_cast<void *>(-1), shared);
ICUNIT_ASSERT_EQUAL(errno, EACCES, errno);
shared = shmat(shmid, 0, SHM_RDONLY);
ICUNIT_ASSERT_NOT_EQUAL(shared, (void *)-1, shared);
ICUNIT_ASSERT_NOT_EQUAL(shared, reinterpret_cast<void *>(-1), shared);
ret = shmdt(shared);
ICUNIT_ASSERT_NOT_EQUAL(ret, -1, ret);

View File

@@ -88,14 +88,14 @@ static int Testcase(void)
int ret;
int pid;
void *ptr = (void *)signal(SIGTERM, ExitChildren);
void *ptr = reinterpret_cast<void *>(signal(SIGTERM, ExitChildren));
ICUNIT_ASSERT_NOT_EQUAL(ptr, NULL, ptr);
shmid = shmget(IPC_PRIVATE, sizeof(int), IPC_CREAT | 0600);
ICUNIT_ASSERT_NOT_EQUAL(shmid, -1, shmid);
g_shmptr = (int *)shmat(shmid, 0, 0);
ICUNIT_ASSERT_NOT_EQUAL(g_shmptr, (int *)-1, g_shmptr);
ICUNIT_ASSERT_NOT_EQUAL(g_shmptr, reinterpret_cast<int *>(-1), g_shmptr);
*g_shmptr = 0;

View File

@@ -43,9 +43,9 @@ static int testcase(void)
shmfd = shm_open("test_1", O_RDWR | O_CREAT | O_EXCL, 0644);
ICUNIT_ASSERT_NOT_EQUAL(shmfd, -1, shmfd);
writebuf = (char*)malloc(pageSize);
writebuf = static_cast<char *>(malloc(pageSize));
ICUNIT_ASSERT_NOT_EQUAL(writebuf, NULL, writebuf);
readbuf = (char*)malloc(pageSize);
readbuf = static_cast<char *>(malloc(pageSize));
ICUNIT_GOTO_NOT_EQUAL(readbuf, NULL, readbuf, EXIT);
(void)memset_s(writebuf, pageSize, 0xf, pageSize);

View File

@@ -49,9 +49,9 @@ static int testcase(void)
shmfd = shm_open("test_2", O_RDONLY | O_CREAT, 00664);
ICUNIT_ASSERT_NOT_EQUAL(shmfd, -1, shmfd);
writebuf = (char*)malloc(pageSize);
writebuf = static_cast<char *>(malloc(pageSize));
ICUNIT_ASSERT_NOT_EQUAL(writebuf, NULL, writebuf);
readbuf = (char*)malloc(pageSize);
readbuf = static_cast<char *>(malloc(pageSize));
ICUNIT_ASSERT_NOT_EQUAL(readbuf, NULL, readbuf);
(void)memset_s(writebuf, pageSize, 0xf, pageSize);

View File

@@ -45,7 +45,7 @@ static int Testcase(void)
ret = fork();
if (ret == 0) {
shared = (int *)shmat(shmid, NULL, 0);
if (shared == (int *)-1) {
if (shared == reinterpret_cast<int *>(-1)) {
exit(1);
}
*shared = 2;
@@ -55,7 +55,7 @@ static int Testcase(void)
} else {
usleep(20000);
shared = (int *)shmat(shmid, NULL, 0);
ICUNIT_ASSERT_NOT_EQUAL(shared, (int *)-1, shared);
ICUNIT_ASSERT_NOT_EQUAL(shared, reinterpret_cast<int *>(-1), shared);
ICUNIT_ASSERT_EQUAL(*shared, 2, *shared);

View File

@@ -71,7 +71,7 @@ static int Testcase(void)
printf("err: malloc size invalid\n");
return -1;
}
buf = (char *)malloc(pageSize);
buf = static_cast<char *>(malloc(pageSize));
ICUNIT_ASSERT_NOT_EQUAL(buf, NULL, buf);
(void)memset_s(buf, pageSize, 0xf, pageSize);

View File

@@ -49,7 +49,7 @@ static int Testcase(void)
fd = open(file, O_CREAT | O_RDWR, S_IRWXU | S_IRWXG | S_IRWXO);
ICUNIT_ASSERT_NOT_EQUAL(fd, -1, fd);
invalueAddr = (void *)(VALIDE_ADDR | ADDR_OFFSET);
invalueAddr = reinterpret_cast<void *>(VALIDE_ADDR | ADDR_OFFSET);
mem = mmap(invalueAddr, len, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_FIXED, fd, 0);
ICUNIT_GOTO_EQUAL(mem, MAP_FAILED, mem, EXIT);
ICUNIT_GOTO_EQUAL(errno, EINVAL, errno, EXIT);

View File

@@ -40,24 +40,26 @@ static int Testcase(void)
const char *str = "Hi, OHOS.";
/* sigprocmask 内核系统调用接口通过arch_copy_from_user拷贝用户参数 */
ret = sigprocmask(SIG_BLOCK, (sigset_t *)1, &oldset);
ret = sigprocmask(SIG_BLOCK, reinterpret_cast<sigset_t *>(1), &oldset);
ICUNIT_ASSERT_EQUAL(ret, -1, ret);
ICUNIT_ASSERT_EQUAL(errno, EFAULT, errno);
ret = sigprocmask(SIG_BLOCK, (sigset_t *)INVALID_USER_VADDR, &oldset);
ret = sigprocmask(SIG_BLOCK, reinterpret_cast<sigset_t *>(INVALID_USER_VADDR), &oldset);
ICUNIT_ASSERT_EQUAL(ret, -1, ret);
ICUNIT_ASSERT_EQUAL(errno, EFAULT, errno);
/* sigprocmask 内核系统调用接口通过arch_copy_to_user将内核参数拷贝至用户 */
ret = sigprocmask(SIG_BLOCK, (sigset_t *)INVALID_USER_VADDR, (sigset_t *)1);
ret = sigprocmask(SIG_BLOCK, reinterpret_cast<sigset_t *>(INVALID_USER_VADDR), reinterpret_cast<sigset_t *>(1));
ICUNIT_ASSERT_EQUAL(ret, -1, ret);
ICUNIT_ASSERT_EQUAL(errno, EFAULT, errno);
ret = sigprocmask(SIG_BLOCK, (sigset_t *)INVALID_USER_VADDR, (sigset_t *)INVALID_USER_VADDR);
ret = sigprocmask(SIG_BLOCK, reinterpret_cast<sigset_t *>(INVALID_USER_VADDR),
reinterpret_cast<sigset_t *>(INVALID_USER_VADDR));
ICUNIT_ASSERT_EQUAL(ret, -1, ret);
ICUNIT_ASSERT_EQUAL(errno, EFAULT, errno);
ret = sigprocmask(SIG_BLOCK, (sigset_t *)INVALID_USER_VADDR, (sigset_t *)str);
ret = sigprocmask(SIG_BLOCK, reinterpret_cast<sigset_t *>(INVALID_USER_VADDR),
reinterpret_cast<sigset_t *>(const_cast<char *>(str)));
ICUNIT_ASSERT_EQUAL(ret, -1, ret);
ICUNIT_ASSERT_EQUAL(errno, EFAULT, errno);