From nobody@FreeBSD.org  Mon Mar  5 10:37:12 2007
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id 59BD216A400
	for <freebsd-gnats-submit@FreeBSD.org>; Mon,  5 Mar 2007 10:37:12 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [69.147.83.33])
	by mx1.freebsd.org (Postfix) with ESMTP id 49B9C13C442
	for <freebsd-gnats-submit@FreeBSD.org>; Mon,  5 Mar 2007 10:37:12 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.13.1/8.13.1) with ESMTP id l25AbBwJ092151
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 5 Mar 2007 10:37:11 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.13.1/8.13.1/Submit) id l25AbBhI092147;
	Mon, 5 Mar 2007 10:37:11 GMT
	(envelope-from nobody)
Message-Id: <200703051037.l25AbBhI092147@www.freebsd.org>
Date: Mon, 5 Mar 2007 10:37:11 GMT
From: Antuan Avdioukhine<antuan@cplus.ru>
To: freebsd-gnats-submit@FreeBSD.org
Subject: mountd(8) does not accept identical host sets on different mount entries on the same file system
X-Send-Pr-Version: www-3.0

>Number:         109911
>Category:       bin
>Synopsis:       mountd(8) does not accept identical host sets on different mount entries on the same file system
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Mar 05 10:40:03 GMT 2007
>Closed-Date:    
>Last-Modified:  Sun Apr 22 09:24:54 GMT 2007
>Originator:     Antuan Avdioukhine
>Release:        FreeBSD 5.5-STABLE i386
>Organization:
Convey Plus
>Environment:
System: FreeBSD tyger.cplus.ru 5.5-STABLE FreeBSD 5.5-STABLE #2: Sat Mar 3 18:54
:38 MSK 2007 toor@tyger.cplus.ru:/usr/obj/usr/src/sys/TYGER i386

>Description:
If /etc/exports contains mount entries, belongs to one file system and
exported for identical host sets mountd(8) produces an error "can't
change attributes for <mountpoint path>" and "bad export line <mountpoint
path>" for each mount entry excluding first one. This is happens whether
different mount options was used or not.
>How-To-Repeat:
1. Create two directories for mount points on the same file system, eg:
   /tmp/u1 and /tmp/u2, check that this directories are suitable for
   export (eg. have proper permissions) and no other filesystems mounted
   on this directories.

2. Start NFS server as usual. Check that syslog catches daemon facility
   at notice level or lower. mountd started with flags: -l -r -n

3. create /etc/exports file entries:     
    
/tmp/u1 10.0.0.1
/tmp/u2 10.0.0.1

4. run 'kill -1 `head -1 /var/run/montd.pid`'

5. Check log for mountd reporting. It is expected to see messages:
Mar  5 13:02:35 tyger mountd[50813]: can't change attributes for /tmp/u2
Mar  5 13:02:35 tyger mountd[50813]: bad exports list line /tmp/u2 10.0.0.1

You may also change host sets from single host to list of hosts or
networks, with the only condition: if you are using networks, all
networks must be with identical addreses and masks.

>Fix:
Workaround:

For host sets specified with network-mask pair it is possible to split
network using longer masks, eg.

/tmp/u1 -network 10.0.0.0 -mask 255.255.255.0
/tmp/u2 -network 10.0.0.0 -mask 255.255.255.128
/tmp/u2 -network 10.0.0.128 -mask 255.255.255.128

I don't know suitable workaround for host sets specified with host lists.

>Release-Note:
>Audit-Trail:
>Unformatted:
