From 5e06dc20ab01317f20e61746d9b6baea4e9f8c9c Mon Sep 17 00:00:00 2001 From: Kamalesh Babulal Date: Tue, 31 May 2022 16:52:53 -0600 Subject: [PATCH] config: add missing ret value check from getgrnam_r() Fix Unchecked return values from library, reported by Coverity tool: CID 258287 (#1 of 1): Unchecked return value from library (CHECKED_RETURN). check_return: Calling getgrnam_r(value, group, buffer, 20480UL, &group_buffer) without checking return value. This library function may fail and return an error code. CID 258303 (#1 of 1): Unchecked return value from library (CHECKED_RETURN). check_return: Calling getgrnam_r(value, group, buffer, 20480UL, &group_buffer) without checking return value. This library function may fail and return an error code. Coverity expects us to check for return value from getgrnam_r(), instead of the current for group_buffer != NULL. Which is right, let's make Coverity happy by moving the check to return value. Signed-off-by: Kamalesh Babulal Signed-off-by: Tom Hromatka --- src/config.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/config.c b/src/config.c index 32a44b88..c0a106a5 100644 --- a/src/config.c +++ b/src/config.c @@ -370,10 +370,8 @@ int config_group_task_perm(char *perm_type, char *value, int flag) if (!group) goto group_task_error; - getgrnam_r(value, group, buffer, - CGROUP_BUFFER_LEN, &group_buffer); - - if (group_buffer == NULL) { + if (getgrnam_r(value, group, buffer, + CGROUP_BUFFER_LEN, &group_buffer) != 0) { free(group); goto group_task_error; } @@ -482,10 +480,8 @@ int config_group_admin_perm(char *perm_type, char *value, int flag) if (!group) goto admin_error; - getgrnam_r(value, group, buffer, - CGROUP_BUFFER_LEN, &group_buffer); - - if (group_buffer == NULL) { + if (getgrnam_r(value, group, buffer, + CGROUP_BUFFER_LEN, &group_buffer) != 0) { free(group); goto admin_error; } -- 2.47.2