Lines Matching refs:xprt
55 #define rpc_buffer(xprt) ((xprt)->xp_p1) argument
87 #define su_data(xprt) ((struct svcudp_data *)(xprt->xp_p2)) argument
108 register SVCXPRT *xprt; local
134 xprt = svc_xprt_alloc();
135 if (xprt == NULL) {
144 svc_xprt_free(xprt);
150 if ((rpc_buffer(xprt) = (char *)mem_alloc(su->su_iosz)) == NULL) {
153 svc_xprt_free(xprt);
159 &(su->su_xdrs), rpc_buffer(xprt), su->su_iosz, XDR_DECODE);
161 xprt->xp_p2 = (caddr_t)su;
162 xprt->xp_netid = NULL;
163 xprt->xp_verf.oa_base = su->su_verfbody;
164 xprt->xp_ops = svcudp_ops();
165 xprt->xp_port = ntohs(addr.sin_port);
166 xprt->xp_sock = sock;
167 xprt->xp_rtaddr.buf = &xprt->xp_raddr[0];
168 xprt_register(xprt);
169 return (xprt);
181 svcudp_stat(xprt) in svcudp_stat() argument
182 SVCXPRT *xprt; in svcudp_stat()
189 svcudp_recv(xprt, msg) in svcudp_recv() argument
190 register SVCXPRT *xprt; in svcudp_recv()
193 register struct svcudp_data *su = su_data(xprt);
200 xprt->xp_addrlen = sizeof (struct sockaddr_in);
201 rlen = _recvfrom(xprt->xp_sock, rpc_buffer(xprt), (int) su->su_iosz,
202 0, (struct sockaddr *)&(xprt->xp_raddr), &(xprt->xp_addrlen));
213 if (cache_get(xprt, msg, &reply, &replylen)) {
214 (void) _sendto(xprt->xp_sock, reply, (int) replylen, 0,
215 (struct sockaddr *) &xprt->xp_raddr,
216 xprt->xp_addrlen);
224 svcudp_reply(xprt, msg) in svcudp_reply() argument
225 register SVCXPRT *xprt; in svcudp_reply()
228 register struct svcudp_data *su = su_data(xprt);
238 if (_sendto(xprt->xp_sock, rpc_buffer(xprt), slen, 0,
239 (struct sockaddr *)&(xprt->xp_raddr), xprt->xp_addrlen)
243 (void) cache_set(xprt, (uint_t) slen);
251 svcudp_getargs(xprt, xdr_args, args_ptr) in svcudp_getargs() argument
252 SVCXPRT *xprt; in svcudp_getargs()
257 return ((*xdr_args)(&(su_data(xprt)->su_xdrs), args_ptr));
261 svcudp_freeargs(xprt, xdr_args, args_ptr) in svcudp_freeargs() argument
262 SVCXPRT *xprt; in svcudp_freeargs()
266 register XDR *xdrs = &(su_data(xprt)->su_xdrs);
273 svcudp_destroy(xprt) in svcudp_destroy() argument
274 register SVCXPRT *xprt; in svcudp_destroy()
276 register struct svcudp_data *su = su_data(xprt);
278 xprt_unregister(xprt);
279 (void) close(xprt->xp_sock);
281 mem_free(rpc_buffer(xprt), su->su_iosz);
283 svc_xprt_free(xprt);
404 cache_set(xprt, replylen) in cache_set() argument
405 SVCXPRT *xprt; in cache_set()
410 register struct svcudp_data *su = su_data(xprt);
421 loc = CACHE_LOC(xprt, victim->cache_xid);
452 victim->cache_reply = rpc_buffer(xprt);
453 rpc_buffer(xprt) = newbuf;
454 xdrmem_create(&(su->su_xdrs), rpc_buffer(xprt),
461 loc = CACHE_LOC(xprt, victim->cache_xid);
473 cache_get(xprt, msg, replyp, replylenp) in cache_get() argument
474 SVCXPRT *xprt; in cache_get()
481 register struct svcudp_data *su = su_data(xprt);
487 loc = CACHE_LOC(xprt, su->su_xid);
506 memcpy((char *)&uc->uc_addr, (char *)&xprt->xp_raddr,