From: Michael Vogt Date: Sat, 28 Mar 2026 11:02:32 +0000 (+0100) Subject: network: make check-pointer-deref clean X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3e9eaf45f022d116d31bd7906b1bcfdba2a88ecc;p=thirdparty%2Fsystemd.git network: make check-pointer-deref clean Add the needed assert changes to make the code clean for the new check-pointer-deref script. --- diff --git a/meson.build b/meson.build index bb4a2fbeea6..674c2fef64f 100644 --- a/meson.build +++ b/meson.build @@ -2980,7 +2980,6 @@ if spatch.found() 'src/basic/', 'src/core/', 'src/libsystemd/', - 'src/network/', 'src/shared/', # libc/ has no assert() or systemd-headers so leave it 'src/libc/', diff --git a/src/network/generator/network-generator.c b/src/network/generator/network-generator.c index d0204366fb6..2c3a8bf6aac 100644 --- a/src/network/generator/network-generator.c +++ b/src/network/generator/network-generator.c @@ -119,6 +119,7 @@ static int address_new( assert(network); assert(IN_SET(family, AF_INET, AF_INET6)); assert(addr); + POINTER_MAY_BE_NULL(peer); address = new(Address, 1); if (!address) diff --git a/src/network/netdev/macsec.c b/src/network/netdev/macsec.c index 0b999b4b8a6..9f3ddcc2b19 100644 --- a/src/network/netdev/macsec.c +++ b/src/network/netdev/macsec.c @@ -125,6 +125,7 @@ static int macsec_receive_channel_new(MACsec *s, uint64_t sci, ReceiveChannel ** ReceiveChannel *c; assert(s); + assert(ret); c = new(ReceiveChannel, 1); if (!c) diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c index 393114aa7ba..bde8d2db05f 100644 --- a/src/network/netdev/netdev.c +++ b/src/network/netdev/netdev.c @@ -277,6 +277,7 @@ static int netdev_attach_name_full(NetDev *netdev, const char *name, Hashmap **n assert(netdev); assert(name); + assert(netdevs); r = hashmap_ensure_put(netdevs, &string_hash_ops, name, netdev); if (r == -ENOMEM) diff --git a/src/network/networkctl-status-system.c b/src/network/networkctl-status-system.c index bb1b5d1377b..20a4c2be918 100644 --- a/src/network/networkctl-status-system.c +++ b/src/network/networkctl-status-system.c @@ -20,6 +20,9 @@ static int ifindex_str_compare_func(char * const *a, char * const *b) { size_t al, bl; int r; + assert(a); + assert(b); + al = strlen_ptr(*a); bl = strlen_ptr(*b); diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c index 619c2f63770..3e7cca991b3 100644 --- a/src/network/networkd-dhcp-common.c +++ b/src/network/networkd-dhcp-common.c @@ -276,6 +276,7 @@ int link_get_captive_portal(Link *link, const char **ret) { int r; assert(link); + assert(ret); if (!link->network) { *ret = NULL; diff --git a/src/network/networkd-dhcp-prefix-delegation.c b/src/network/networkd-dhcp-prefix-delegation.c index f53d7d1c5aa..e734b0171d3 100644 --- a/src/network/networkd-dhcp-prefix-delegation.c +++ b/src/network/networkd-dhcp-prefix-delegation.c @@ -557,6 +557,7 @@ static int dhcp_pd_get_preferred_subnet_prefix( assert(link->manager); assert(link->network); assert(pd_prefix); + assert(ret); if (link->network->dhcp_pd_subnet_id >= 0) { /* If the link has a preference for a particular subnet id try to allocate that */ diff --git a/src/network/networkd-dhcp-server.c b/src/network/networkd-dhcp-server.c index 24ae1bbe890..23ee3024e90 100644 --- a/src/network/networkd-dhcp-server.c +++ b/src/network/networkd-dhcp-server.c @@ -326,6 +326,7 @@ void manager_toggle_dhcp4_server_state(Manager *manager, bool start) { static int dhcp_server_find_uplink(Link *link, Link **ret) { assert(link); + assert(ret); if (link->network->dhcp_server_uplink_name) return link_get_by_name(link->manager, link->network->dhcp_server_uplink_name, ret); diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 57b074e1be2..c6bc8fc4b1c 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -862,6 +862,7 @@ static int link_put_carrier(Link *link, Link *carrier, Hashmap **h) { assert(link); assert(carrier); + assert(h); if (link == carrier) return 0; diff --git a/src/network/networkd-radv.c b/src/network/networkd-radv.c index 0ef292bdf22..a71e01dfbf4 100644 --- a/src/network/networkd-radv.c +++ b/src/network/networkd-radv.c @@ -423,6 +423,7 @@ static int radv_find_uplink(Link *link, Link **ret) { int r; assert(link); + assert(ret); if (link->network->router_uplink_name) return link_get_by_name(link->manager, link->network->router_uplink_name, ret); diff --git a/src/network/networkd-routing-policy-rule.c b/src/network/networkd-routing-policy-rule.c index eb60d315bd2..1cefad29de5 100644 --- a/src/network/networkd-routing-policy-rule.c +++ b/src/network/networkd-routing-policy-rule.c @@ -99,6 +99,8 @@ DEFINE_SECTION_CLEANUP_FUNCTIONS(RoutingPolicyRule, routing_policy_rule_unref); static int routing_policy_rule_new(RoutingPolicyRule **ret) { RoutingPolicyRule *rule; + assert(ret); + rule = new(RoutingPolicyRule, 1); if (!rule) return -ENOMEM; diff --git a/src/network/networkd-wwan.c b/src/network/networkd-wwan.c index b84ace13010..525660ad8fc 100644 --- a/src/network/networkd-wwan.c +++ b/src/network/networkd-wwan.c @@ -235,6 +235,7 @@ int link_get_modem(Link *link, Modem **ret) { assert(link); assert(link->manager); assert(link->ifname); + assert(ret); HASHMAP_FOREACH(modem, link->manager->modems_by_path) if (modem->port_name && streq(modem->port_name, link->ifname)) {