1#!/bin/sh 2# $FreeBSD: src/tools/regression/fstest/tests/rename/06.t,v 1.1 2007/01/17 01:42:10 pjd Exp $ 3 4desc="rename returns EPERM if the file pointed at by the 'from' argument has its immutable, undeletable or append-only flag set" 5 6n0=`namegen` 7n1=`namegen` 8 9expect 0 create ${n0} 0644 10for flag in SF_IMMUTABLE UF_IMMUTABLE SF_APPEND UF_APPEND; do 11 expect 0 chflags ${n0} ${flag} 12 expect ${flag} stat ${n0} flags 13 expect EPERM rename ${n0} ${n1} 14done 15expect 0 chflags ${n0} none 16expect 0 unlink ${n0} 17 18expect 0 mkdir ${n0} 0755 19for flag in SF_IMMUTABLE UF_IMMUTABLE SF_APPEND UF_APPEND; do 20 expect 0 chflags ${n0} ${flag} 21 expect ${flag} stat ${n0} flags 22 expect EPERM rename ${n0} ${n1} 23done 24expect 0 chflags ${n0} none 25expect 0 rmdir ${n0} 26 27expect 0 mkfifo ${n0} 0644 28for flag in SF_IMMUTABLE UF_IMMUTABLE SF_APPEND UF_APPEND; do 29 expect 0 chflags ${n0} ${flag} 30 expect ${flag} stat ${n0} flags 31 expect EPERM rename ${n0} ${n1} 32done 33expect 0 chflags ${n0} none 34expect 0 unlink ${n0} 35 36expect 0 symlink ${n1} ${n0} 37for flag in SF_IMMUTABLE UF_IMMUTABLE SF_APPEND UF_APPEND; do 38 expect 0 lchflags ${n0} ${flag} 39 expect ${flag} lstat ${n0} flags 40 expect EPERM rename ${n0} ${n1} 41done 42expect 0 lchflags ${n0} none 43expect 0 unlink ${n0} 44