SUNRPC: Use GETADDR for rpcbind version 4 queries
authorChuck Lever <chuck.lever@oracle.com>
Wed, 25 Jun 2008 21:24:47 +0000 (17:24 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 9 Jul 2008 16:09:36 +0000 (12:09 -0400)
Some rpcbind servers that do support rpcbind version 4 do not support
the GETVERSADDR procedure.  Use GETADDR for querying rpcbind servers
via rpcbind version 4 instead of GETVERSADDR.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/rpcb_clnt.c

index a70cc1e1179291b181f939fc61d6085c5d981f61..625ba72e624a50397cc4216efb1269beb04f0bea 100644 (file)
@@ -587,6 +587,7 @@ static struct rpc_procinfo rpcb_procedures3[] = {
 static struct rpc_procinfo rpcb_procedures4[] = {
        PROC(SET,               mapping,        set),
        PROC(UNSET,             mapping,        set),
+       PROC(GETADDR,           getaddr,        getaddr),
        PROC(GETVERSADDR,       getaddr,        getaddr),
 };
 
@@ -594,7 +595,7 @@ static struct rpcb_info rpcb_next_version[] = {
 #ifdef CONFIG_SUNRPC_BIND34
        {
                .rpc_vers       = RPCBVERS_4,
-               .rpc_proc       = &rpcb_procedures4[RPCBPROC_GETVERSADDR],
+               .rpc_proc       = &rpcb_procedures4[RPCBPROC_GETADDR],
        },
        {
                .rpc_vers       = RPCBVERS_3,
@@ -614,7 +615,7 @@ static struct rpcb_info rpcb_next_version6[] = {
 #ifdef CONFIG_SUNRPC_BIND34
        {
                .rpc_vers       = RPCBVERS_4,
-               .rpc_proc       = &rpcb_procedures4[RPCBPROC_GETVERSADDR],
+               .rpc_proc       = &rpcb_procedures4[RPCBPROC_GETADDR],
        },
        {
                .rpc_vers       = RPCBVERS_3,