X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fnet-util.c;h=6008a41dae847c0a94af59babafb088a096001f1;hb=f28964e353e4bfb83990742be6f258cdcc78c03a;hp=06c50b593ee3652e8818b561264c3aabe74fe38c;hpb=95fe27d9307628a4a593e63794000c09ecb91b95;p=elogind.git diff --git a/src/shared/net-util.c b/src/shared/net-util.c index 06c50b593..6008a41da 100644 --- a/src/shared/net-util.c +++ b/src/shared/net-util.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "net-util.h" #include "log.h" @@ -56,7 +57,7 @@ bool net_match_config(const struct ether_addr *match_mac, if (match_mac && (!dev_mac || memcmp(match_mac, ether_aton(dev_mac), ETH_ALEN))) return 0; - if (match_path && !streq_ptr(match_path, dev_path)) + if (match_path && (!dev_path || fnmatch(match_path, dev_path, 0))) return 0; if (match_driver && !streq_ptr(match_driver, dev_driver)) @@ -65,7 +66,7 @@ bool net_match_config(const struct ether_addr *match_mac, if (match_type && !streq_ptr(match_type, dev_type)) return 0; - if (match_name && !streq_ptr(match_name, dev_name)) + if (match_name && (!dev_path || fnmatch(match_name, dev_name, 0))) return 0; return 1;