1#!/bin/sh 2# $FreeBSD: src/tools/regression/fstest/tests/open/06.t,v 1.1 2007/01/17 01:42:10 pjd Exp $ 3 4desc="open returns EACCES when the required permissions (for reading and/or writing) are denied for the given flags" 5 6n0=`namegen` 7n1=`namegen` 8 9expect 0 mkdir ${n0} 0755 10expect 0 chown ${n0} 65534 65534 11cdir=`pwd` 12cd ${n0} 13 14expect 0 -u 65534 -g 65534 create ${n1} 0644 15 16expect 0 -u 65534 -g 65534 chmod ${n1} 0600 17expect 0 -u 65534 -g 65534 open ${n1} O_RDONLY 18expect 0 -u 65534 -g 65534 open ${n1} O_WRONLY 19expect 0 -u 65534 -g 65534 open ${n1} O_RDWR 20expect 0 -u 65534 -g 65534 chmod ${n1} 0060 21expect 0 -u 65533 -g 65534 open ${n1} O_RDONLY 22expect 0 -u 65533 -g 65534 open ${n1} O_WRONLY 23expect 0 -u 65533 -g 65534 open ${n1} O_RDWR 24expect 0 -u 65534 -g 65534 chmod ${n1} 0006 25expect 0 -u 65533 -g 65533 open ${n1} O_RDONLY 26expect 0 -u 65533 -g 65533 open ${n1} O_WRONLY 27expect 0 -u 65533 -g 65533 open ${n1} O_RDWR 28 29expect 0 -u 65534 -g 65534 chmod ${n1} 0477 30expect 0 -u 65534 -g 65534 open ${n1} O_RDONLY 31expect EACCES -u 65534 -g 65534 open ${n1} O_WRONLY 32expect EACCES -u 65534 -g 65534 open ${n1} O_RDWR 33expect 0 -u 65534 -g 65534 chmod ${n1} 0747 34expect 0 -u 65533 -g 65534 open ${n1} O_RDONLY 35expect EACCES -u 65533 -g 65534 open ${n1} O_WRONLY 36expect EACCES -u 65533 -g 65534 open ${n1} O_RDWR 37expect 0 -u 65534 -g 65534 chmod ${n1} 0774 38expect 0 -u 65533 -g 65533 open ${n1} O_RDONLY 39expect EACCES -u 65533 -g 65533 open ${n1} O_WRONLY 40expect EACCES -u 65533 -g 65533 open ${n1} O_RDWR 41 42expect 0 -u 65534 -g 65534 chmod ${n1} 0277 43expect EACCES -u 65534 -g 65534 open ${n1} O_RDONLY 44expect 0 -u 65534 -g 65534 open ${n1} O_WRONLY 45expect EACCES -u 65534 -g 65534 open ${n1} O_RDWR 46expect 0 -u 65534 -g 65534 chmod ${n1} 0727 47expect EACCES -u 65533 -g 65534 open ${n1} O_RDONLY 48expect 0 -u 65533 -g 65534 open ${n1} O_WRONLY 49expect EACCES -u 65533 -g 65534 open ${n1} O_RDWR 50expect 0 -u 65534 -g 65534 chmod ${n1} 0772 51expect EACCES -u 65533 -g 65533 open ${n1} O_RDONLY 52expect 0 -u 65533 -g 65533 open ${n1} O_WRONLY 53expect EACCES -u 65533 -g 65533 open ${n1} O_RDWR 54 55expect 0 -u 65534 -g 65534 chmod ${n1} 0177 56expect EACCES -u 65534 -g 65534 open ${n1} O_RDONLY 57expect EACCES -u 65534 -g 65534 open ${n1} O_WRONLY 58expect EACCES -u 65534 -g 65534 open ${n1} O_RDWR 59expect 0 -u 65534 -g 65534 chmod ${n1} 0717 60expect EACCES -u 65533 -g 65534 open ${n1} O_RDONLY 61expect EACCES -u 65533 -g 65534 open ${n1} O_WRONLY 62expect EACCES -u 65533 -g 65534 open ${n1} O_RDWR 63expect 0 -u 65534 -g 65534 chmod ${n1} 0771 64expect EACCES -u 65533 -g 65533 open ${n1} O_RDONLY 65expect EACCES -u 65533 -g 65533 open ${n1} O_WRONLY 66expect EACCES -u 65533 -g 65533 open ${n1} O_RDWR 67 68expect 0 -u 65534 -g 65534 chmod ${n1} 0077 69expect EACCES -u 65534 -g 65534 open ${n1} O_RDONLY 70expect EACCES -u 65534 -g 65534 open ${n1} O_WRONLY 71expect EACCES -u 65534 -g 65534 open ${n1} O_RDWR 72expect 0 -u 65534 -g 65534 chmod ${n1} 0707 73expect EACCES -u 65533 -g 65534 open ${n1} O_RDONLY 74expect EACCES -u 65533 -g 65534 open ${n1} O_WRONLY 75expect EACCES -u 65533 -g 65534 open ${n1} O_RDWR 76expect 0 -u 65534 -g 65534 chmod ${n1} 0770 77expect EACCES -u 65533 -g 65533 open ${n1} O_RDONLY 78expect EACCES -u 65533 -g 65533 open ${n1} O_WRONLY 79expect EACCES -u 65533 -g 65533 open ${n1} O_RDWR 80 81expect 0 -u 65534 -g 65534 unlink ${n1} 82 83cd ${cdir} 84expect 0 rmdir ${n0} 85