Lines Matching refs:xprt

575 __svc_get_svcauth(SVCXPRT *xprt)  in __svc_get_svcauth()  argument
578 return (&SVC_XP_AUTH(xprt)); in __svc_get_svcauth()
743 xprt_register(const SVCXPRT *xprt) in xprt_register() argument
745 int fd = xprt->xp_fd; in xprt_register()
792 svc_xports[fd] = (SVCXPRT *)xprt; in xprt_register()
831 __xprt_unregister_private(const SVCXPRT *xprt, bool_t lock_not_held) in __xprt_unregister_private() argument
833 int fd = xprt->xp_fd; in __xprt_unregister_private()
837 if ((fd < nsvc_xports) && (svc_xports[fd] == xprt)) { in __xprt_unregister_private()
843 __svc_rm_from_xlist(&_svc_xprtlist, xprt, &xprtlist_lock); in __xprt_unregister_private()
847 xprt_unregister(const SVCXPRT *xprt) in xprt_unregister() argument
849 __xprt_unregister_private(xprt, TRUE); in xprt_unregister()
860 svc_reg(const SVCXPRT *xprt, const rpcprog_t prog, const rpcvers_t vers, in svc_reg() argument
871 if (xprt->xp_netid) { in svc_reg()
872 netid = strdup(xprt->xp_netid); in svc_reg()
877 } else if ((tnconf = __rpcfd_to_nconf(xprt->xp_fd, xprt->xp_type)) in svc_reg()
917 if ((xprt->xp_netid == NULL) && (flag == 1) && netid) in svc_reg()
918 if ((((SVCXPRT *)xprt)->xp_netid = strdup(netid)) == NULL) { in svc_reg()
932 return (rpcb_set(prog, vers, nconf, &xprt->xp_ltaddr)); in svc_reg()
972 svc_register(SVCXPRT *xprt, rpcprog_t prog, rpcvers_t vers, in svc_register() argument
981 if (xprt->xp_netid) { in svc_register()
982 netid = strdup(xprt->xp_netid); in svc_register()
984 } else if ((ioctl(xprt->xp_fd, I_FIND, "timod") > 0) && ((nconf = in svc_register()
985 __rpcfd_to_nconf(xprt->xp_fd, xprt->xp_type)) != NULL)) { in svc_register()
1018 if ((xprt->xp_netid == NULL) && (flag == 1) && netid) in svc_register()
1019 if ((xprt->xp_netid = strdup(netid)) == NULL) { in svc_register()
1032 return (pmap_set(prog, vers, protocol, xprt->xp_port)); in svc_register()
1098 svc_sendreply(const SVCXPRT *xprt, const xdrproc_t xdr_results, in svc_sendreply() argument
1105 rply.acpted_rply.ar_verf = xprt->xp_verf; in svc_sendreply()
1109 return (SVC_REPLY((SVCXPRT *)xprt, &rply)); in svc_sendreply()
1116 svcerr_noproc(const SVCXPRT *xprt) in svcerr_noproc() argument
1122 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_noproc()
1124 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_noproc()
1131 svcerr_decode(const SVCXPRT *xprt) in svcerr_decode() argument
1137 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_decode()
1139 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_decode()
1146 svcerr_systemerr(const SVCXPRT *xprt) in svcerr_systemerr() argument
1152 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_systemerr()
1154 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_systemerr()
1164 __svc_versquiet_on(const SVCXPRT *xprt) in __svc_versquiet_on() argument
1167 svc_flags(xprt) |= SVC_VERSQUIET; in __svc_versquiet_on()
1171 __svc_versquiet_off(const SVCXPRT *xprt) in __svc_versquiet_off() argument
1174 svc_flags(xprt) &= ~SVC_VERSQUIET; in __svc_versquiet_off()
1178 svc_versquiet(const SVCXPRT *xprt) in svc_versquiet() argument
1180 __svc_versquiet_on(xprt); in svc_versquiet()
1184 __svc_versquiet_get(const SVCXPRT *xprt) in __svc_versquiet_get() argument
1187 return (svc_flags(xprt) & SVC_VERSQUIET); in __svc_versquiet_get()
1194 svcerr_auth(const SVCXPRT *xprt, const enum auth_stat why) in svcerr_auth() argument
1202 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_auth()
1209 svcerr_weakauth(const SVCXPRT *xprt) in svcerr_weakauth() argument
1211 svcerr_auth(xprt, AUTH_TOOWEAK); in svcerr_weakauth()
1218 svcerr_noprog(const SVCXPRT *xprt) in svcerr_noprog() argument
1224 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_noprog()
1226 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_noprog()
1233 svcerr_progvers(const SVCXPRT *xprt, const rpcvers_t low_vers, in svcerr_progvers() argument
1240 rply.acpted_rply.ar_verf = xprt->xp_verf; in svcerr_progvers()
1244 SVC_REPLY((SVCXPRT *)xprt, &rply); in svcerr_progvers()
1331 SVCXPRT *xprt; in svc_getreq_common() local
1360 if ((fd >= nsvc_xports) || (xprt = svc_xports[fd]) == NULL) { in svc_getreq_common()
1366 msg = SVCEXT(xprt)->msg; in svc_getreq_common()
1368 r = SVCEXT(xprt)->req; in svc_getreq_common()
1370 cred_area = SVCEXT(xprt)->cred_area; in svc_getreq_common()
1379 if (dispatch = SVC_RECV(xprt, msg)) in svc_getreq_common()
1380 (void) _svc_prog_dispatch(xprt, msg, r); in svc_getreq_common()
1386 if (xprt != svc_xports[fd]) { in svc_getreq_common()
1396 (*__proc_cleanup_cb)(xprt); in svc_getreq_common()
1398 if ((stat = SVC_STAT(xprt)) == XPRT_DIED) { in svc_getreq_common()
1399 SVC_DESTROY(xprt); in svc_getreq_common()
1406 _svc_prog_dispatch(SVCXPRT *xprt, struct rpc_msg *msg, struct svc_req *r) in _svc_prog_dispatch() argument
1415 r->rq_xprt = xprt; in _svc_prog_dispatch()
1436 svcerr_auth(xprt, why); in _svc_prog_dispatch()
1451 if ((xprt->xp_netid == NULL) || in _svc_prog_dispatch()
1453 (strcmp(xprt->xp_netid, in _svc_prog_dispatch()
1457 disp_fn(r, xprt); in _svc_prog_dispatch()
1476 if (!version_keepquiet(xprt)) in _svc_prog_dispatch()
1477 svcerr_progvers(xprt, low_vers, high_vers); in _svc_prog_dispatch()
1479 svcerr_noprog(xprt); in _svc_prog_dispatch()
1492 SVCXPRT *xprt = NULL; in svc_xprt_alloc() local
1499 if ((xprt = calloc(1, sizeof (SVCXPRT))) == NULL) in svc_xprt_alloc()
1504 xprt->xp_p3 = (caddr_t)xt; /* SVCEXT(xprt) = xt */ in svc_xprt_alloc()
1509 xlist->xprt = xprt; in svc_xprt_alloc()
1524 (void) mutex_init(&svc_send_mutex(xprt), USYNC_THREAD, (void *)0); in svc_xprt_alloc()
1525 return (xprt); in svc_xprt_alloc()
1528 svc_xprt_free(xprt); in svc_xprt_alloc()
1537 svc_xprt_free(SVCXPRT *xprt) in svc_xprt_free() argument
1540 SVCXPRT_EXT *xt = xprt ? SVCEXT(xprt) : NULL; in svc_xprt_free()
1546 if (xprt) in svc_xprt_free()
1547 free(xprt); in svc_xprt_free()
1565 svc_xprt_destroy(SVCXPRT *xprt) in svc_xprt_destroy() argument
1571 if (SVCEXT(xprt)->parent) in svc_xprt_destroy()
1573 xprt = SVCEXT(xprt)->parent; in svc_xprt_destroy()
1575 type = svc_type(xprt); in svc_xprt_destroy()
1577 for (xlist = SVCEXT(xprt)->my_xlist; xlist != NULL; xlist = xnext) { in svc_xprt_destroy()
1579 xprt = xlist->xprt; in svc_xprt_destroy()
1582 svc_dg_xprtfree(xprt); in svc_xprt_destroy()
1585 svc_vc_xprtfree(xprt); in svc_xprt_destroy()
1588 svc_fd_xprtfree(xprt); in svc_xprt_destroy()
1591 svc_door_xprtfree(xprt); in svc_xprt_destroy()
1602 svc_copy(SVCXPRT *xprt) in svc_copy() argument
1605 switch (svc_type(xprt)) { in svc_copy()
1607 return (svc_dg_xprtcopy(xprt)); in svc_copy()
1609 return (svc_vc_xprtcopy(xprt)); in svc_copy()
1611 return (svc_fd_xprtcopy(xprt)); in svc_copy()
1621 _svc_destroy_private(SVCXPRT *xprt) in _svc_destroy_private() argument
1624 switch (svc_type(xprt)) { in _svc_destroy_private()
1626 _svc_dg_destroy_private(xprt); in _svc_destroy_private()
1630 _svc_vc_destroy_private(xprt, TRUE); in _svc_destroy_private()
1642 svc_get_local_cred(SVCXPRT *xprt, svc_local_cred_t *lcred) in svc_get_local_cred() argument
1645 if (svc_type(xprt) == SVC_DOOR) in svc_get_local_cred()
1646 return (__svc_get_door_cred(xprt, lcred)); in svc_get_local_cred()
1647 return (__rpc_get_local_cred(xprt, lcred)); in svc_get_local_cred()