Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
Don't leak smbios_strerror() memory.
Covscan noticed: Error: RESOURCE_LEAK (CWE-772): [#def35] libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:310: alloc_fn: Storage is returned from allocation function "smbios_strerror". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:78:9: alloc_fn: Storage is returned from allocation function "strdup". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:78:9: var_assign: Assigning: "ret" = "strdup(smbios_table_strerror(table))". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:83:5: return_alloc: Returning allocated memory "ret". libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:310: noescape: Resource "smbios_strerror()" is not freed or pointed-to in "fprintf". libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:310: leaked_storage: Failing to save or free storage allocated by "smbios_strerror()" leaks it. Error: RESOURCE_LEAK (CWE-772): [#def36] libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:311: alloc_fn: Storage is returned from allocation function "smbios_strerror". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:78:9: alloc_fn: Storage is returned from allocation function "strdup". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:78:9: var_assign: Assigning: "ret" = "strdup(smbios_table_strerror(table))". libsmbios-2.3.3/src/libsmbios_c/smbios/smbios.c:83:5: return_alloc: Returning allocated memory "ret". libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:311: noescape: Resource "smbios_strerror()" is not freed or pointed-to in "strlcat". libsmbios-2.3.3/src/libsmbios_c/common/strlcat.c:31:32: noescape: "strlcat(char *, char const *, size_t)" does not free or save its parameter "src". libsmbios-2.3.3/src/libsmbios_c/smi/smi_obj.c:311: leaked_storage: Failing to save or free storage allocated by "smbios_strerror()" leaks it. This patch checks that returned allocation and frees it when we're done. Signed-off-by: Peter Jones <pjones@redhat.com>
- Loading branch information