summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPat Suwalski <pat@suwalski.net>2010-09-27 11:08:03 +0200
committerJiří Klimeš <jklimes@redhat.com>2010-09-27 11:15:23 +0200
commit638f1b259091d05d2886798b2e1924ccdf579a9e (patch)
tree592c2e31f9178287658eec95d2ba69864f94a594 /src
parent927c8289bdb6cc320edcc98c114edc0ac9ded1a3 (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.c15
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 */