1*d7e7cb9cSYuri Pankov#! /usr/bin/ksh -p 2*d7e7cb9cSYuri Pankov# 3*d7e7cb9cSYuri Pankov# 4*d7e7cb9cSYuri Pankov# This file and its contents are supplied under the terms of the 5*d7e7cb9cSYuri Pankov# Common Development and Distribution License ("CDDL"), version 1.0. 6*d7e7cb9cSYuri Pankov# You may only use this file in accordance with the terms of version 7*d7e7cb9cSYuri Pankov# 1.0 of the CDDL. 8*d7e7cb9cSYuri Pankov# 9*d7e7cb9cSYuri Pankov# A full copy of the text of the CDDL should have accompanied this 10*d7e7cb9cSYuri Pankov# source. A copy of the CDDL is also available via the Internet at 11*d7e7cb9cSYuri Pankov# http://www.illumos.org/license/CDDL. 12*d7e7cb9cSYuri Pankov# 13*d7e7cb9cSYuri Pankov 14*d7e7cb9cSYuri Pankov# 15*d7e7cb9cSYuri Pankov# Copyright 2015 Nexenta Systems, Inc. All rights reserved. 16*d7e7cb9cSYuri Pankov# 17*d7e7cb9cSYuri Pankov 18*d7e7cb9cSYuri Pankov. $STF_SUITE/tests/functional/casenorm/casenorm.kshlib 19*d7e7cb9cSYuri Pankov 20*d7e7cb9cSYuri Pankov# DESCRIPTION: 21*d7e7cb9cSYuri Pankov# For the filesystem with casesensitivity=insensitive, normalization=none, 22*d7e7cb9cSYuri Pankov# check that lookup succeeds only if (norm=same) 23*d7e7cb9cSYuri Pankov# 24*d7e7cb9cSYuri Pankov# STRATEGY: 25*d7e7cb9cSYuri Pankov# For each c/n name form: 26*d7e7cb9cSYuri Pankov# 1. Create file with given c/n name form. 27*d7e7cb9cSYuri Pankov# 2. Check that lookup succeeds if (norm=same). 28*d7e7cb9cSYuri Pankov# 3. Check that lookup fails if (norm=other). 29*d7e7cb9cSYuri Pankov 30*d7e7cb9cSYuri Pankovverify_runnable "global" 31*d7e7cb9cSYuri Pankov 32*d7e7cb9cSYuri Pankovfunction cleanup 33*d7e7cb9cSYuri Pankov{ 34*d7e7cb9cSYuri Pankov destroy_testfs 35*d7e7cb9cSYuri Pankov} 36*d7e7cb9cSYuri Pankov 37*d7e7cb9cSYuri Pankovlog_onexit cleanup 38*d7e7cb9cSYuri Pankovlog_assert "CI-not-UN FS: lookup succeeds only if (norm=same)" 39*d7e7cb9cSYuri Pankov 40*d7e7cb9cSYuri Pankovcreate_testfs "-o casesensitivity=insensitive -o normalization=none" 41*d7e7cb9cSYuri Pankov 42*d7e7cb9cSYuri Pankovfor name1 in $NAMES_C ; do 43*d7e7cb9cSYuri Pankov log_must create_file $name1 44*d7e7cb9cSYuri Pankov for name2 in $NAMES_C ; do 45*d7e7cb9cSYuri Pankov log_must lookup_file $name2 46*d7e7cb9cSYuri Pankov done 47*d7e7cb9cSYuri Pankov for name2 in $NAMES_D; do 48*d7e7cb9cSYuri Pankov log_mustnot lookup_file $name2 49*d7e7cb9cSYuri Pankov done 50*d7e7cb9cSYuri Pankov delete_file $name1 51*d7e7cb9cSYuri Pankovdone 52*d7e7cb9cSYuri Pankov 53*d7e7cb9cSYuri Pankovfor name1 in $NAMES_D ; do 54*d7e7cb9cSYuri Pankov log_must create_file $name1 55*d7e7cb9cSYuri Pankov for name2 in $NAMES_D ; do 56*d7e7cb9cSYuri Pankov log_must lookup_file $name2 57*d7e7cb9cSYuri Pankov done 58*d7e7cb9cSYuri Pankov for name2 in $NAMES_C; do 59*d7e7cb9cSYuri Pankov log_mustnot lookup_file $name2 60*d7e7cb9cSYuri Pankov done 61*d7e7cb9cSYuri Pankov delete_file $name1 62*d7e7cb9cSYuri Pankovdone 63*d7e7cb9cSYuri Pankov 64*d7e7cb9cSYuri Pankovdestroy_testfs 65*d7e7cb9cSYuri Pankov 66*d7e7cb9cSYuri Pankovlog_pass "CI-not-UN FS: lookup succeeds only if (norm=same)" 67