i.logindevperm revision aecfc01d1bad84e66649703f7fc2926ef70b34ba
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
export PATH
if [ ! -f $dest ]; then
continue;
fi
while read line; do
# if not an entry, just print as is and move to next record
if [ -z "$entry" ]; then
echo "$line"
continue
fi
# extract 'devices' field
if [ -z "$devices" ]; then
echo "$line"
continue
fi
# extract 'drivers' field
if [ -z "$found_driver" ]; then
drivers=""
fi
devices=`echo "$devices" | sed 's/\[/\\\[/g' | sed 's/\]/\\\]/g' | sed 's/\+/\\\+/g' | sed 's/\*/\\\*/g'`
# if dest has an entry for these devices and the difference
# between dest entry and src entry is not only
dest_entry=`egrep "^[# ]*/[a-zA-Z0-9\/]+[ ]+[0-9]+[ ]+$devices[ ]*$drivers" $dest | tail -1 2>/dev/null`
echo "$dest_entry"
else
echo "$line"
fi
# now carry over user's own entries
while read line; do
# skip non-entries
if [ -z "$entry" ]; then
continue
fi
# extract 'devices' field
if [ -z "$devices" ]; then
continue
fi
# extract 'drivers' field
if [ -z "$found_driver" ]; then
drivers=""
fi
devices=`echo "$devices" | sed 's/\[/\\\[/g' | sed 's/\]/\\\]/g' | sed 's/\+/\\\+/g' | sed 's/\*/\\\*/g'`
# if dest has an entry for these devices, preserve that
dest_entry=`egrep "^[# ]*/[a-zA-Z0-9\/]+[ ]+[0-9]+[ ]+"$devices"[ ]*"$drivers"" $newdest | tail -1 2>/dev/null`
if [ -z "$dest_entry" ]; then
echo "$line"
fi
done
exit 0