From c1c7ae92a2b6bb7d57270fadd7a5d61c90fa3781 Mon Sep 17 00:00:00 2001 From: Rajesh Joseph Date: Thu, 1 Aug 2013 12:55:51 +0530 Subject: nfs: Fix for NFS crash during blocking NLM call. Bug 990887: During a blocking NLM call NFS server is crashing. Cause: When nlm4_establish_callback function is called from nlm4svc_send_granted the cs->req->trans pointer is NULL. Thus using this pointer will result in a crash. Whereas cs->trans points to a valid transport object. NLM should use cs->trans instead of cs->req->trans. Fix: Replaced cs->req->trans with cs->trans. Backport of: http://review.gluster.org/#/c/5452/ BUG: 990887 Change-Id: I33d4b6634752333d6791b1a47ebf10c787c22120 Signed-off-by: Justin Clift Reviewed-on: http://review.gluster.org/7478 Reviewed-by: Harshavardhana Reviewed-by: Kaleb KEITHLEY --- xlators/nfs/server/src/nlm4.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xlators/nfs/server/src/nlm4.c b/xlators/nfs/server/src/nlm4.c index e040aa5acdb..eca107d83a1 100644 --- a/xlators/nfs/server/src/nlm4.c +++ b/xlators/nfs/server/src/nlm4.c @@ -941,7 +941,7 @@ nlm4_establish_callback (void *csarg) case AF_INET: inet_ntop (AF_INET, &sock_union.sin.sin_addr, peerip, INET6_ADDRSTRLEN+1); - inet_ntop (AF_INET, &(((struct sockaddr_in *)&cs->req->trans->myinfo.sockaddr)->sin_addr), + inet_ntop (AF_INET, &(((struct sockaddr_in *)&cs->trans->myinfo.sockaddr)->sin_addr), myip, INET6_ADDRSTRLEN + 1); break; -- cgit