]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-lldp-rx: make lldp_rx_free() and lldp_neighbor_free() accept NULL 20861/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 28 Sep 2021 06:51:59 +0000 (15:51 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 28 Sep 2021 08:55:19 +0000 (17:55 +0900)
src/libsystemd-network/lldp-neighbor.c
src/libsystemd-network/sd-lldp-rx.c

index 4ae78d25dfc035b9679a7e2b6385c82d1e8ec6d6..48c2142b1e991983762bcd854333f2f6c14eb1fb 100644 (file)
@@ -55,8 +55,9 @@ _public_ sd_lldp_neighbor *sd_lldp_neighbor_ref(sd_lldp_neighbor *n) {
         return n;
 }
 
-static void lldp_neighbor_free(sd_lldp_neighbor *n) {
-        assert(n);
+static sd_lldp_neighbor *lldp_neighbor_free(sd_lldp_neighbor *n) {
+        if (!n)
+                return NULL;
 
         free(n->id.port_id);
         free(n->id.chassis_id);
@@ -66,7 +67,7 @@ static void lldp_neighbor_free(sd_lldp_neighbor *n) {
         free(n->mud_url);
         free(n->chassis_id_as_string);
         free(n->port_id_as_string);
-        free(n);
+        return mfree(n);
 }
 
 _public_ sd_lldp_neighbor *sd_lldp_neighbor_unref(sd_lldp_neighbor *n) {
index 05dec99d5106308e626b70c4748ff7e0893bc0d3..98bde8b306839b79b48448dee307348fd60dc9a2 100644 (file)
@@ -367,7 +367,8 @@ const char *sd_lldp_rx_get_ifname(sd_lldp_rx *lldp_rx) {
 }
 
 static sd_lldp_rx *lldp_rx_free(sd_lldp_rx *lldp_rx) {
-        assert(lldp_rx);
+        if (!lldp_rx)
+                return NULL;
 
         lldp_rx_reset(lldp_rx);