1d583b39bSJohn Wren Kennedy# 2d583b39bSJohn Wren Kennedy# CDDL HEADER START 3d583b39bSJohn Wren Kennedy# 4d583b39bSJohn Wren Kennedy# The contents of this file are subject to the terms of the 5d583b39bSJohn Wren Kennedy# Common Development and Distribution License (the "License"). 6d583b39bSJohn Wren Kennedy# You may not use this file except in compliance with the License. 7d583b39bSJohn Wren Kennedy# 8d583b39bSJohn Wren Kennedy# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9d583b39bSJohn Wren Kennedy# or http://www.opensolaris.org/os/licensing. 10d583b39bSJohn Wren Kennedy# See the License for the specific language governing permissions 11d583b39bSJohn Wren Kennedy# and limitations under the License. 12d583b39bSJohn Wren Kennedy# 13d583b39bSJohn Wren Kennedy# When distributing Covered Code, include this CDDL HEADER in each 14d583b39bSJohn Wren Kennedy# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15d583b39bSJohn Wren Kennedy# If applicable, add the following below this CDDL HEADER, with the 16d583b39bSJohn Wren Kennedy# fields enclosed by brackets "[]" replaced with your own identifying 17d583b39bSJohn Wren Kennedy# information: Portions Copyright [yyyy] [name of copyright owner] 18d583b39bSJohn Wren Kennedy# 19d583b39bSJohn Wren Kennedy# CDDL HEADER END 20d583b39bSJohn Wren Kennedy# 21d583b39bSJohn Wren Kennedy 22d583b39bSJohn Wren Kennedy# 23d583b39bSJohn Wren Kennedy# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 24d583b39bSJohn Wren Kennedy# Use is subject to license terms. 25d583b39bSJohn Wren Kennedy# 26d583b39bSJohn Wren Kennedy 27d583b39bSJohn Wren Kennedy# 28*1d32ba66SJohn Wren Kennedy# Copyright (c) 2012, 2016 by Delphix. All rights reserved. 29d583b39bSJohn Wren Kennedy# 30d583b39bSJohn Wren Kennedy 31d583b39bSJohn Wren Kennedy. $STF_SUITE/include/libtest.shlib 32d583b39bSJohn Wren Kennedy. $STF_SUITE/tests/functional/cli_root/zpool_add/zpool_add.cfg 33d583b39bSJohn Wren Kennedy 34d583b39bSJohn Wren Kennedy# 35d583b39bSJohn Wren Kennedy# Find the storage device in /etc/vfstab 36d583b39bSJohn Wren Kennedy# 37d583b39bSJohn Wren Kennedyfunction find_vfstab_dev 38d583b39bSJohn Wren Kennedy{ 39d583b39bSJohn Wren Kennedy typeset vfstab="/etc/vfstab" 40d583b39bSJohn Wren Kennedy typeset tmpfile="/tmp/vfstab.tmp" 41d583b39bSJohn Wren Kennedy typeset vfstabdev 42d583b39bSJohn Wren Kennedy typeset vfstabdevs="" 43d583b39bSJohn Wren Kennedy typeset line 44d583b39bSJohn Wren Kennedy 45*1d32ba66SJohn Wren Kennedy cat $vfstab | grep "^/dev/dsk" >$tmpfile 46d583b39bSJohn Wren Kennedy while read -r line 47d583b39bSJohn Wren Kennedy do 48*1d32ba66SJohn Wren Kennedy vfstabdev=`echo "$line" | awk '{print $1}'` 49d583b39bSJohn Wren Kennedy vfstabdev=${vfstabdev%%:} 50d583b39bSJohn Wren Kennedy vfstabdevs="$vfstabdev $vfstabdevs" 51d583b39bSJohn Wren Kennedy done <$tmpfile 52d583b39bSJohn Wren Kennedy 53*1d32ba66SJohn Wren Kennedy rm -f $tmpfile 54*1d32ba66SJohn Wren Kennedy echo $vfstabdevs 55d583b39bSJohn Wren Kennedy} 56d583b39bSJohn Wren Kennedy 57d583b39bSJohn Wren Kennedy# 58d583b39bSJohn Wren Kennedy# Find the storage device in /etc/mnttab 59d583b39bSJohn Wren Kennedy# 60d583b39bSJohn Wren Kennedyfunction find_mnttab_dev 61d583b39bSJohn Wren Kennedy{ 62d583b39bSJohn Wren Kennedy typeset mnttab="/etc/mnttab" 63d583b39bSJohn Wren Kennedy typeset tmpfile="/tmp/mnttab.tmp" 64d583b39bSJohn Wren Kennedy typeset mnttabdev 65d583b39bSJohn Wren Kennedy typeset mnttabdevs="" 66d583b39bSJohn Wren Kennedy typeset line 67d583b39bSJohn Wren Kennedy 68*1d32ba66SJohn Wren Kennedy cat $mnttab | grep "^/dev/dsk" >$tmpfile 69d583b39bSJohn Wren Kennedy while read -r line 70d583b39bSJohn Wren Kennedy do 71*1d32ba66SJohn Wren Kennedy mnttabdev=`echo "$line" | awk '{print $1}'` 72d583b39bSJohn Wren Kennedy mnttabdev=${mnttabdev%%:} 73d583b39bSJohn Wren Kennedy mnttabdevs="$mnttabdev $mnttabdevs" 74d583b39bSJohn Wren Kennedy done <$tmpfile 75d583b39bSJohn Wren Kennedy 76*1d32ba66SJohn Wren Kennedy rm -f $tmpfile 77*1d32ba66SJohn Wren Kennedy echo $mnttabdevs 78d583b39bSJohn Wren Kennedy} 79d583b39bSJohn Wren Kennedy 80d583b39bSJohn Wren Kennedy# 81d583b39bSJohn Wren Kennedy# Save the systme current dump device configuration 82d583b39bSJohn Wren Kennedy# 83d583b39bSJohn Wren Kennedyfunction save_dump_dev 84d583b39bSJohn Wren Kennedy{ 85d583b39bSJohn Wren Kennedy 86d583b39bSJohn Wren Kennedy typeset dumpdev 87d583b39bSJohn Wren Kennedy typeset fnd="Dump device" 88d583b39bSJohn Wren Kennedy 89*1d32ba66SJohn Wren Kennedy dumpdev=`dumpadm | grep "$fnd" | cut -f2 -d : | \ 90*1d32ba66SJohn Wren Kennedy awk '{print $1}'` 91*1d32ba66SJohn Wren Kennedy echo $dumpdev 92d583b39bSJohn Wren Kennedy} 93d583b39bSJohn Wren Kennedy 94d583b39bSJohn Wren Kennedy# 95d583b39bSJohn Wren Kennedy# Common cleanup routine for partitions used in testing 96d583b39bSJohn Wren Kennedy# 97d583b39bSJohn Wren Kennedyfunction partition_cleanup 98d583b39bSJohn Wren Kennedy{ 99d583b39bSJohn Wren Kennedy 100d583b39bSJohn Wren Kennedy if [[ -n $DISK ]]; then 101d583b39bSJohn Wren Kennedy partition_disk $SIZE $DISK 7 102d583b39bSJohn Wren Kennedy else 103d583b39bSJohn Wren Kennedy typeset disk="" 104d583b39bSJohn Wren Kennedy for disk in $DISK0 $DISK1; do 105d583b39bSJohn Wren Kennedy partition_disk $SIZE $disk 7 106d583b39bSJohn Wren Kennedy done 107d583b39bSJohn Wren Kennedy fi 108d583b39bSJohn Wren Kennedy 109d583b39bSJohn Wren Kennedy} 110