aboutsummaryrefslogtreecommitdiff
path: root/sunrpc
diff options
context:
space:
mode:
Diffstat (limited to 'sunrpc')
-rw-r--r--sunrpc/pm_getport.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sunrpc/pm_getport.c b/sunrpc/pm_getport.c
index a15f978..00e1ba9 100644
--- a/sunrpc/pm_getport.c
+++ b/sunrpc/pm_getport.c
@@ -66,9 +66,13 @@ pmap_getport (address, program, version, protocol)
struct pmap parms;
address->sin_port = htons (PMAPPORT);
- client = INTUSE(clntudp_bufcreate) (address, PMAPPROG, PMAPVERS, timeout,
- &socket, RPCSMALLMSGSIZE,
- RPCSMALLMSGSIZE);
+ if (protocol == IPPROTO_TCP)
+ client = INTUSE(clnttcp_create) (address, PMAPPROG, PMAPVERS, &socket,
+ RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
+ else
+ client = INTUSE(clntudp_bufcreate) (address, PMAPPROG, PMAPVERS, timeout,
+ &socket, RPCSMALLMSGSIZE,
+ RPCSMALLMSGSIZE);
if (client != (CLIENT *) NULL)
{
struct rpc_createerr *ce = &get_rpc_createerr ();