Blob Blame History Raw
From 66bfe863f551389add3a3a53067264ce32eba302 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 30 Jan 2014 13:50:02 +0100
Subject: [PATCH] network: understand ip=.....:<dns1>:<dns2>

---
 modules.d/40network/net-lib.sh | 23 +++++++++++++++++------
 1 file changed, 17 insertions(+), 6 deletions(-)

diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
index 7544401..36fad12 100755
--- a/modules.d/40network/net-lib.sh
+++ b/modules.d/40network/net-lib.sh
@@ -339,7 +339,7 @@ ip_to_var() {
         fi
     done
 
-    unset ip srv gw mask hostname dev autoconf macaddr mtu
+    unset ip srv gw mask hostname dev autoconf macaddr mtu dns1 dns2
     case $# in
         0)  autoconf="error" ;;
         1)  autoconf=$1 ;;
@@ -347,11 +347,22 @@ ip_to_var() {
         3)  [ -n "$1" ] && dev=$1; [ -n "$2" ] && autoconf=$2; [ -n "$3" ] && mtu=$3 ;;
         4)  [ -n "$1" ] && dev=$1; [ -n "$2" ] && autoconf=$2; [ -n "$3" ] && mtu=$3; [ -n "$4" ] && macaddr=$4 ;;
         *)  [ -n "$1" ] && ip=$1; [ -n "$2" ] && srv=$2; [ -n "$3" ] && gw=$3; [ -n "$4" ] && mask=$4;
-            [ -n "$5" ] && hostname=$5; [ -n "$6" ] && dev=$6; [ -n "$7" ] && autoconf=$7; [ -n "$8" ] && mtu=$8;
-            if [ -n "${9}" -a -n "${10}" -a -n "${11}" -a -n "${12}" -a -n "${13}" -a -n "${14}" ]; then
-                macaddr="${9}:${10}:${11}:${12}:${13}:${14}"
-            fi
-	    ;;
+            [ -n "$5" ] && hostname=$5; [ -n "$6" ] && dev=$6; [ -n "$7" ] && autoconf=$7;
+            case "$8" in
+                [0-9]*:*|[0-9]*.[0-9]*.[0-9]*.[0-9]*)
+                    dns1="$mtu"; unset $mtu
+                    [ -n "$9" ] && dns2="$9"
+                    ;;
+                [0-9]*)
+                    mtu="$8"
+                    ;;
+                *)
+                    if [ -n "${9}" -a -n "${10}" -a -n "${11}" -a -n "${12}" -a -n "${13}" -a -n "${14}" ]; then
+                        macaddr="${9}:${10}:${11}:${12}:${13}:${14}"
+                    fi
+	            ;;
+            esac
+            ;;
     esac
 
     # ip=<ipv4-address> means anaconda-style static config argument cluster: