Zbigniew Jędrzejewski-Szmek 43ff24
From 0afeabd2abb0f86c17f04558d84e39528d3eb9ee Mon Sep 17 00:00:00 2001
Zbigniew Jędrzejewski-Szmek 43ff24
From: Tom Gundersen <teg@jklm.no>
Zbigniew Jędrzejewski-Szmek 43ff24
Date: Mon, 7 Jul 2014 14:50:16 +0200
Zbigniew Jędrzejewski-Szmek 43ff24
Subject: [PATCH] udev: link_config - ignore errors due to missing MAC address
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
Otherwis, we get misleading error messages on links with MACs.
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
Reported by Leonid Isaev.
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
(cherry picked from commit a669ea9860900d5cdebbc4cb9aaea72db7e28a02)
Zbigniew Jędrzejewski-Szmek 43ff24
---
Zbigniew Jędrzejewski-Szmek 43ff24
 src/udev/net/link-config.c | 8 ++++++--
Zbigniew Jędrzejewski-Szmek 43ff24
 1 file changed, 6 insertions(+), 2 deletions(-)
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c
Zbigniew Jędrzejewski-Szmek 43ff24
index b8650a6c6c..5a45c53cc6 100644
Zbigniew Jędrzejewski-Szmek 43ff24
--- a/src/udev/net/link-config.c
Zbigniew Jędrzejewski-Szmek 43ff24
+++ b/src/udev/net/link-config.c
Zbigniew Jędrzejewski-Szmek 43ff24
@@ -383,7 +383,9 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, struct udev_dev
Zbigniew Jędrzejewski-Szmek 43ff24
                 case MACPOLICY_PERSISTENT:
Zbigniew Jędrzejewski-Szmek 43ff24
                         if (mac_is_random(device)) {
Zbigniew Jędrzejewski-Szmek 43ff24
                                 r = get_mac(device, false, &generated_mac);
Zbigniew Jędrzejewski-Szmek 43ff24
-                                if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
+                                if (r == -ENOENT)
Zbigniew Jędrzejewski-Szmek 43ff24
+                                        break;
Zbigniew Jędrzejewski-Szmek 43ff24
+                                else if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
                                         return r;
Zbigniew Jędrzejewski-Szmek 43ff24
                                 mac = &generated_mac;
Zbigniew Jędrzejewski-Szmek 43ff24
                         }
Zbigniew Jędrzejewski-Szmek 43ff24
@@ -391,7 +393,9 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, struct udev_dev
Zbigniew Jędrzejewski-Szmek 43ff24
                 case MACPOLICY_RANDOM:
Zbigniew Jędrzejewski-Szmek 43ff24
                         if (!mac_is_random(device)) {
Zbigniew Jędrzejewski-Szmek 43ff24
                                 r = get_mac(device, true, &generated_mac);
Zbigniew Jędrzejewski-Szmek 43ff24
-                                if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
+                                if (r == -ENOENT)
Zbigniew Jędrzejewski-Szmek 43ff24
+                                        break;
Zbigniew Jędrzejewski-Szmek 43ff24
+                                else if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
                                         return r;
Zbigniew Jędrzejewski-Szmek 43ff24
                                 mac = &generated_mac;
Zbigniew Jędrzejewski-Szmek 43ff24
                         }