Blame SOURCES/0412-network-net-lib.sh-parse_ifname_opts-support-21-byte.patch

a0a3b4
From 435af39a0054c2e06ae98a5271c03259e15ba7e6 Mon Sep 17 00:00:00 2001
a0a3b4
From: Harald Hoyer <harald@redhat.com>
a0a3b4
Date: Wed, 29 Jun 2016 16:37:40 +0200
a0a3b4
Subject: [PATCH] network/net-lib.sh(parse_ifname_opts): support 21 byte MAC
a0a3b4
 addrs
a0a3b4
a0a3b4
infiniband MAC addrs are 20 bytes long not 6
a0a3b4
a0a3b4
https://bugzilla.redhat.com/show_bug.cgi?id=1319270
a0a3b4
---
a0a3b4
 modules.d/40network/net-lib.sh | 9 +++++++--
a0a3b4
 1 file changed, 7 insertions(+), 2 deletions(-)
a0a3b4
a0a3b4
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
a0a3b4
index 0c00f92..9f76714 100755
a0a3b4
--- a/modules.d/40network/net-lib.sh
a0a3b4
+++ b/modules.d/40network/net-lib.sh
a0a3b4
@@ -523,8 +523,13 @@ parse_ifname_opts() {
a0a3b4
             # udev requires MAC addresses to be lower case
a0a3b4
             ifname_mac=$(echo $2:$3:$4:$5:$6:$7 | sed 'y/ABCDEF/abcdef/')
a0a3b4
             ;;
a0a3b4
+        21)
a0a3b4
+            # infiniband MAC addrs are 20 bytes long not 6
a0a3b4
+            ifname_if=$1
a0a3b4
+            ifname_mac=$(echo $2:$3:$4:$5:$6:$7:$8:$9:$10:$11:$12:13:$14:$15$16:$17:$18:$19:$20:$21 | sed 'y/ABCDEF/abcdef/')
a0a3b4
+            ;;
a0a3b4
         *)
a0a3b4
-            die "Invalid arguments for ifname="
a0a3b4
+            die "Invalid arguments for ifname=$1"
a0a3b4
             ;;
a0a3b4
     esac
a0a3b4
 
a0a3b4
@@ -533,7 +538,7 @@ parse_ifname_opts() {
a0a3b4
             warn "ifname=$ifname_if uses the kernel name space for interfaces"
a0a3b4
             warn "This can fail for multiple network interfaces and is discouraged!"
a0a3b4
             warn "Please use a custom name like \"netboot\" or \"bluesocket\""
a0a3b4
-            warn "or use biosdevname and no ifname= at all."
a0a3b4
+            warn "or use the persistent interface names from udev or biosdevname and no ifname= at all."
a0a3b4
             ;;
a0a3b4
     esac
a0a3b4