aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2009-03-18 20:46:59 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2009-03-28 15:55:40 -0400
commitba5c35e0c7e30b095636cd58b0854fdbd3c32947 (patch)
tree43f59f4c98576811e66567e06470f0d840db18ab /net
parentfc28decdc93633a65d54e42498e9e819d466329c (diff)
SUNRPC: Don't return EPROTONOSUPPORT in svc_register()'s helpers
The RPC client returns -EPROTONOSUPPORT if there is a protocol version mismatch (ie the remote RPC server doesn't support the RPC protocol version sent by the client). Helpers for the svc_register() function return -EPROTONOSUPPORT if they don't recognize the passed-in IPPROTO_ value. These are two entirely different failure modes. Have the helpers return -ENOPROTOOPT instead of -EPROTONOSUPPORT. This will allow callers to determine more precisely what the underlying problem is, and decide to report or recover appropriately. This patch is part of a series that addresses http://bugzilla.kernel.org/show_bug.cgi?id=12256 Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/svc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
index d72ff44826d8..17e0d7265dfd 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -749,7 +749,7 @@ static int __svc_rpcb_register4(const u32 program, const u32 version,
749 netid = RPCBIND_NETID_TCP; 749 netid = RPCBIND_NETID_TCP;
750 break; 750 break;
751 default: 751 default:
752 return -EPROTONOSUPPORT; 752 return -ENOPROTOOPT;
753 } 753 }
754 754
755 return rpcb_v4_register(program, version, 755 return rpcb_v4_register(program, version,
@@ -785,7 +785,7 @@ static int __svc_rpcb_register6(const u32 program, const u32 version,
785 netid = RPCBIND_NETID_TCP6; 785 netid = RPCBIND_NETID_TCP6;
786 break; 786 break;
787 default: 787 default:
788 return -EPROTONOSUPPORT; 788 return -ENOPROTOOPT;
789 } 789 }
790 790
791 return rpcb_v4_register(program, version, 791 return rpcb_v4_register(program, version,