diff mbox

[1/3] fedfsd: libtirpc 1.0 moves the xp_auth field

Message ID 20160412160014.935.49138.stgit@seurat.1015granger.net
State Accepted
Headers show

Commit Message

Chuck Lever April 12, 2016, 4 p.m. UTC
svcauth_gss_get_principal() comes from the legacy U-M svc GSS
API, but is not documented, and does not appear in TI-RPC
headers. fedfs-utils 0.10 adopted this API to provide RPCGSS
support for the FedFS ADMIN protocol.

As a consequence of using an undocumented API, fedfs-utils
0.10 is exposed to library changes to this API. Add some
compatibility measures.

The fedfsd in fedfs-utils 0.11 replaces this call with a valid
contract API that does not expose SVCAUTH. Just a rebuild-relink
should take care of it there.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
 src/fedfsd/gss.c |    4 ++++
 1 file changed, 4 insertions(+)
diff mbox

Patch

diff --git a/src/fedfsd/gss.c b/src/fedfsd/gss.c
index c63f42f..f762466 100644
--- a/src/fedfsd/gss.c
+++ b/src/fedfsd/gss.c
@@ -175,6 +175,10 @@  fedfsd_get_gss_cred(struct svc_req *rqstp)
 {
 	SVCAUTH *auth;
 
+#if defined(SVC_XP_AUTH)
+	auth = &SVC_XP_AUTH(rqstp->rq_xprt);
+#else
 	auth = rqstp->rq_xprt->xp_auth;
+#endif
 	return svcauth_gss_get_principal(auth);
 }