1*f38cb554SJohn Wren Kennedy#!/bin/ksh -p 2*f38cb554SJohn Wren Kennedy# 3*f38cb554SJohn Wren Kennedy# CDDL HEADER START 4*f38cb554SJohn Wren Kennedy# 5*f38cb554SJohn Wren Kennedy# The contents of this file are subject to the terms of the 6*f38cb554SJohn Wren Kennedy# Common Development and Distribution License (the "License"). 7*f38cb554SJohn Wren Kennedy# You may not use this file except in compliance with the License. 8*f38cb554SJohn Wren Kennedy# 9*f38cb554SJohn Wren Kennedy# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*f38cb554SJohn Wren Kennedy# or http://www.opensolaris.org/os/licensing. 11*f38cb554SJohn Wren Kennedy# See the License for the specific language governing permissions 12*f38cb554SJohn Wren Kennedy# and limitations under the License. 13*f38cb554SJohn Wren Kennedy# 14*f38cb554SJohn Wren Kennedy# When distributing Covered Code, include this CDDL HEADER in each 15*f38cb554SJohn Wren Kennedy# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*f38cb554SJohn Wren Kennedy# If applicable, add the following below this CDDL HEADER, with the 17*f38cb554SJohn Wren Kennedy# fields enclosed by brackets "[]" replaced with your own identifying 18*f38cb554SJohn Wren Kennedy# information: Portions Copyright [yyyy] [name of copyright owner] 19*f38cb554SJohn Wren Kennedy# 20*f38cb554SJohn Wren Kennedy# CDDL HEADER END 21*f38cb554SJohn Wren Kennedy# 22*f38cb554SJohn Wren Kennedy 23*f38cb554SJohn Wren Kennedy# 24*f38cb554SJohn Wren Kennedy# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 25*f38cb554SJohn Wren Kennedy# Use is subject to license terms. 26*f38cb554SJohn Wren Kennedy# 27*f38cb554SJohn Wren Kennedy 28*f38cb554SJohn Wren Kennedy# 29*f38cb554SJohn Wren Kennedy# Copyright (c) 2013 by Delphix. All rights reserved. 30*f38cb554SJohn Wren Kennedy# 31*f38cb554SJohn Wren Kennedy 32*f38cb554SJohn Wren Kennedy. $STF_SUITE/include/libtest.shlib 33*f38cb554SJohn Wren Kennedy. $STF_SUITE/tests/functional/devices/devices.cfg 34*f38cb554SJohn Wren Kennedy. $STF_SUITE/tests/functional/devices/devices_common.kshlib 35*f38cb554SJohn Wren Kennedy 36*f38cb554SJohn Wren Kennedy# 37*f38cb554SJohn Wren Kennedy# DESCRIPTION: 38*f38cb554SJohn Wren Kennedy# When set property devices=on on file system, devices files can be used in 39*f38cb554SJohn Wren Kennedy# this file system. 40*f38cb554SJohn Wren Kennedy# 41*f38cb554SJohn Wren Kennedy# STRATEGY: 42*f38cb554SJohn Wren Kennedy# 1. Create pool and file system. 43*f38cb554SJohn Wren Kennedy# 2. Set devices=on on this file system. 44*f38cb554SJohn Wren Kennedy# 3. Separately create block device file and character file. 45*f38cb554SJohn Wren Kennedy# 4. Separately read from those two device files. 46*f38cb554SJohn Wren Kennedy# 5. Check the return value, and make sure it succeeds. 47*f38cb554SJohn Wren Kennedy# 48*f38cb554SJohn Wren Kennedy 49*f38cb554SJohn Wren Kennedyverify_runnable "global" 50*f38cb554SJohn Wren Kennedy 51*f38cb554SJohn Wren Kennedylog_assert "Setting devices=on on file system, the devices files in this file" \ 52*f38cb554SJohn Wren Kennedy "system can be used." 53*f38cb554SJohn Wren Kennedylog_onexit cleanup 54*f38cb554SJohn Wren Kennedy 55*f38cb554SJohn Wren Kennedylog_must $ZFS set devices=on $TESTPOOL/$TESTFS 56*f38cb554SJohn Wren Kennedy 57*f38cb554SJohn Wren Kennedy# 58*f38cb554SJohn Wren Kennedy# Separately create block device file and character device file, then try to 59*f38cb554SJohn Wren Kennedy# open them and make sure it succeed. 60*f38cb554SJohn Wren Kennedy# 61*f38cb554SJohn Wren Kennedycreate_dev_file b $TESTDIR/$TESTFILE1 62*f38cb554SJohn Wren Kennedylog_must $DD if=$TESTDIR/$TESTFILE1 of=$TESTDIR/$TESTFILE1.out count=1 63*f38cb554SJohn Wren Kennedycreate_dev_file c $TESTDIR/$TESTFILE2 64*f38cb554SJohn Wren Kennedylog_must $DD if=$TESTDIR/$TESTFILE2 of=$TESTDIR/$TESTFILE2.out count=1 65*f38cb554SJohn Wren Kennedy 66*f38cb554SJohn Wren Kennedylog_pass "Setting devices=on on file system and testing it pass." 67