mirror of
https://github.com/systemd/systemd.git
synced 2025-03-19 22:50:17 +03:00
network-internal: chain matches with AND in net_match_config()
The test would treat the first non-empty set of matches in match_paths, match_drivers, match_types, match_names as definitive (essentially chaining them with OR). Make those tests instead match like other tests and require all to pass if the set of patterns is nonempty.
This commit is contained in:
parent
bceccd5ecc
commit
ee5de57b9d
@ -112,17 +112,17 @@ bool net_match_config(const struct ether_addr *match_mac,
|
||||
if (match_mac && (!dev_mac || memcmp(match_mac, dev_mac, ETH_ALEN)))
|
||||
return false;
|
||||
|
||||
if (!strv_isempty(match_paths))
|
||||
return strv_fnmatch(dev_path, match_paths, 0);
|
||||
if (!strv_fnmatch_or_empty(dev_path, match_paths, 0))
|
||||
return false;
|
||||
|
||||
if (!strv_isempty(match_drivers))
|
||||
return strv_fnmatch(dev_driver, match_drivers, 0);
|
||||
if (!strv_fnmatch_or_empty(dev_driver, match_drivers, 0))
|
||||
return false;
|
||||
|
||||
if (!strv_isempty(match_types))
|
||||
return strv_fnmatch(dev_type, match_types, 0);
|
||||
if (!strv_fnmatch_or_empty(dev_type, match_types, 0))
|
||||
return false;
|
||||
|
||||
if (!strv_isempty(match_names))
|
||||
return strv_fnmatch(dev_name, match_names, 0);
|
||||
if (!strv_fnmatch_or_empty(dev_name, match_names, 0))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user