diff options
author | Pat Suwalski <pat@suwalski.net> | 2010-09-27 11:08:03 +0200 |
---|---|---|
committer | Jiří Klimeš <jklimes@redhat.com> | 2010-09-27 11:15:23 +0200 |
commit | 638f1b259091d05d2886798b2e1924ccdf579a9e (patch) | |
tree | 592c2e31f9178287658eec95d2ba69864f94a594 /src | |
parent | 927c8289bdb6cc320edcc98c114edc0ac9ded1a3 (diff) |
system-settings: allow glob (*) in no-auto-default config file option
When * is used instead of MAC addresses' list, no-auto-default option
is valid for all interfaces.
Diffstat (limited to 'src')
-rw-r--r-- | src/system-settings/nm-sysconfig-settings.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/system-settings/nm-sysconfig-settings.c b/src/system-settings/nm-sysconfig-settings.c index 616f8b1cf6..d929813f1b 100644 --- a/src/system-settings/nm-sysconfig-settings.c +++ b/src/system-settings/nm-sysconfig-settings.c @@ -1078,6 +1078,11 @@ is_mac_auto_wired_blacklisted (NMSysconfigSettings *self, const GByteArray *mac) for (iter = list; iter && *iter; iter++) { struct ether_addr *candidate; + if (strcmp(g_strstrip(*iter), "*") == 0) { + found = TRUE; + break; + } + candidate = ether_aton (*iter); if (candidate && !memcmp (mac->data, candidate->ether_addr_octet, ETH_ALEN)) { found = TRUE; @@ -1137,13 +1142,19 @@ default_wired_deleted (NMDefaultWiredConnection *wired, g_key_file_load_from_file (config, priv->config_file, G_KEY_FILE_KEEP_COMMENTS, NULL); list = g_key_file_get_string_list (config, "main", CONFIG_KEY_NO_AUTO_DEFAULT, &len, NULL); - /* Traverse entire list to get count of # items */ for (iter = list; iter && *iter; iter++) { struct ether_addr *candidate; + if (strcmp(g_strstrip(*iter), "*") == 0) { + found = TRUE; + break; + } + candidate = ether_aton (*iter); - if (candidate && !memcmp (mac->data, candidate->ether_addr_octet, ETH_ALEN)) + if (candidate && !memcmp (mac->data, candidate->ether_addr_octet, ETH_ALEN)) { found = TRUE; + break; + } } /* Add this device's MAC to the list */ |