Update newxprt->lt_addr on accept (svc_vc)

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Add svc_getlocal_netbuf.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Implement rpcb_find_mapped_addr.

Designed to simplify lookup of mapped addresses by an NLM client.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Track source address and port on UDP requests (svc_dg).

WARNING!  This is a significant API change, as the svc_dg
caller is required to free rq_rtaddr, if assigned.

The decision to to store this information in an opaque form
might not be ideal, but is consistent with current transport
handle logic, so makes sense for now.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Fix RPC_TIMEDOUT handling in clnt_dg_call.

It is incorrect to "timeout" without attempting to send.  Always
give poll a chance to find data (which we must do to avoid an
effective deadlock in the presence of timeouts).

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Serialize gss_wrap/gss_unwrap.

A small degree of unserialization could be achieved by moving
the critical section into the wrap/unwrap routines in authgss_prot.c,
but the potential gain looks small.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Notify clients on GSS context expiration.

  1/ adds "endtime" to ctx (exactly as you do)
  2/ fetches lifetime from gss_accept_sec_context.
  3/ computes and returns RPCSEC_GSS_CTXPROBLEM similarly to what
            you do.  It does not call authgss_ctx_hash_del() - I think
            that should only happen upon a call to RPCSEC_GSS_DESTROY.
            It does set *no_dispatch.
  It also
  4/ modifies the result of svcauth_gss_validate() to return an error
          code instead of true/false.  That's not important in this patch,
          but if we want to push the lifetime check down here it could be.

(Fixed return type of svcauth_gss_validate [Matt].)

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Fix memory leak from gss_get_mic.

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

Conflicts:
	src/svc_auth_gss.c
	tirpc/rpc/gss_internal.h
Use clock_gettime instead of time for Kerberos lifetime.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Invoke SVCAUTH_RELEASE.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Return RPCSEC_GSS_CREDPROBLEM on expiry.

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