xref: /illumos-gate/usr/src/cmd/netadm/etc/ttydefs.cleanup.sh (revision 45ede40b2394db7967e59f19288fae9b62efd4aa)
1#!/bin/sh
2#
3# CDDL HEADER START
4#
5# The contents of this file are subject to the terms of the
6# Common Development and Distribution License (the "License").
7# You may not use this file except in compliance with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22#
23# ident	"%Z%%M%	%I%	%E% SMI"
24#
25# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
26# Use is subject to license terms.
27
28TMP=${FLASH_ROOT}/tmp/SUNWcsr.ttydefs.$$
29TTYDEFS_FILE=${FLASH_ROOT}/etc/ttydefs
30
31# If the system is an SPARC-Enterprise system,
32# then the /etc/ttydefs file must include the correct console entry.
33isSparcEnterprise()
34{
35	# Add the crtscts flag for the console settings if needed.
36	if [ ! "`grep '^console:.* crtscts:' ${TTYDEFS_FILE}`" ] ; then
37		sed -e "/^console:.*onlcr:/ {
38			s/onlcr:/onlcr crtscts:/
39			}" ${TTYDEFS_FILE} > ${TMP}
40		# Update the ttydefs file
41		cp ${TMP} ${TTYDEFS_FILE}
42		rm -f ${TMP}
43	fi
44}
45
46# Restore the ttydefs file to the default
47defaultPlatform()
48{
49	if [ "`grep '^console:.* crtscts:' ${TTYDEFS_FILE}`" ] ; then
50		sed -e "/^console:.* crtscts:/ {
51		s/ crtscts:/:/
52		}" ${TTYDEFS_FILE} > ${TMP}
53		# Update the ttydefs file
54		cp ${TMP} ${TTYDEFS_FILE}
55		rm -f ${TMP}
56	fi
57}
58
59# Determine action for the appropriate system
60PLATFORM_TOKEN=`prtconf -b | awk '/^name:/ { print $2 }'`
61case "$PLATFORM_TOKEN"
62in
63	SUNW,SPARC-Enterprise)
64		isSparcEnterprise
65		;;
66	*)
67		defaultPlatform
68		;;
69esac
70
71exit 0
72