public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [NFS] [PATCH] Stop call_decode() from ignorning RPC header errrors
@ 2003-08-20 17:34 Steve Dickson
  2003-08-20 19:09 ` Trond Myklebust
  2003-08-27 11:08 ` [Acl-Devel] " Andreas Gruenbacher
  0 siblings, 2 replies; 3+ messages in thread
From: Steve Dickson @ 2003-08-20 17:34 UTC (permalink / raw)
  To: nfs; +Cc: linux-kernel, acl-devel

[-- Attachment #1: Type: text/plain, Size: 187 bytes --]

This patch stop call_decode() from ignoring errors
that are found while parsing the RPC header. I turns
out the nfs acls routines need these error codes to do
the right thing...

SteveD.

[-- Attachment #2: linux-2.4.21-sunrpc-calldecode.patch --]
[-- Type: text/plain, Size: 703 bytes --]

--- linux-2.4.21/net/sunrpc/clnt.c.diff	2003-08-18 11:11:22.000000000 -0400
+++ linux-2.4.21/net/sunrpc/clnt.c	2003-08-20 12:13:02.000000000 -0400
@@ -784,9 +784,16 @@ call_decode(struct rpc_task *task)
 				__FUNCTION__);
 
 	/* Verify the RPC header */
-	if (!(p = call_verify(task)))
+	if (!(p = call_verify(task))) {
+		/*
+		 * When call_verfiy sets tk_action to NULL (via task_exit)
+		 * a non-retry-able error has occurred (like the server
+		 * not supporting a particular procedure call).
+		 */
+		if (task->tk_action == NULL)
+			return;
 		goto out_retry;
-
+	}
 	/*
 	 * The following is an NFS-specific hack to cater for setuid
 	 * processes whose uid is mapped to nobody on the server.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-08-27 11:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-08-20 17:34 [NFS] [PATCH] Stop call_decode() from ignorning RPC header errrors Steve Dickson
2003-08-20 19:09 ` Trond Myklebust
2003-08-27 11:08 ` [Acl-Devel] " Andreas Gruenbacher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox