Fix CID_67152: Self assignment  (NO_EFFECT)
Fix DisplayLogComponentLevel recursion with NIV_FULL_DEBUG

If ganesha is started with NIV_FULL_DEBUG, DisplayLogComponentLevel
calls PTHREAD_RWLOCK_xxx() functions which call DisplayLogComponentLevel
to log messages. This continues in a loop until segmentation fault
happens!  A regression introduced by commit
344de4ab632713145194e936a8fb3568b9538321

Redefine PTHREAD_RWLOCK_xxx macros in logging file to avoid logging
inside PTHREAD_RWLOCK_xxx macros.

Signed-off-by: Malahal Naineni <malahal@us.ibm.com>
Reported-by: Soumya Koduri <skoduri@redhat.com>
Reviewed-by: Frank S. Filz <ffilzlnx@mindspring.com>
Fix errno 34 (ERANGE) with getgrouplist() call

The first getgrouplist call with 0 ngroups returns -1 as the man page
says, but errno was set to 34 (instead of 0) under some environments.
The man page doesn't talk about errno with regards to getgrouplist call.
It did set the ngroups to the expected value!

Removed the errno check with getgrouplist call. The code assumes that
ngroups is set correctly no matter what the errno value is.

Reported-by: John Dorfner <dorfner@us.ibm.com>
Signed-off-by: Malahal Naineni <malahal@us.ibm.com>
Acked-by: Jim Lieb <jlieb@panasas.com>
Reviewed-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
Acked-by: Frank S. Filz <ffilzlnx@mindspring.com>
Fix getgrouplist race

We make first getgrouplist() call with 0 ngroups to get the number of
groups the user is in. We then make the second call with just enough
memory to hold returned ngroups from the first call. If someone adds the
user to a new group between those two calls, both calls will fail!

This commit adds a third call with the largest ngroups we support (1000)
to make the third call. We resize the buffer after the call to just fit
the returned ngroups.

Signed-off-by: Malahal Naineni <malahal@us.ibm.com>
Reviewed-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
Acked-by: Frank S. Filz <ffilzlnx@mindspring.com>
CID30206: fix locking issue in nfs41_foreach_client_callback
Need to asynchroniously invoke client callback to
avoid releasing lock while traversing the nsm client RBT tree.

Signed-off-by: Rong Zeng <rongzeng@us.ibm.com>
Contrib: Fix compile for both <= RHEL6 and current distros

Switch Fedora 15 and later.

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
Enlarge VFS_MAX_HANDLE to 48 to allow room for panfs handles

Signed-off-by: Frank S. Filz <ffilzlnx@mindspring.com>
Remove dead code in common_utils.c

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
Deprecate common_utils.c

The only two functions left were only used by the handle mapping db code
in PROXY.  Move them there and get rid of the rest.

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
Fix config parsing for PROXY

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
Remove release_export_serializer

This really doesn't accomplish anything, go ahead and remove it.

Signed-off-by: Frank S. Filz <ffilzlnx@mindspring.com>
Clean out some dead code

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
Fix error message to be less alarming and more informative

Signed-off-by: Jim Lieb <lieb@sea-troll.net>
9P: fixes bug related to op_ctx management in 9p.

Signed-off-by: Philippe DENIEL <philippe.deniel@cea.fr>
Fix lock order reversal on drc recycle.

If drc's refcnt is 0, it is currently unreachable, so omit
taking drc's lock uncontested before inserting on the shared
recycle queue.

Coverity CID 30341.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Use 2 conditions in release_export_root_locked.

The intention is to allow the caller to indicate either
or both locks as held.  Don't check only for both.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Update ntirpc submodule.

Take socket leak fix (Coverity).

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
idmapper nfs4_gss_princ_to_ids fix:
idmapname2id() is called in case of name to id mapping.
This calls the nfs4_name_to_uid() API.

On success from nfs4_name_to_uid(), we again try to get id,
this time treating the username as kerberos principal.
This calls nfs4_gss_princ_to_ids() which is incorrect.

Removed the call nfs4_gss_princ_to_ids() from idmapname2id().

Reported-by: John Dorfner <dorfner@us.ibm.com>
Signed-off-by: suhrud <supatank@in.ibm.com>
Group-id bit check in ACE flag

check for specific bit instead of comparing complete number.
Ported from 1.5 : commit 44870c76b1950f85e3a2bc6b59a516993ed801a5

Signed-off-by: suhrud <supatank@in.ibm.com>
Encoding GROUP@ name in ACL
The code does not check if the group id is special id.
This leads to mapping the special "GROUP@" name to system gid 2.
Fixed to first check for special id while encoding the group name

Ported from 1.5: commit d3a14b898804585f2f594a0e4f6736769fad878d

Signed-off-by: suhrud <supatank@in.ibm.com>