summaryrefslogtreecommitdiffstats
path: root/loader2/linuxrc.s390
diff options
context:
space:
mode:
authorKarsten Hopp <karsten@redhat.de>2004-06-07 11:14:43 +0000
committerKarsten Hopp <karsten@redhat.de>2004-06-07 11:14:43 +0000
commitb07b2b2d9b449c79c00bc984f09865d8cdddee3e (patch)
tree7de29345d410257e330613b6dd1e7840928a8f58 /loader2/linuxrc.s390
parentd448d25975a31d5215f92dd69779b38d316da5e4 (diff)
downloadanaconda-b07b2b2d9b449c79c00bc984f09865d8cdddee3e.tar.gz
anaconda-b07b2b2d9b449c79c00bc984f09865d8cdddee3e.tar.xz
anaconda-b07b2b2d9b449c79c00bc984f09865d8cdddee3e.zip
read configuration from a bash-style file on CMS filesystem
Diffstat (limited to 'loader2/linuxrc.s390')
-rw-r--r--loader2/linuxrc.s39017
1 files changed, 17 insertions, 0 deletions
diff --git a/loader2/linuxrc.s390 b/loader2/linuxrc.s390
index d4ae6e14e..f4fc88c32 100644
--- a/loader2/linuxrc.s390
+++ b/loader2/linuxrc.s390
@@ -61,6 +61,18 @@ startinetd()
fi
}
+# read file from CMS and write it to /tmp
+readcmsfile() # $1=dasdport $2=filename
+{
+ if [ $# -ne 2 ]; then return; fi
+ mknod /dev/dasda b 94 0
+ insmod dasd_mod$LO dasd=$1
+ insmod dasd_eckd_mod$LO
+ cmsfscat -d /dev/dasda -a $2 > /tmp/$2
+ rmmod dasd_eckd_mod.ko
+ rmmod dasd_mod.ko
+}
+
setupdevice()
{
if [ -z "$SUBCHANNELS" -o -z "$DIRNAME" ]; then
@@ -139,6 +151,11 @@ LO=""
[ -L /sbin/insmod ] && LO=".ko"
+if [ -n "$CMSDASD" -a -n "$CMSCONFFILE" ]; then
+ readcmsfile $CMSDASD $CMSCONFFILE
+ source /tmp/$CMSCONFFILE #2>/dev/null
+fi
+
# Parse configuration
# Check for missing parameters, prompt for them if necessary
while [ -z "$NETTYPE" ]; do