# This is p's 'ambiguity' example
#
# mountMT("/s1/a", "/s2/b")
# mountMT("/s2/b", "/s3/c")
# mount("/s3/c", "/s4")
#
# Bogdan points out that: 'we will actually have d == "" in the echo example
# below (since Serve only mounts endpoints without suffixes)'
#
# I'm not using any local names because its easier to not get confused
# this way.
#
# resolve("/s1/a") can now have 4 possible objects, the mount point in server1,
# the mount point in server2, the mount point in server3, and the object d in
# server4.  When we make a call, like SetACL, how do we tell which one to
# modify?   If we glob("/s1/a") we get:
#
# "s1/a", ["/s2/b"(mountpoint)]
# "s1/a", ["/s3/c"(mountpoint)]
# "s1/a", ["/s4//"(mountpoint)]

root
eval $_
set s1=$MT_NAME

root
eval $_
set s2=$MT_NAME

root
eval $_
set s3=$MT_NAME

mount $s1/a $s2/b 1h
wait $_

mount $s2/b $s3/c 1h
wait $_

echoServer "Echo" $s3/c
set es_h=$_

# Returns the root and three mounts at s1/a.
ls $s1/...
set l=$_
eval $l
assert $RN 4
wait $l

# Returns three mounts at s1/a.
ls $s1/a
set l=$_
eval $l
assert $RN 3
wait $l

stop $es_h
