dracut/0094-Implement-shortcut-ip-ifname-static-for-static-confi.patch
Thomas Renninger 89f9350d9e Accepting request 314510 from home:trenn:branches:Base:System
- Fix dmraid issue bnc#905746
A    dracut_dmraid_use_udev.patch
- Taken over from SLE12
A    fips_add_aesni-intel.patch
- Do not touch /run vs /var/run bnc#922676
D    0106-dracut-Enable-converting-of-directory-var-run-var-lo.patch
- Update dracut to version 042
Remove these already included or unneeded patches:
D    dracut_v041_to_HEAD.patch
D    0011-Correct-paths-for-openSUSE.patch
D    0068-95fcoe-uefi-Test-for-EFI-firmware.patch
D    0170-enable-logitech-hidpp.patch
Adjust/refresh:
M    0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch
M    0016-Add-new-s390x-specific-rule-files.patch
M    0017-45ifcfg-use-distro-specific-scripts.patch
M    0019-40network-Fix-race-condition-when-wait-for-networks.patch
M    0020-00warpclock-Set-correct-timezone.patch
M    0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch
M    0048-40network-Only-enable-network-interfaces-if-explicit.patch
M    0053-01fips-fixup-loading-issues.patch
M    0056-81cio_ignore-handle-cio_ignore-commandline.patch
M    0057-01fips-Include-some-more-hmacs.patch
M    0058-dracut-add-warning-when-including-unsupported-module.patch
M    0059-99suse-Add-SUSE-specific-initrd-parsing.patch
M    0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch
M    0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch
M    0066-40network-always-start-netroot-in-ifup.sh.patch
M    0075-95dasd_rules-enable-parsing-of-rd.dasd-commandline-p.patch
M    0076-Correctly-set-cio_ignore-for-dynamic-s390-rules.patch

OBS-URL: https://build.opensuse.org/request/show/314510
OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=219
2015-06-30 12:59:59 +00:00

84 lines
3.4 KiB
Diff

From a345cf3c3d7c15cfca5735c531f825062235c135 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Wed, 2 Jul 2014 11:20:22 +0200
Subject: Implement shortcut 'ip=<ifname>:static' for static configuration
To simplify static configurate we should be pulling in the
existing 'ifcfg' files when running in hostonly mode.
With that we can implement the shortcut 'ip=<ifname>:static'
to use the existing configuration from the ifcfg file.
Signed-off-by: Hannes Reinecke <hare@suse.de>
---
modules.d/40network/ifup.sh | 14 +++++++++++++-
modules.d/40network/module-setup.sh | 4 ++++
modules.d/40network/parse-ip-opts.sh | 8 +++++++-
3 files changed, 24 insertions(+), 2 deletions(-)
Index: dracut-042/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:12.961576972 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:13.849627528 +0200
@@ -399,6 +399,18 @@ for p in $(getargs ip=); do
[ "$use_bridge" != 'true' ] && \
[ "$use_vlan" != 'true' ] && continue
+ if [ "$autoconf" = "static" ] &&
+ [ -e /etc/sysconfig/network/ifcfg-${netif} ] ; then
+ # Pull in existing static configuration
+ . /etc/sysconfig/network/ifcfg-${netif}
+ ip=${IPADDR}
+ mask=${PREFIXLEN}
+ mtu=${MTU}
+ server=${REMOTE_IPADDR}
+ gw=${GATEWAY}
+ autoconf=${BOOTPROTO}
+ fi
+
# setup nameserver
namesrv="$dns1 $dns2 $(getargs nameserver)"
for s in $namesrv; do
@@ -412,7 +424,7 @@ for p in $(getargs ip=); do
for autoopt in $(str_replace "$autoconf" "," " "); do
case $autoopt in
- dhcp|on|any)
+ dhcp4|dhcp|on|any)
do_dhcp -4 ;;
dhcp6)
load_ipv6
Index: dracut-042/modules.d/40network/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/module-setup.sh 2015-06-24 18:02:05.949177762 +0200
+++ dracut-042/modules.d/40network/module-setup.sh 2015-06-24 18:02:13.849627528 +0200
@@ -51,6 +51,10 @@ install() {
_arch=$(uname -m)
+ [[ $hostonly ]] && {
+ inst_multiple /etc/sysconfig/network/ifcfg-*
+ }
+
inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
{"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
Index: dracut-042/modules.d/40network/parse-ip-opts.sh
===================================================================
--- dracut-042.orig/modules.d/40network/parse-ip-opts.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/parse-ip-opts.sh 2015-06-24 18:02:13.849627528 +0200
@@ -67,7 +67,13 @@ for p in $(getargs ip=); do
for autoopt in $(str_replace "$autoconf" "," " "); do
case $autoopt in
error) die "Error parsing option 'ip=$p'";;
- bootp|rarp|both) die "Sorry, ip=$autoopt is currenty unsupported";;
+ bootp|rarp|both) die "Sorry, ip=$autoopt is currently unsupported";;
+ static)
+ if [ ! -e /etc/sysconfig/network/ifcfg-${dev} ] ; then
+ warn "No ifcfg configuration present for interface $dev, skipping"
+ continue
+ fi
+ ;;
none|off)
[ -z "$ip" ] && \
die "For argument 'ip=$p'\nValue '$autoopt' without static configuration does not make sense"