mountd: prefer non-V4ROOT exports.
authorJ. Bruce Fields <bfields@citi.umich.edu>
Thu, 24 Dec 2009 20:51:20 +0000 (15:51 -0500)
committerSteve Dickson <steved@redhat.com>
Wed, 13 Jan 2010 20:39:14 +0000 (15:39 -0500)
commit948cd2fb7983a4970132a97463b7928399bc51de
tree587327fe1cfc969e54e2f5f86117e2750808cd91
parent3b777b084a438f55482c8bf7508903ff4c30e1db
mountd: prefer non-V4ROOT exports.

If paths A and A/B are both exported, then we have a choice of exports
to return for A (or under A but still above A/B): we could return A
itself, or we could return a V4ROOT export leading to B.

For now, we will always prefer the non-V4ROOT export, whenever that is
an option.  This will allow clients to reach A/B as long as
adminstrators keep to the rule that the security on a parent permits the
union of the access permitted on any descendant.

In the future we may support more complicated arrangements.

(Note: this can't be avoided by simply not creating v4root exports with
the same domain and path, because different domains may have some
overlap.)

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
utils/mountd/cache.c