/src/systemd/src/network/networkd-util.h
Line | Count | Source |
1 | | /* SPDX-License-Identifier: LGPL-2.1+ */ |
2 | | #pragma once |
3 | | |
4 | | #include "conf-parser.h" |
5 | | #include "hash-funcs.h" |
6 | | #include "macro.h" |
7 | | |
8 | | typedef enum AddressFamilyBoolean { |
9 | | /* This is a bitmask, though it usually doesn't feel that way! */ |
10 | | ADDRESS_FAMILY_NO = 0, |
11 | | ADDRESS_FAMILY_IPV4 = 1 << 0, |
12 | | ADDRESS_FAMILY_IPV6 = 1 << 1, |
13 | | ADDRESS_FAMILY_YES = ADDRESS_FAMILY_IPV4 | ADDRESS_FAMILY_IPV6, |
14 | | ADDRESS_FAMILY_FALLBACK_IPV4 = 1 << 2, |
15 | | ADDRESS_FAMILY_FALLBACK = ADDRESS_FAMILY_FALLBACK_IPV4 | ADDRESS_FAMILY_IPV6, |
16 | | _ADDRESS_FAMILY_BOOLEAN_MAX, |
17 | | _ADDRESS_FAMILY_BOOLEAN_INVALID = -1, |
18 | | } AddressFamilyBoolean; |
19 | | |
20 | | typedef struct NetworkConfigSection { |
21 | | unsigned line; |
22 | | bool invalid; |
23 | | char filename[]; |
24 | | } NetworkConfigSection; |
25 | | |
26 | | CONFIG_PARSER_PROTOTYPE(config_parse_link_local_address_family_boolean); |
27 | | CONFIG_PARSER_PROTOTYPE(config_parse_address_family_boolean_with_kernel); |
28 | | |
29 | | const char *address_family_boolean_to_string(AddressFamilyBoolean b) _const_; |
30 | | AddressFamilyBoolean address_family_boolean_from_string(const char *s) _pure_; |
31 | | |
32 | | const char *link_local_address_family_boolean_to_string(AddressFamilyBoolean b) _const_; |
33 | | AddressFamilyBoolean link_local_address_family_boolean_from_string(const char *s) _pure_; |
34 | | |
35 | | int kernel_route_expiration_supported(void); |
36 | | |
37 | | int network_config_section_new(const char *filename, unsigned line, NetworkConfigSection **s); |
38 | | void network_config_section_free(NetworkConfigSection *network); |
39 | | DEFINE_TRIVIAL_CLEANUP_FUNC(NetworkConfigSection*, network_config_section_free); |
40 | | extern const struct hash_ops network_config_hash_ops; |
41 | | |
42 | 31.2k | static inline bool section_is_invalid(NetworkConfigSection *section) { |
43 | 31.2k | /* If this returns false, then it does _not_ mean the section is valid. */ |
44 | 31.2k | |
45 | 31.2k | if (!section) |
46 | 9.26k | return false; |
47 | 22.0k | |
48 | 22.0k | return section->invalid; |
49 | 22.0k | } Unexecuted instantiation: fuzz-netdev-parser.c:section_is_invalid Unexecuted instantiation: netdev.c:section_is_invalid Unexecuted instantiation: nlmon.c:section_is_invalid Unexecuted instantiation: tunnel.c:section_is_invalid Unexecuted instantiation: tuntap.c:section_is_invalid Unexecuted instantiation: vcan.c:section_is_invalid Unexecuted instantiation: veth.c:section_is_invalid Unexecuted instantiation: vlan.c:section_is_invalid Unexecuted instantiation: vrf.c:section_is_invalid Unexecuted instantiation: vxlan.c:section_is_invalid Unexecuted instantiation: geneve.c:section_is_invalid Unexecuted instantiation: vxcan.c:section_is_invalid wireguard.c:section_is_invalid Line | Count | Source | 42 | 957 | static inline bool section_is_invalid(NetworkConfigSection *section) { | 43 | 957 | /* If this returns false, then it does _not_ mean the section is valid. */ | 44 | 957 | | 45 | 957 | if (!section) | 46 | 0 | return false; | 47 | 957 | | 48 | 957 | return section->invalid; | 49 | 957 | } |
Unexecuted instantiation: netdevsim.c:section_is_invalid Unexecuted instantiation: fou-tunnel.c:section_is_invalid Unexecuted instantiation: l2tp-tunnel.c:section_is_invalid Unexecuted instantiation: macsec.c:section_is_invalid Unexecuted instantiation: networkd-link.c:section_is_invalid Unexecuted instantiation: networkd-lldp-rx.c:section_is_invalid Unexecuted instantiation: networkd-lldp-tx.c:section_is_invalid Unexecuted instantiation: networkd-manager.c:section_is_invalid Unexecuted instantiation: networkd-ndisc.c:section_is_invalid Unexecuted instantiation: networkd-neighbor.c:section_is_invalid Unexecuted instantiation: networkd-radv.c:section_is_invalid Unexecuted instantiation: networkd-network-bus.c:section_is_invalid networkd-network.c:section_is_invalid Line | Count | Source | 42 | 10.0k | static inline bool section_is_invalid(NetworkConfigSection *section) { | 43 | 10.0k | /* If this returns false, then it does _not_ mean the section is valid. */ | 44 | 10.0k | | 45 | 10.0k | if (!section) | 46 | 0 | return false; | 47 | 10.0k | | 48 | 10.0k | return section->invalid; | 49 | 10.0k | } |
networkd-route.c:section_is_invalid Line | Count | Source | 42 | 17.0k | static inline bool section_is_invalid(NetworkConfigSection *section) { | 43 | 17.0k | /* If this returns false, then it does _not_ mean the section is valid. */ | 44 | 17.0k | | 45 | 17.0k | if (!section) | 46 | 7.10k | return false; | 47 | 9.96k | | 48 | 9.96k | return section->invalid; | 49 | 9.96k | } |
Unexecuted instantiation: networkd-routing-policy-rule.c:section_is_invalid Unexecuted instantiation: networkd-speed-meter.c:section_is_invalid Unexecuted instantiation: networkd-util.c:section_is_invalid Unexecuted instantiation: networkd-network-gperf.c:section_is_invalid Unexecuted instantiation: netdev-gperf.c:section_is_invalid Unexecuted instantiation: bond.c:section_is_invalid Unexecuted instantiation: bridge.c:section_is_invalid Unexecuted instantiation: dummy.c:section_is_invalid Unexecuted instantiation: ipvlan.c:section_is_invalid Unexecuted instantiation: macvlan.c:section_is_invalid Unexecuted instantiation: networkd-address-label.c:section_is_invalid Unexecuted instantiation: networkd-address-pool.c:section_is_invalid networkd-address.c:section_is_invalid Line | Count | Source | 42 | 3.19k | static inline bool section_is_invalid(NetworkConfigSection *section) { | 43 | 3.19k | /* If this returns false, then it does _not_ mean the section is valid. */ | 44 | 3.19k | | 45 | 3.19k | if (!section) | 46 | 2.16k | return false; | 47 | 1.02k | | 48 | 1.02k | return section->invalid; | 49 | 1.02k | } |
Unexecuted instantiation: networkd-brvlan.c:section_is_invalid Unexecuted instantiation: networkd-can.c:section_is_invalid Unexecuted instantiation: networkd-conf.c:section_is_invalid Unexecuted instantiation: networkd-dhcp4.c:section_is_invalid Unexecuted instantiation: networkd-dhcp6.c:section_is_invalid Unexecuted instantiation: networkd-fdb.c:section_is_invalid Unexecuted instantiation: networkd-ipv4ll.c:section_is_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:section_is_invalid Unexecuted instantiation: networkd-link-bus.c:section_is_invalid Unexecuted instantiation: networkd-manager-bus.c:section_is_invalid Unexecuted instantiation: networkd-gperf.c:section_is_invalid Unexecuted instantiation: fuzz-network-parser.c:section_is_invalid |
50 | | |
51 | | #define DEFINE_NETWORK_SECTION_FUNCTIONS(type, free_func) \ |
52 | 283k | static inline void free_func##_or_set_invalid(type *p) { \ |
53 | 283k | assert(p); \ |
54 | 283k | \ |
55 | 283k | if (p->section) \ |
56 | 283k | p->section->invalid = true; \ |
57 | 283k | else \ |
58 | 283k | free_func(p); \ |
59 | 283k | } \ Unexecuted instantiation: fuzz-netdev-parser.c:address_label_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:address_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:neighbor_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:prefix_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:route_free_or_set_invalid Unexecuted instantiation: fuzz-netdev-parser.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: netdev.c:address_label_free_or_set_invalid Unexecuted instantiation: netdev.c:address_free_or_set_invalid Unexecuted instantiation: netdev.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: netdev.c:neighbor_free_or_set_invalid Unexecuted instantiation: netdev.c:prefix_free_or_set_invalid Unexecuted instantiation: netdev.c:route_free_or_set_invalid Unexecuted instantiation: netdev.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: geneve.c:address_label_free_or_set_invalid Unexecuted instantiation: geneve.c:address_free_or_set_invalid Unexecuted instantiation: geneve.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: geneve.c:neighbor_free_or_set_invalid Unexecuted instantiation: geneve.c:prefix_free_or_set_invalid Unexecuted instantiation: geneve.c:route_free_or_set_invalid Unexecuted instantiation: geneve.c:routing_policy_rule_free_or_set_invalid wireguard.c:wireguard_peer_free_or_set_invalid Line | Count | Source | 52 | 194k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 194k | assert(p); \ | 54 | 194k | \ | 55 | 194k | if (p->section) \ | 56 | 194k | p->section->invalid = true; \ | 57 | 194k | else \ | 58 | 194k | free_func(p); \ | 59 | 194k | } \ |
Unexecuted instantiation: wireguard.c:address_label_free_or_set_invalid Unexecuted instantiation: wireguard.c:address_free_or_set_invalid Unexecuted instantiation: wireguard.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: wireguard.c:neighbor_free_or_set_invalid Unexecuted instantiation: wireguard.c:prefix_free_or_set_invalid Unexecuted instantiation: wireguard.c:route_free_or_set_invalid Unexecuted instantiation: wireguard.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:address_label_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:address_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:neighbor_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:prefix_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:route_free_or_set_invalid Unexecuted instantiation: fou-tunnel.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:l2tp_session_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:address_label_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:neighbor_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:prefix_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:route_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: l2tp-tunnel.c:address_free_or_set_invalid Unexecuted instantiation: macsec.c:macsec_receive_association_free_or_set_invalid Unexecuted instantiation: macsec.c:macsec_receive_channel_free_or_set_invalid Unexecuted instantiation: macsec.c:macsec_transmit_association_free_or_set_invalid Unexecuted instantiation: macsec.c:address_label_free_or_set_invalid Unexecuted instantiation: macsec.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: macsec.c:neighbor_free_or_set_invalid Unexecuted instantiation: macsec.c:prefix_free_or_set_invalid Unexecuted instantiation: macsec.c:route_free_or_set_invalid Unexecuted instantiation: macsec.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: macsec.c:address_free_or_set_invalid Unexecuted instantiation: networkd-link.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-link.c:address_free_or_set_invalid Unexecuted instantiation: networkd-link.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-link.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-link.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-link.c:route_free_or_set_invalid Unexecuted instantiation: networkd-link.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:address_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:route_free_or_set_invalid Unexecuted instantiation: networkd-lldp-rx.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:address_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:route_free_or_set_invalid Unexecuted instantiation: networkd-lldp-tx.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:address_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:route_free_or_set_invalid Unexecuted instantiation: networkd-manager.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:address_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-ndisc.c:route_free_or_set_invalid networkd-neighbor.c:neighbor_free_or_set_invalid Line | Count | Source | 52 | 1.48k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 1.48k | assert(p); \ | 54 | 1.48k | \ | 55 | 1.48k | if (p->section) \ | 56 | 1.48k | p->section->invalid = true; \ | 57 | 1.48k | else \ | 58 | 1.48k | free_func(p); \ | 59 | 1.48k | } \ |
Unexecuted instantiation: networkd-neighbor.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-neighbor.c:address_free_or_set_invalid Unexecuted instantiation: networkd-neighbor.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-neighbor.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-neighbor.c:route_free_or_set_invalid Unexecuted instantiation: networkd-neighbor.c:routing_policy_rule_free_or_set_invalid networkd-radv.c:prefix_free_or_set_invalid Line | Count | Source | 52 | 3.86k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 3.86k | assert(p); \ | 54 | 3.86k | \ | 55 | 3.86k | if (p->section) \ | 56 | 3.86k | p->section->invalid = true; \ | 57 | 3.86k | else \ | 58 | 3.86k | free_func(p); \ | 59 | 3.86k | } \ |
Unexecuted instantiation: networkd-radv.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-radv.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-radv.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-radv.c:route_free_or_set_invalid Unexecuted instantiation: networkd-radv.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-radv.c:address_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:address_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:route_free_or_set_invalid Unexecuted instantiation: networkd-network-bus.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-network.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-network.c:address_free_or_set_invalid Unexecuted instantiation: networkd-network.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-network.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-network.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-network.c:route_free_or_set_invalid Unexecuted instantiation: networkd-network.c:routing_policy_rule_free_or_set_invalid networkd-route.c:route_free_or_set_invalid Line | Count | Source | 52 | 60.2k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 60.2k | assert(p); \ | 54 | 60.2k | \ | 55 | 60.2k | if (p->section) \ | 56 | 60.2k | p->section->invalid = true; \ | 57 | 60.2k | else \ | 58 | 60.2k | free_func(p); \ | 59 | 60.2k | } \ |
Unexecuted instantiation: networkd-route.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-route.c:address_free_or_set_invalid Unexecuted instantiation: networkd-route.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-route.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-route.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-route.c:routing_policy_rule_free_or_set_invalid networkd-routing-policy-rule.c:routing_policy_rule_free_or_set_invalid Line | Count | Source | 52 | 13.6k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 13.6k | assert(p); \ | 54 | 13.6k | \ | 55 | 13.6k | if (p->section) \ | 56 | 13.6k | p->section->invalid = true; \ | 57 | 13.6k | else \ | 58 | 13.6k | free_func(p); \ | 59 | 13.6k | } \ |
Unexecuted instantiation: networkd-routing-policy-rule.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-routing-policy-rule.c:address_free_or_set_invalid Unexecuted instantiation: networkd-routing-policy-rule.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-routing-policy-rule.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-routing-policy-rule.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-routing-policy-rule.c:route_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:address_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:route_free_or_set_invalid Unexecuted instantiation: networkd-speed-meter.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:address_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:route_free_or_set_invalid Unexecuted instantiation: networkd-network-gperf.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:address_label_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:address_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:neighbor_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:prefix_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:route_free_or_set_invalid Unexecuted instantiation: netdev-gperf.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: bond.c:address_label_free_or_set_invalid Unexecuted instantiation: bond.c:address_free_or_set_invalid Unexecuted instantiation: bond.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: bond.c:neighbor_free_or_set_invalid Unexecuted instantiation: bond.c:prefix_free_or_set_invalid Unexecuted instantiation: bond.c:route_free_or_set_invalid Unexecuted instantiation: bond.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: bridge.c:address_label_free_or_set_invalid Unexecuted instantiation: bridge.c:address_free_or_set_invalid Unexecuted instantiation: bridge.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: bridge.c:neighbor_free_or_set_invalid Unexecuted instantiation: bridge.c:prefix_free_or_set_invalid Unexecuted instantiation: bridge.c:route_free_or_set_invalid Unexecuted instantiation: bridge.c:routing_policy_rule_free_or_set_invalid networkd-address-label.c:address_label_free_or_set_invalid Line | Count | Source | 52 | 2.77k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 2.77k | assert(p); \ | 54 | 2.77k | \ | 55 | 2.77k | if (p->section) \ | 56 | 2.77k | p->section->invalid = true; \ | 57 | 2.77k | else \ | 58 | 2.77k | free_func(p); \ | 59 | 2.77k | } \ |
Unexecuted instantiation: networkd-address-label.c:address_free_or_set_invalid Unexecuted instantiation: networkd-address-label.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-address-label.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-address-label.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-address-label.c:route_free_or_set_invalid Unexecuted instantiation: networkd-address-label.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:address_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:route_free_or_set_invalid Unexecuted instantiation: networkd-address-pool.c:routing_policy_rule_free_or_set_invalid networkd-address.c:address_free_or_set_invalid Line | Count | Source | 52 | 5.46k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 5.46k | assert(p); \ | 54 | 5.46k | \ | 55 | 5.46k | if (p->section) \ | 56 | 5.46k | p->section->invalid = true; \ | 57 | 5.46k | else \ | 58 | 5.46k | free_func(p); \ | 59 | 5.46k | } \ |
Unexecuted instantiation: networkd-address.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-address.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-address.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-address.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-address.c:route_free_or_set_invalid Unexecuted instantiation: networkd-address.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:address_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:route_free_or_set_invalid Unexecuted instantiation: networkd-brvlan.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-can.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-can.c:address_free_or_set_invalid Unexecuted instantiation: networkd-can.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-can.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-can.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-can.c:route_free_or_set_invalid Unexecuted instantiation: networkd-can.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:address_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:route_free_or_set_invalid Unexecuted instantiation: networkd-conf.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:address_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:route_free_or_set_invalid Unexecuted instantiation: networkd-dhcp4.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:address_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:route_free_or_set_invalid Unexecuted instantiation: networkd-dhcp6.c:routing_policy_rule_free_or_set_invalid networkd-fdb.c:fdb_entry_free_or_set_invalid Line | Count | Source | 52 | 1.16k | static inline void free_func##_or_set_invalid(type *p) { \ | 53 | 1.16k | assert(p); \ | 54 | 1.16k | \ | 55 | 1.16k | if (p->section) \ | 56 | 1.16k | p->section->invalid = true; \ | 57 | 1.16k | else \ | 58 | 1.16k | free_func(p); \ | 59 | 1.16k | } \ |
Unexecuted instantiation: networkd-fdb.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-fdb.c:address_free_or_set_invalid Unexecuted instantiation: networkd-fdb.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-fdb.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-fdb.c:route_free_or_set_invalid Unexecuted instantiation: networkd-fdb.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:route_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-ipv4ll.c:address_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:address_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:route_free_or_set_invalid Unexecuted instantiation: networkd-ipv6-proxy-ndp.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:address_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:route_free_or_set_invalid Unexecuted instantiation: networkd-link-bus.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:address_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:route_free_or_set_invalid Unexecuted instantiation: networkd-manager-bus.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:address_label_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:address_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:neighbor_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:prefix_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:route_free_or_set_invalid Unexecuted instantiation: networkd-gperf.c:routing_policy_rule_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:address_label_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:address_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:fdb_entry_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:neighbor_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:prefix_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:route_free_or_set_invalid Unexecuted instantiation: fuzz-network-parser.c:routing_policy_rule_free_or_set_invalid |
60 | | DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func); \ |
61 | | DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func##_or_set_invalid); |