dhcp: nettools: check return value of g_file_set_contents()
Found by covscan:
NetworkManager-1.22.0/src/dhcp/nm-dhcp-nettools.c:945: check_return:
Calling "g_file_set_contents" without checking return value (as is
done elsewhere 16 out of 20 times).
Fixes: 9f89516928
('dhcp: nettools: read/write lease files')
This commit is contained in:
@@ -924,11 +924,12 @@ lease_to_ip4_config (NMDedupMultiIndex *multi_idx,
|
|||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
lease_save (NDhcp4ClientLease *lease, const char *lease_file)
|
lease_save (NMDhcpNettools *self, NDhcp4ClientLease *lease, const char *lease_file)
|
||||||
{
|
{
|
||||||
struct in_addr a_address;
|
struct in_addr a_address;
|
||||||
nm_auto_free_gstring GString *new_contents = NULL;
|
nm_auto_free_gstring GString *new_contents = NULL;
|
||||||
char sbuf[NM_UTILS_INET_ADDRSTRLEN];
|
char sbuf[NM_UTILS_INET_ADDRSTRLEN];
|
||||||
|
gs_free_error GError *error = NULL;
|
||||||
|
|
||||||
nm_assert (lease);
|
nm_assert (lease);
|
||||||
nm_assert (lease_file);
|
nm_assert (lease_file);
|
||||||
@@ -942,10 +943,11 @@ lease_save (NDhcp4ClientLease *lease, const char *lease_file)
|
|||||||
g_string_append_printf (new_contents,
|
g_string_append_printf (new_contents,
|
||||||
"ADDRESS=%s\n", nm_utils_inet4_ntop (a_address.s_addr, sbuf));
|
"ADDRESS=%s\n", nm_utils_inet4_ntop (a_address.s_addr, sbuf));
|
||||||
|
|
||||||
g_file_set_contents (lease_file,
|
if (!g_file_set_contents (lease_file,
|
||||||
new_contents->str,
|
new_contents->str,
|
||||||
-1,
|
-1,
|
||||||
NULL);
|
&error))
|
||||||
|
_LOGW ("error saving lease to %s: %s", lease_file, error->message);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -975,7 +977,7 @@ bound4_handle (NMDhcpNettools *self, NDhcp4ClientLease *lease)
|
|||||||
}
|
}
|
||||||
|
|
||||||
nm_dhcp_option_add_requests_to_options (options, _nm_dhcp_option_dhcp4_options);
|
nm_dhcp_option_add_requests_to_options (options, _nm_dhcp_option_dhcp4_options);
|
||||||
lease_save (lease, priv->lease_file);
|
lease_save (self, lease, priv->lease_file);
|
||||||
|
|
||||||
nm_dhcp_client_set_state (NM_DHCP_CLIENT (self),
|
nm_dhcp_client_set_state (NM_DHCP_CLIENT (self),
|
||||||
NM_DHCP_STATE_BOUND,
|
NM_DHCP_STATE_BOUND,
|
||||||
|
Reference in New Issue
Block a user