1121730Sphk#!/bin/sh
2121730Sphk#
3121730Sphk# Copyright (c) 2003 Poul-Henning Kamp
4121730Sphk# All rights reserved.
5121730Sphk#
6121730Sphk# Please see src/share/examples/etc/bsd-style-copyright.
7121730Sphk#
8121730Sphk# $FreeBSD$
9121730Sphk#
10121730Sphk
11121730Sphkset -e
12121730Sphk
13121730SphkTMP=/tmp/mtree.$$
14121730Sphk
15121730Sphkrm -rf ${TMP}
16121730Sphkmkdir -p ${TMP} ${TMP}/mr ${TMP}/mt
17121730Sphk
18121730Sphk
19121730Sphkmkdir ${TMP}/mt/foo
20121730Sphkmkdir ${TMP}/mr/\*
21121730Sphkmtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1
22121730Sphkif [ -d ${TMP}/mt/foo ] ; then
23121730Sphk	echo "ERROR Mtree create fell for filename with '*' char" 1>&2
24121730Sphk	rm -rf ${TMP}
25121730Sphk	exit 1
26121730Sphkfi
27121730Sphkrmdir ${TMP}/mr/\*
28121730Sphk
29121730Sphkmkdir -p ${TMP}/mt/foo
30121730Sphkmkdir ${TMP}/mr/\[f\]oo
31121730Sphkmtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1
32121730Sphkif [ -d ${TMP}/mt/foo ] ; then
33121730Sphk	echo "ERROR Mtree create fell for filename with '[' char" 1>&2
34121730Sphk	rm -rf ${TMP}
35121730Sphk	exit 1
36121730Sphkfi
37121730Sphkrmdir ${TMP}/mr/\[f\]oo
38121730Sphk
39121730Sphkmkdir -p ${TMP}/mt/foo
40121730Sphkmkdir ${TMP}/mr/\?oo
41121730Sphkmtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1
42121730Sphkif [ -d ${TMP}/mt/foo ] ; then
43121730Sphk	echo "ERROR Mtree create fell for filename with '?' char" 1>&2
44121730Sphk	rm -rf ${TMP}
45121730Sphk	exit 1
46121730Sphkfi
47121730Sphkrmdir ${TMP}/mr/\?oo
48121730Sphk
49121736Sphkmkdir ${TMP}/mr/\#
50121736Sphkmtree -c -p ${TMP}/mr > ${TMP}/_
51121736Sphkif mtree -U -r -p ${TMP}/mt < ${TMP}/_ > /dev/null 2>&1 ; then
52121736Sphk	true
53121736Sphkelse
54121736Sphk	echo "ERROR Mtree create fell for filename with '#' char" 1>&2
55121736Sphk	rm -rf ${TMP}
56121736Sphk	exit 1
57121736Sphkfi
58121736Sphk	
59121736Sphkif [ ! -d ${TMP}/mt/\# ] ; then
60121736Sphk	echo "ERROR Mtree update failed to create name with '#' char" 1>&2
61121736Sphk	rm -rf ${TMP}
62121736Sphk	exit 1
63121736Sphkfi
64121736Sphkrmdir ${TMP}/mr/\#
65121736Sphk
66121730Sphkrm -rf ${TMP}
67121730Sphkexit 0
68