From amakawa@nebula.sf.t.u-tokyo.ac.jp  Wed Jun 24 11:51:12 1998
Received: from nebula.sf.t.u-tokyo.ac.jp (nebula.sf.t.u-tokyo.ac.jp [133.11.87.23])
          by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id LAA04029
          for <FreeBSD-gnats-submit@freebsd.org>; Wed, 24 Jun 1998 11:51:05 -0700 (PDT)
          (envelope-from amakawa@nebula.sf.t.u-tokyo.ac.jp)
Received: (from amakawa@localhost)
	by nebula.sf.t.u-tokyo.ac.jp (8.8.8/8.8.8) id DAA00894;
	Thu, 25 Jun 1998 03:50:52 +0900 (JST)
	(envelope-from amakawa)
Message-Id: <199806241850.DAA00894@nebula.sf.t.u-tokyo.ac.jp>
Date: Thu, 25 Jun 1998 03:50:52 +0900 (JST)
From: amakawa@sf.t.u-tokyo.ac.jp
Reply-To: amakawa@sf.t.u-tokyo.ac.jp
To: FreeBSD-gnats-submit@freebsd.org
Subject: bad default value of ${fs} for type:=host in /etc/amd.map
X-Send-Pr-Version: 3.2

>Number:         7054
>Category:       conf
>Synopsis:       [PATCH] bad default value of ${fs} for type:=host in /etc/amd.map
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 24 12:00:01 PDT 1998
>Closed-Date:    Thu Nov 19 23:36:45 PST 1998
>Last-Modified:  Thu Nov 19 23:36:58 PST 1998
>Originator:     Amakawa Shuhei
>Release:        FreeBSD 2.2.6-RELEASE i386
>Organization:
Univ. of Tokyo
>Environment:

FreeBSD 2.2.6-RELEASE i386

>Description:

The default value of ${fs} for type:=host given in /etc/amd.map
causes clash between the mount tree for network host file system
(type:=host) and that for network filesystem (type:=nfs).

>How-To-Repeat:

Suppose `ns' is an NFS server, exporting `/export/usr'.
Use the following map for `/amnt'.

-----------------------------------------------------------------
tmp             type:=nfs;rhost:=ns;rfs:=/export/usr/tmp
-----------------------------------------------------------------

Then you can access `ns:/export/usr/tmp' via `/amnt/tmp' and
`/host/ns/export/usr/tmp'.

Now, do the following.

% cd /amnt/tmp
% df .
Filesystem           1K-blocks     Used    Avail Capacity  Mounted on
ns:/export/usr/tmp    3945840  2096272  1770652    54%    /a/ns/export/usr/tmp
                                                          ~~~~~~~~~~~~~~~~~~~~
                                                               OK.
% cd /host/ns/export/usr/tmp
% df .
Filesystem           1K-blocks     Used    Avail Capacity  Mounted on
ns:/export/usr/tmp    3945840  2096272  1770652    54%    /a/ns/export/usr
                                                          ~~~~~~~~~~~~~~~~
                                                        This means 
							/amnt/tmp is shadowed.
% cd /amnt/tmp
% df .
Filesystem           1K-blocks     Used    Avail Capacity  Mounted on
ns:/export/usr/tmp    3945840  2096272  1770652    54%    /a/ns/export/usr
                                                          ~~~~~~~~~~~~~~~~
							Shadowed indeed.
% amq -u /amnt/tmp
% amq -u /host/ns
% cd /amnt/tmp
/amnt/tmp: No such file or directory.

Ugh!


>Fix:

I suggest `/host' be appended to fs because this map is used for
the network *host* filesystem (type:=host).  The clash can be thus
avoided.  Note that the manual page (info amd) suggests
"fs:=${autodir}/${rhost}/root", but the same suggestion is given
for the network group filesystem (type:=nfsx).  So I suppose the
better solution is to use "fs:=${autodir}/${rhost}/host" for
type:=host and "fs:=${autodir}/${rhost}/nfsx" for type:=nfsx.

----8<---- snip ----8<----
*** amd.map.org	Mon Jun 15 11:10:29 1998
--- amd.map	Thu Jun 25 02:45:59 1998
***************
*** 1,2 ****
! /defaults       type:=host;fs:=${autodir}/${rhost};rhost:=${key}
  *               opts:=rw,grpid,resvport,nfsv2,nosuid,nodev
--- 1,2 ----
! /defaults       type:=host;fs:=${autodir}/${rhost}/host;rhost:=${key}
  *               opts:=rw,grpid,resvport,nfsv2,nosuid,nodev
---->8---- snip ---->8----
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->suspended 
State-Changed-By: phk 
State-Changed-When: Thu Jun 25 00:09:50 PDT 1998 
State-Changed-Why:  
awaiting committer 
State-Changed-From-To: suspended->closed 
State-Changed-By: obrien 
State-Changed-When: Thu Nov 19 23:36:45 PST 1998 
State-Changed-Why:  
committed 
>Unformatted:
