From 66d233026526215f27372aaca4ccd56186762d86 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Wed, 3 Mar 2021 16:42:18 +0900 Subject: [PATCH] network: do not remove LLDP state file on failure --- src/network/networkd-lldp-rx.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/network/networkd-lldp-rx.c b/src/network/networkd-lldp-rx.c index 068adca5711..bf1dd045b87 100644 --- a/src/network/networkd-lldp-rx.c +++ b/src/network/networkd-lldp-rx.c @@ -135,7 +135,7 @@ int link_update_lldp(Link *link) { } int link_lldp_save(Link *link) { - _cleanup_free_ char *temp_path = NULL; + _cleanup_(unlink_and_freep) char *temp_path = NULL; _cleanup_fclose_ FILE *f = NULL; sd_lldp_neighbor **l = NULL; int n = 0, r, i; @@ -150,10 +150,10 @@ int link_lldp_save(Link *link) { r = sd_lldp_get_neighbors(link->lldp, &l); if (r < 0) - goto finish; + return r; if (r == 0) { (void) unlink(link->lldp_file); - goto finish; + return 0; } n = r; @@ -187,13 +187,8 @@ int link_lldp_save(Link *link) { goto finish; finish: - if (r < 0) { - (void) unlink(link->lldp_file); - if (temp_path) - (void) unlink(temp_path); - + if (r < 0) log_link_error_errno(link, r, "Failed to save LLDP data to %s: %m", link->lldp_file); - } if (l) { for (i = 0; i < n; i++) -- 2.47.3