Messages in this thread Patch in this message | | | Date | Wed, 20 Aug 2003 13:34:52 -0400 | From | Steve Dickson <> | Subject | [NFS] [PATCH] Stop call_decode() from ignorning RPC header errrors |
| |
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. --- 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. | |