Merge branch 'tp/S1038339_logfsal' into ibm_next_tmp
Merge branch 'tp/jim-S1039873' into ibm_next_tmp
Merge branch 'tp/jv_lru_gc_alg' into ibm_next_tmp
Merge branch 'tp/suhrud_init_script_2' into ibm_next_tmp
Merge branch 'tp/S1040055' into ibm_next_tmp
Merge branch 'tp/ibm_next_log2' into ibm_next_tmp
Merge branch 'tp/jim-S1039680' into ibm_next_tmp
Merge branch 'tp/jim-S1040148' into ibm_next_tmp
Merge branch 'tp/jim-0813' into ibm_next_tmp
Merge branch 'tp/ibm_next_S1040034' into ibm_next_tmp
Merge branch 'tp/ibm_next_fix_time' into ibm_next_tmp
Fix sub-dir mount issue for v3

Mount needs to do permission checking once it has an export entry
matching the mounted path. We actually skip any permission
checking at this time, simply creating root credentials. That may
not be quite right for all scenarios but will do for now.

NFS Illustrated essentially implies mount requests should not be
denied, and that many servers allow AUTH_NULL mount requests.

Note that a sub-dir mount COULD skip into a directory that is
not normally accessible from the client if it mounted the root
of the export.

Signed-off-by: Frank Filz <ffilzlnx@us.ibm.com>
Add additional export debug and prevent duplicate Export_Ids

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Strip out some unused cruft from exports

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Fix some IPv6 compile issues

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Fix up export permission checking

Order access list checking such that Root_Access does not
grant read/write access. A separate access must grant
some access. If no other access list grants any access,
read access will be granted though.

The access list checking is more unified so the same logic is
used for both IPv4 and IPv6 clients.

nfs_export_check_access now returns the export permission options
that apply to the client. This makes it easier to do proper permission
checking

This rework will make it much easier to implement the EXPORT_CLIENT
stanza that allows more per client permissions.

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Update test directory to compile considering current state of code.

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Remove obsolete access_type field from exportlist_t

This removes some export permission checking from
NFS v4 if the Access_Type field was used instead of
R_Access and/or RW_Access, but it's export permission
checking is totally wrong anyway since it doesn't
honor the R_Access and RW_Access lists. NFS v4
permission checking will be fixed in a later commit.

This commit also allows mixing of Access_Type/Access
with RW_Acces, R_Access, etc. There is no reason they
can't mix. The Access list lists the clients that
will use the base permissions in options while
the other lists imply specific option flags used
in place of those in the base options.

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
first export may not be v4, but that shouldn't bother nfs4_Compound

Signed-off-by: Frank Filz <ffilz@us.ibm.com>
Disable broken export reload

The old code is left in place, conditional compiled out
to serve as a starting point for a future implementation
but it will need to be completely re-worked.

Export entries that are updated must be updated in place
since SAL and other places will have references to them.

Export entries that are no longer present will need to
be cleaned up, state revoked, cache inode entries possibly
cleaned up, maybe even FSAL unloaded.

New export entries will need to have stuff done for them
also possibly.

Signed-off-by: Frank Filz <ffilz@us.ibm.com>