[systemd-commits] src/libsystemd-network

Zbigniew Jędrzejewski-Szmek zbyszek at kemper.freedesktop.org
Mon Feb 16 10:58:37 PST 2015


 src/libsystemd-network/network-internal.c |   12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

New commits:
commit d49dc8127676358e706663f3603265942d2507aa
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Mon Feb 16 13:56:31 2015 -0500

    test-network: fix segfault with NULL dev_path/driver/type/name

diff --git a/src/libsystemd-network/network-internal.c b/src/libsystemd-network/network-internal.c
index b6bddd9..81f90aa38 100644
--- a/src/libsystemd-network/network-internal.c
+++ b/src/libsystemd-network/network-internal.c
@@ -112,16 +112,20 @@ 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_fnmatch_or_empty(dev_path, match_paths, 0))
+        if (!strv_isempty(match_paths) &&
+            (!dev_path || !strv_fnmatch(dev_path, match_paths, 0)))
                 return false;
 
-        if (!strv_fnmatch_or_empty(dev_driver, match_drivers, 0))
+        if (!strv_isempty(match_drivers) &&
+            (!dev_driver || !strv_fnmatch(dev_driver, match_drivers, 0)))
                 return false;
 
-        if (!strv_fnmatch_or_empty(dev_type, match_types, 0))
+        if (!strv_isempty(match_types) &&
+            (!dev_type || !strv_fnmatch_or_empty(dev_type, match_types, 0)))
                 return false;
 
-        if (!strv_fnmatch_or_empty(dev_name, match_names, 0))
+        if (!strv_isempty(match_names) &&
+            (!dev_name || !strv_fnmatch_or_empty(dev_name, match_names, 0)))
                 return false;
 
         return true;



More information about the systemd-commits mailing list