]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - tools/regression/vfs/trailing_slash.t
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / tools / regression / vfs / trailing_slash.t
1 #!/bin/sh
2 #
3 # $FreeBSD$
4 #
5 # Tests vfs_lookup()'s handling of trailing slashes for symlinks that
6 # point to files.  See kern/21768
7 #
8
9 testfile="/tmp/testfile-$$"
10 testlink="/tmp/testlink-$$"
11
12 tests="
13 $testfile:$testlink:$testfile:0
14 $testfile:$testlink:$testfile/:1
15 $testfile:$testlink:$testlink:0
16 $testfile:$testlink:$testlink/:1
17 $testfile/:$testlink:$testlink:1
18 $testfile/:$testlink:$testlink/:1
19 "
20
21 touch $testfile || exit 1
22 trap "rm $testfile $testlink" EXIT
23
24 set $tests
25 echo "1..$#"
26 n=1
27 for testspec ; do
28         (
29                 IFS=:
30                 set $testspec
31                 unset IFS
32                 ln -fs "$1" "$2" || exit 1
33                 cat "$3" >/dev/null 2>&1
34                 ret=$?
35                 if [ "$ret" -eq "$4" ] ; then
36                         echo "ok $n"
37                 else
38                         echo "fail $n - expected $4, got $ret"
39                 fi
40         )
41         n=$((n+1))
42 done