]> git.ipfire.org Git - thirdparty/libcgroup.git/commitdiff
config: add missing ret value check from getgrnam_r()
authorKamalesh Babulal <kamalesh.babulal@oracle.com>
Tue, 31 May 2022 22:52:53 +0000 (16:52 -0600)
committerTom Hromatka <tom.hromatka@oracle.com>
Tue, 31 May 2022 22:52:56 +0000 (16:52 -0600)
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 <kamalesh.babulal@oracle.com>
Signed-off-by: Tom Hromatka <tom.hromatka@oracle.com>
src/config.c

index 32a44b88061f3c6b6898d793960c41713abce932..c0a106a5f6aecc886593c706f143feaa49bcd687 100644 (file)
@@ -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;
                        }