#!/bin/sh # # config3270 -- Autoconfigure /dev/3270/* and /etc/inittab # # Usage: # config3270 # # Output: # /tmp/mkdev3270 # # Operation: # 1. Run this script # 2. Run the script it produces: /tmp/mkdev3270 # 3. Issue "telinit q" or reboot, as appropriate. # setglobal P = '/proc/tty/driver/tty3270' setglobal ROOT = '' setglobal D = "$ROOT/dev" setglobal SUBD = '3270' setglobal TTY = "$SUBD/tty" setglobal TUB = "$SUBD/tub" setglobal SCR = "$ROOT/tmp/mkdev3270" setglobal SCRTMP = "$SCR.a" setglobal GETTYLINE = ':2345:respawn:/sbin/mingetty' setglobal INITTAB = "$ROOT/etc/inittab" setglobal NINITTAB = "$ROOT/etc/NEWinittab" setglobal OINITTAB = "$ROOT/etc/OLDinittab" setglobal ADDNOTE = ''\'"# Additional mingettys for the 3270/tty* driver, tub3270 ---'\\" if ! ls $P > /dev/null !2 > !1 { modprobe tub3270 > /dev/null !2 > !1 } ls $P > /dev/null !2 > !1 || exit 1 # Initialize two files, one for /dev/3270 commands and one # to replace the /etc/inittab file (old one saved in OLDinittab) echo "#!/bin/sh" > $SCR || exit 1 echo " " >> $SCR echo "# Script built by /sbin/config3270" >> $SCR if test ! -d /dev/dasd { echo rm -rf "$D/$SUBD/*" >> $SCR } echo "grep -v $TTY $INITTAB > $NINITTAB" > $SCRTMP || exit 1 echo "echo $ADDNOTE >> $NINITTAB" >> $SCRTMP if test ! -d /dev/dasd { echo mkdir -p $D/$SUBD >> $SCR } # Now query the tub3270 driver for 3270 device information # and add appropriate mknod and mingetty lines to our files echo what=config > $P while read devno maj min{ if test $min = 0 { setglobal fsmaj = $maj if test ! -d /dev/dasd { echo mknod $D/$TUB c $fsmaj 0 >> $SCR echo chmod 666 $D/$TUB >> $SCR } } elif test $maj = CONSOLE { if test ! -d /dev/dasd { echo mknod $D/$TUB$devno c $fsmaj $min >> $SCR } } else { if test ! -d /dev/dasd { echo mknod $D/$TTY$devno c $maj $min >>$SCR echo mknod $D/$TUB$devno c $fsmaj $min >> $SCR } echo "echo t$min$GETTYLINE $TTY$devno >> $NINITTAB" >> $SCRTMP } } < $P echo mv $INITTAB $OINITTAB >> $SCRTMP || exit 1 echo mv $NINITTAB $INITTAB >> $SCRTMP cat $SCRTMP >> $SCR rm $SCRTMP exit 0