Lines Matching refs:xprt

87 static void __xprt_do_unregister (SVCXPRT *xprt, bool_t dolock);
95 xprt_register(SVCXPRT *xprt) in xprt_register() argument
99 assert(xprt != NULL); in xprt_register()
101 sock = xprt->xp_fd; in xprt_register()
114 __svc_xports[sock] = xprt; in xprt_register()
118 __svc_xports[sock] = xprt; in xprt_register()
123 xprt_unregister(SVCXPRT *xprt) in xprt_unregister() argument
125 __xprt_do_unregister(xprt, TRUE); in xprt_unregister()
129 __xprt_unregister_unlocked(SVCXPRT *xprt) in __xprt_unregister_unlocked() argument
131 __xprt_do_unregister(xprt, FALSE); in __xprt_unregister_unlocked()
138 __xprt_do_unregister(SVCXPRT *xprt, bool_t dolock) in __xprt_do_unregister() argument
142 assert(xprt != NULL); in __xprt_do_unregister()
144 sock = xprt->xp_fd; in __xprt_do_unregister()
148 if ((sock < FD_SETSIZE) && (__svc_xports[sock] == xprt)) { in __xprt_do_unregister()
156 } else if ((sock == FD_SETSIZE) && (__svc_xports[sock] == xprt)) in __xprt_do_unregister()
168 svc_reg(SVCXPRT *xprt, const rpcprog_t prog, const rpcvers_t vers, in svc_reg() argument
181 if (xprt->xp_netid) { in svc_reg()
182 netid = strdup(xprt->xp_netid); in svc_reg()
187 } else if ((tnconf = __rpcgettp(xprt->xp_fd)) != NULL) { in svc_reg()
218 if ((xprt->xp_netid == NULL) && (flag == 1) && netid) in svc_reg()
219 ((SVCXPRT *) xprt)->xp_netid = strdup(netid); in svc_reg()
227 &((SVCXPRT *) xprt)->xp_ltaddr); in svc_reg()
268 svc_register(SVCXPRT *xprt, u_long prog, u_long vers, in svc_register() argument
275 assert(xprt != NULL); in svc_register()
296 return (pmap_set(prog, vers, protocol, xprt->xp_port)); in svc_register()
355 svc_sendreply(SVCXPRT *xprt, xdrproc_t xdr_results, in svc_sendreply() argument
360 assert(xprt != NULL); in svc_sendreply()
364 rply.acpted_rply.ar_verf = xprt->xp_verf; in svc_sendreply()
368 return (SVC_REPLY(xprt, &rply)); in svc_sendreply()
375 svcerr_noproc(SVCXPRT *xprt) in svcerr_noproc() argument
379 assert(xprt != NULL); in svcerr_noproc()
383 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_noproc()
385 SVC_REPLY(xprt, &rply); in svcerr_noproc()
392 svcerr_decode(SVCXPRT *xprt) in svcerr_decode() argument
396 assert(xprt != NULL); in svcerr_decode()
400 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_decode()
402 SVC_REPLY(xprt, &rply); in svcerr_decode()
409 svcerr_systemerr(SVCXPRT *xprt) in svcerr_systemerr() argument
413 assert(xprt != NULL); in svcerr_systemerr()
417 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_systemerr()
419 SVC_REPLY(xprt, &rply); in svcerr_systemerr()
430 __svc_versquiet_on(SVCXPRT *xprt)
433 SVC_EXT(xprt)->xp_flags |= SVC_VERSQUIET;
437 __svc_versquiet_off(SVCXPRT *xprt)
440 SVC_EXT(xprt)->xp_flags &= ~SVC_VERSQUIET;
444 svc_versquiet(SVCXPRT *xprt)
446 __svc_versquiet_on(xprt);
450 __svc_versquiet_get(SVCXPRT *xprt)
453 return (SVC_EXT(xprt)->xp_flags & SVC_VERSQUIET);
461 svcerr_auth(SVCXPRT *xprt, enum auth_stat why) in svcerr_auth() argument
465 assert(xprt != NULL); in svcerr_auth()
471 SVC_REPLY(xprt, &rply); in svcerr_auth()
478 svcerr_weakauth(SVCXPRT *xprt) in svcerr_weakauth() argument
481 assert(xprt != NULL); in svcerr_weakauth()
483 svcerr_auth(xprt, AUTH_TOOWEAK); in svcerr_weakauth()
490 svcerr_noprog(SVCXPRT *xprt) in svcerr_noprog() argument
494 assert(xprt != NULL); in svcerr_noprog()
498 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_noprog()
500 SVC_REPLY(xprt, &rply); in svcerr_noprog()
507 svcerr_progvers(SVCXPRT *xprt, rpcvers_t low_vers, rpcvers_t high_vers) in svcerr_progvers() argument
511 assert(xprt != NULL); in svcerr_progvers()
515 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_progvers()
519 SVC_REPLY(xprt, &rply); in svcerr_progvers()
531 SVCXPRT *xprt; in svc_xprt_alloc() local
534 xprt = mem_alloc(sizeof(SVCXPRT)); in svc_xprt_alloc()
535 if (xprt == NULL) in svc_xprt_alloc()
537 memset(xprt, 0, sizeof(SVCXPRT)); in svc_xprt_alloc()
540 mem_free(xprt, sizeof(SVCXPRT)); in svc_xprt_alloc()
544 xprt->xp_p3 = ext; in svc_xprt_alloc()
547 return (xprt); in svc_xprt_alloc()
554 svc_xprt_free(SVCXPRT *xprt) in svc_xprt_free() argument
557 mem_free(xprt->xp_p3, sizeof(SVCXPRT_EXT)); in svc_xprt_free()
558 mem_free(xprt, sizeof(SVCXPRT)); in svc_xprt_free()
612 SVCXPRT *xprt; in svc_getreq_common() local
626 xprt = __svc_xports[fd]; in svc_getreq_common()
628 if (xprt == NULL) in svc_getreq_common()
633 if (SVC_RECV(xprt, &msg)) { in svc_getreq_common()
639 r.rq_xprt = xprt; in svc_getreq_common()
654 svcerr_auth(xprt, why); in svc_getreq_common()
664 (*s->sc_dispatch)(&r, xprt); in svc_getreq_common()
679 svcerr_progvers(xprt, low_vers, high_vers); in svc_getreq_common()
681 svcerr_noprog(xprt); in svc_getreq_common()
690 if (xprt != __svc_xports[fd]) { in svc_getreq_common()
696 if ((stat = SVC_STAT(xprt)) == XPRT_DIED){ in svc_getreq_common()
697 SVC_DESTROY(xprt); in svc_getreq_common()