]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - tools/regression/msdosfs/msdosfstest-5.sh
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / tools / regression / msdosfs / msdosfstest-5.sh
1 #!/bin/sh
2 # $FreeBSD$
3 # A really simple script to create a swap-backed msdosfs filesystem, then
4 # test to see if msdosfs_conv.c rev 1.45[2] works properly.
5 # Note that this is a requisite condition but far away from sufficient condition.
6 # You must check file system by "dir /x" on MS Windows.
7
8 mkdir /tmp/msdosfstest
9 mdconfig -a -t swap -s 128m -u 10
10 bsdlabel -w md10 auto
11 newfs_msdos -F 16 -b 8192 /dev/md10a
12 mount_msdosfs -L ja_JP.eucJP -D CP932 -l /dev/md10a /tmp/msdosfstest
13 # touch /tmp/msdosfstest/U+FF71 (HALFWIDTH KATAKANA LETTER A)
14 touch /tmp/msdosfstest/\8e±
15 if [ $? -eq 0 ]; then
16         umount /tmp/msdosfstest
17         mount_msdosfs -L ja_JP.eucJP -D CP932 -s /dev/md10a /tmp/msdosfstest
18         ls /tmp/msdosfstest/\8e±
19         if [ $? -eq 0 ]; then
20                 echo "ok 5 (pass stage 1/2)"
21                 umount /tmp/msdosfstest
22                 mount_msdosfs -L uk_UA.KOI8-U -D CP866 -l /dev/md10a /tmp/msdosfstest
23                 # ls /tmp/msdosfstest/0xb1 (MEDIUM SHADE)
24                 ls /tmp/msdosfstest/\91
25                 if [ $? -ne 0 ]; then
26                         # assume that U+FF71 was recorded with long name
27                         echo "ok 5 (pass stage 2/2)"
28                 else
29                         # only 0xb1 was found (doesn't have long name)
30                         echo "not ok 5"
31                 fi
32         else
33                 echo "not ok 5"
34         fi
35 else
36         echo "not ok 5"
37 fi
38 umount /tmp/msdosfstest
39 mdconfig -d -u 10
40 rmdir /tmp/msdosfstest