xref: /freebsd/tests/sys/cddl/zfs/bin/zpool_version.ksh (revision 06c3fb2749bda94cb5201f81ffdb8fa6c3161b2e)
1#! /usr/local/bin/ksh93 -p
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#
24# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
25# Use is subject to license terms.
26
27cmd=$1
28shift
29options="$@"
30
31o_version_option="no"
32O_version_option="no"
33
34while getopts :o:O: c
35do
36        case $c in
37                o)
38                        if [[ "$OPTARG" == "version="* ]]; then
39                                o_version_option="yes"
40                        fi
41                        ;;
42                O)
43                        if [[ "$OPTARG" == "version="* ]]; then
44                                O_version_option="yes"
45                        fi
46                        ;;
47                *)
48                        ;;
49	esac
50done
51shift $(($OPTIND - 1))
52
53case $cmd in
54	create)
55		if [[ "$ZFS_TEST_VERSION" != "0" ]] &&
56		   [[ "$O_version_option" == "no" ]]; then
57			options="-O version=$ZFS_TEST_VERSION $options"
58		fi
59		if [[ "$ZPOOL_TEST_VERSION" != "0" ]] &&
60		   [[ "$o_version_option" == "no" ]]; then
61			options="-o version=$ZPOOL_TEST_VERSION $options"
62		fi
63		;;
64	*)
65		;;
66esac
67
68print "$cmd $options"
69