Lines Matching refs:xprt

69 #define rpc_buffer(xprt) ((xprt)->xp_p1)  argument
93 static void cache_set (SVCXPRT *xprt, u_long replylen);
106 #define su_data(xprt) ((struct svcudp_data *)(xprt->xp_p2)) argument
125 SVCXPRT *xprt; in svcudp_bufcreate() local
155 xprt = (SVCXPRT *) mem_alloc (sizeof (SVCXPRT)); in svcudp_bufcreate()
158 if (xprt == NULL || su == NULL || buf == NULL) in svcudp_bufcreate()
162 mem_free (xprt, sizeof (SVCXPRT)); in svcudp_bufcreate()
168 rpc_buffer (xprt) = buf; in svcudp_bufcreate()
169 xdrmem_create (&(su->su_xdrs), rpc_buffer (xprt), su->su_iosz, XDR_DECODE); in svcudp_bufcreate()
171 xprt->xp_p2 = (caddr_t) su; in svcudp_bufcreate()
172 xprt->xp_verf.oa_base = su->su_verfbody; in svcudp_bufcreate()
173 xprt->xp_ops = &svcudp_op; in svcudp_bufcreate()
174 xprt->xp_port = ntohs (addr.sin_port); in svcudp_bufcreate()
175 xprt->xp_sock = sock; in svcudp_bufcreate()
180 > sizeof (xprt->xp_pad)) in svcudp_bufcreate()
195 memset (&xprt->xp_pad [0], pad, sizeof (xprt->xp_pad)); in svcudp_bufcreate()
197 xprt_register (xprt); in svcudp_bufcreate()
198 return xprt; in svcudp_bufcreate()
218 svcudp_stat (SVCXPRT *xprt) in libc_hidden_def()
225 svcudp_recv (SVCXPRT *xprt, struct rpc_msg *msg) in svcudp_recv() argument
227 struct svcudp_data *su = su_data (xprt); in svcudp_recv()
246 iovp = (struct iovec *) &xprt->xp_pad [0]; in svcudp_recv()
247 mesgp = (struct msghdr *) &xprt->xp_pad [sizeof (struct iovec)]; in svcudp_recv()
250 iovp->iov_base = rpc_buffer (xprt); in svcudp_recv()
254 mesgp->msg_name = &(xprt->xp_raddr); in svcudp_recv()
256 mesgp->msg_control = &xprt->xp_pad [sizeof (struct iovec) in svcudp_recv()
258 mesgp->msg_controllen = sizeof(xprt->xp_pad) in svcudp_recv()
260 rlen = __recvmsg (xprt->xp_sock, mesgp, 0); in svcudp_recv()
288 rlen = __recvfrom (xprt->xp_sock, rpc_buffer (xprt), in svcudp_recv()
290 (struct sockaddr *) &(xprt->xp_raddr), &len); in svcudp_recv()
291 xprt->xp_addrlen = len; in svcudp_recv()
307 if (cache_get (xprt, msg, &reply, &replylen)) in svcudp_recv()
314 (void) __sendmsg (xprt->xp_sock, mesgp, 0); in svcudp_recv()
318 (void) __sendto (xprt->xp_sock, reply, (int) replylen, 0, in svcudp_recv()
319 (struct sockaddr *) &xprt->xp_raddr, len); in svcudp_recv()
327 svcudp_reply (SVCXPRT *xprt, struct rpc_msg *msg) in svcudp_reply() argument
329 struct svcudp_data *su = su_data (xprt); in svcudp_reply()
345 mesgp = (struct msghdr *) &xprt->xp_pad [sizeof (struct iovec)]; in svcudp_reply()
348 iovp = (struct iovec *) &xprt->xp_pad [0]; in svcudp_reply()
349 iovp->iov_base = rpc_buffer (xprt); in svcudp_reply()
351 sent = __sendmsg (xprt->xp_sock, mesgp, 0); in svcudp_reply()
355 sent = __sendto (xprt->xp_sock, rpc_buffer (xprt), slen, 0, in svcudp_reply()
356 (struct sockaddr *) &(xprt->xp_raddr), in svcudp_reply()
357 xprt->xp_addrlen); in svcudp_reply()
363 cache_set (xprt, (u_long) slen); in svcudp_reply()
371 svcudp_getargs (SVCXPRT *xprt, xdrproc_t xdr_args, caddr_t args_ptr) in svcudp_getargs() argument
374 return (*xdr_args) (&(su_data (xprt)->su_xdrs), args_ptr); in svcudp_getargs()
378 svcudp_freeargs (SVCXPRT *xprt, xdrproc_t xdr_args, caddr_t args_ptr) in svcudp_freeargs() argument
380 XDR *xdrs = &(su_data (xprt)->su_xdrs); in svcudp_freeargs()
387 svcudp_destroy (SVCXPRT *xprt) in svcudp_destroy() argument
389 struct svcudp_data *su = su_data (xprt); in svcudp_destroy()
391 xprt_unregister (xprt); in svcudp_destroy()
392 (void) __close (xprt->xp_sock); in svcudp_destroy()
394 mem_free (rpc_buffer (xprt), su->su_iosz); in svcudp_destroy()
396 mem_free ((caddr_t) xprt, sizeof (SVCXPRT)); in svcudp_destroy()
517 cache_set (SVCXPRT *xprt, u_long replylen) in libc_hidden_nolink_sunrpc()
521 struct svcudp_data *su = su_data (xprt); in libc_hidden_nolink_sunrpc()
533 loc = CACHE_LOC (xprt, victim->cache_xid); in libc_hidden_nolink_sunrpc()
567 victim->cache_reply = rpc_buffer (xprt); in libc_hidden_nolink_sunrpc()
568 rpc_buffer (xprt) = newbuf; in libc_hidden_nolink_sunrpc()
569 xdrmem_create (&(su->su_xdrs), rpc_buffer (xprt), su->su_iosz, XDR_ENCODE); in libc_hidden_nolink_sunrpc()
575 loc = CACHE_LOC (xprt, victim->cache_xid); in libc_hidden_nolink_sunrpc()
587 cache_get (SVCXPRT *xprt, struct rpc_msg *msg, char **replyp, in cache_get() argument
592 struct svcudp_data *su = su_data (xprt); in cache_get()
597 loc = CACHE_LOC (xprt, su->su_xid); in cache_get()
618 memcpy (&uc->uc_addr, &xprt->xp_raddr, sizeof (uc->uc_addr)); in cache_get()