i.automaster revision 7c478bd95313f5f23a4c958a745db2134aa03244
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder#!/bin/sh
c63ebf815c8a874525cf18670ad74847f7fc7b26Christian Maeder#
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder# CDDL HEADER START
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder#
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder# The contents of this file are subject to the terms of the
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# Common Development and Distribution License, Version 1.0 only
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# (the "License"). You may not use this file except in compliance
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# with the License.
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder#
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder# or http://www.opensolaris.org/os/licensing.
f2f9df2e17e70674f0bf426ed1763c973ee4cde0Christian Maeder# See the License for the specific language governing permissions
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder# and limitations under the License.
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder#
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder# When distributing Covered Code, include this CDDL HEADER in each
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder# If applicable, add the following below this CDDL HEADER, with the
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
a1ed34933c266ce85066acb0d7b20c90cb8eb213Christian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder#
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich# CDDL HEADER END
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder#
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder#
4d56f2fa72e4aec20eb827c11ed49c8cbb7014bdChristian Maeder#ident "%Z%%M% %I% %E% SMI"
4cb215739e9ab13447fa21162482ebe485b47455Christian Maeder#
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian Maeder# Copyright 1994-2003 Sun Microsystems, Inc. All rights reserved.
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich# Use is subject to license terms.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
74eed04be26f549d2f7ca35c370e1c03879b28b1Christian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian MaederCLEANUP_FILE=/tmp/CLEANUP
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian MaederPATH="/usr/bin:/usr/sbin:${PATH}"
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maederexport PATH
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian Maeder
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maederadd_nobrowse_option()
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder{
e593b89bfd4952698dc37feced21cefe869d87a2Christian Maeder sed -e "s%^/net -hosts -nosuid$%/net -hosts -nosuid,nobrowse%" \
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder -e "s%^/home auto_home$%/home auto_home -nobrowse%" \
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder ${dest} > /tmp/am.$$
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder #
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder # Is there a '/net' entry?
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder #
f041c9a6bda23de33a38490e35b831ae18d96b45Christian Maeder grep -s "^[ ]*/net[ \\]" /tmp/am.$$ > /dev/null 2>&1
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder if [ $? = 0 ]; then
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder #
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder # Did we not update the /net entry because it did not
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder # match exactly what we expected?
c3053d57f642ca507cdf79512e604437c4546cb9Christian Maeder #
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder grep -s "^/net -hosts -nosuid,nobrowse$" \
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder /tmp/am.$$ > /dev/null 2>&1
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder if [ $? != 0 ]; then
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder echo "'/net' entry in ${dest} map was not updated to include '-nobrowse' option." >> ${CLEANUP_FILE}
05a62e84edac8c64de04f8349dee418598d216b9Christian Maeder fi
1cd4f6541984962658add5cfaa9f28a93879881bChristian Maeder fi
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder #
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder # Is there a '/home' entry?
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder #
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder grep -s "^[ ]*/home[ \\]" /tmp/am.$$ > /dev/null 2>&1
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder if [ $? = 0 ]; then
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder #
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder # Did we not update the /home entry because it did not
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian Maeder # match exactly what we expected?
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder #
624e6701e0deb7ac6c03c0cba0190fbc5033cf93Ewaryst Schulz grep -s "^/home auto_home -nobrowse$" \
8cacad2a09782249243b80985f28e9387019fe40Christian Maeder /tmp/am.$$ > /dev/null 2>&1
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder if [ $? != 0 ]; then
a7c27282e71cf4505026645f96d4f5cb8a284e32Christian Maeder echo "'/home' entry in ${dest} map was not updated to include '-nobrowse' option." >> ${CLEANUP_FILE}
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder fi
014dc30f64ec25e4790cca987d4d1e6635430510Christian Maeder fi
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich
6aea82c63ba1d2efc0329bc784a14e521469ec20Christian Maeder cp /tmp/am.$$ ${dest}
6aea82c63ba1d2efc0329bc784a14e521469ec20Christian Maeder rm -f /tmp/am.$$
431d34c7007a787331c4e5ec997badb0f8190fc7Christian Maeder}
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder
498aa48bdb931ab50990d3b74318a5db2312186cChristian Maederwhile read src dest
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maederdo
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder if [ ! -f $dest ] ; then
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder cp $src $dest
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder else
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder grep '^[ ]*/xfn' $dest 2>&1 >/dev/null
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder if [ $? = 0 ]; then
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder # Remove /xfn entry
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder sed '/^[ ]*\/xfn\>/d' $dest > /tmp/am.$$
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder cp /tmp/am.$$ $dest
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder rm -f /tmp/am.$$
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder # Remove /xfn directory if not in use
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder rmdir $BASEDIR/xfn >/dev/null 2>&1
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder fi
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder add_nobrowse_option
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder fi
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maederdone
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maederexit 0
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder