Lines Matching refs:clone_xprt
1103 svc_sendreply(const SVCXPRT *clone_xprt, const xdrproc_t xdr_results, in svc_sendreply() argument
1110 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svc_sendreply()
1115 return (SVC_REPLY((SVCXPRT *)clone_xprt, &rply)); in svc_sendreply()
1127 svcerr_noproc(const SVCXPRT *clone_xprt) in svcerr_noproc() argument
1133 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svcerr_noproc()
1135 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_noproc()
1136 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_noproc()
1148 svcerr_decode(const SVCXPRT *clone_xprt) in svcerr_decode() argument
1154 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svcerr_decode()
1156 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_decode()
1157 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_decode()
1164 svcerr_systemerr(const SVCXPRT *clone_xprt) in svcerr_systemerr() argument
1170 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svcerr_systemerr()
1172 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_systemerr()
1173 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_systemerr()
1180 svcerr_auth(const SVCXPRT *clone_xprt, const enum auth_stat why) in svcerr_auth() argument
1188 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_auth()
1189 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_auth()
1196 svcerr_weakauth(const SVCXPRT *clone_xprt) in svcerr_weakauth() argument
1198 svcerr_auth((SVCXPRT *)clone_xprt, AUTH_TOOWEAK); in svcerr_weakauth()
1205 svcerr_badcred(const SVCXPRT *clone_xprt) in svcerr_badcred() argument
1213 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_badcred()
1214 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_badcred()
1226 svcerr_noprog(const SVCXPRT *clone_xprt) in svcerr_noprog() argument
1232 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svcerr_noprog()
1234 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_noprog()
1235 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_noprog()
1247 svcerr_progvers(const SVCXPRT *clone_xprt, in svcerr_progvers() argument
1254 rply.acpted_rply.ar_verf = clone_xprt->xp_verf; in svcerr_progvers()
1258 SVC_FREERES((SVCXPRT *)clone_xprt); in svcerr_progvers()
1259 SVC_REPLY((SVCXPRT *)clone_xprt, &rply); in svcerr_progvers()
1286 SVCXPRT *clone_xprt, /* clone transport handle */ in svc_getreq() argument
1296 ASSERT(clone_xprt->xp_master != NULL); in svc_getreq()
1340 if (SVC_RECV(clone_xprt, mp, &msg)) { in svc_getreq()
1351 r.rq_xprt = clone_xprt; in svc_getreq()
1365 svcerr_auth(clone_xprt, why); in svc_getreq()
1369 (void) SVC_FREEARGS(clone_xprt, NULL, NULL); in svc_getreq()
1375 (void) SVC_FREEARGS(clone_xprt, NULL, NULL); in svc_getreq()
1380 dispatchroutine = svc_callout_find(clone_xprt, in svc_getreq()
1384 (*dispatchroutine) (&r, clone_xprt); in svc_getreq()
1391 version_keepquiet(clone_xprt)) in svc_getreq()
1392 svcerr_noprog(clone_xprt); in svc_getreq()
1394 svcerr_progvers(clone_xprt, vers_min, in svc_getreq()
1401 (void) SVC_FREEARGS(clone_xprt, NULL, NULL); in svc_getreq()
1418 rpc_gss_cleanup(clone_xprt); in svc_getreq()
1441 SVCXPRT *clone_xprt; in svc_clone_init() local
1443 clone_xprt = kmem_zalloc(sizeof (SVCXPRT), KM_SLEEP); in svc_clone_init()
1444 clone_xprt->xp_cred = crget(); in svc_clone_init()
1445 return (clone_xprt); in svc_clone_init()
1452 svc_clone_free(SVCXPRT *clone_xprt) in svc_clone_free() argument
1455 if (clone_xprt->xp_cred) in svc_clone_free()
1456 crfree(clone_xprt->xp_cred); in svc_clone_free()
1457 kmem_free(clone_xprt, sizeof (SVCXPRT)); in svc_clone_free()
1467 svc_clone_link(SVCMASTERXPRT *xprt, SVCXPRT *clone_xprt, SVCXPRT *clone_xprt2) in svc_clone_link() argument
1469 cred_t *cred = clone_xprt->xp_cred; in svc_clone_link()
1483 bzero(clone_xprt, sizeof (SVCXPRT)); in svc_clone_link()
1486 clone_xprt->xp_master = xprt; in svc_clone_link()
1489 clone_xprt->xp_xpc = xprt->xp_xpc; in svc_clone_link()
1492 clone_xprt->xp_cred = cred; in svc_clone_link()
1495 SVC_CLONE_XPRT(clone_xprt2, clone_xprt); in svc_clone_link()
1508 svc_clone_unlink(SVCXPRT *clone_xprt) in svc_clone_unlink() argument
1510 SVCMASTERXPRT *xprt = clone_xprt->xp_master; in svc_clone_unlink()
1513 ASSERT(!clone_xprt->xp_detached); in svc_clone_unlink()
1527 SVC_CLONE_DESTROY(clone_xprt); in svc_clone_unlink()
1530 clone_xprt->xp_master = NULL; in svc_clone_unlink()
1543 svc_clone_unlinkdetached(SVCXPRT *clone_xprt) in svc_clone_unlinkdetached() argument
1545 SVCMASTERXPRT *xprt = clone_xprt->xp_master; in svc_clone_unlinkdetached()
1548 ASSERT(clone_xprt->xp_detached); in svc_clone_unlinkdetached()
1563 SVC_CLONE_DESTROY(clone_xprt); in svc_clone_unlinkdetached()
1566 clone_xprt->xp_master = NULL; in svc_clone_unlinkdetached()
1582 svc_thread_exit(SVCPOOL *pool, SVCXPRT *clone_xprt) in svc_thread_exit() argument
1584 if (clone_xprt->xp_master) in svc_thread_exit()
1585 svc_clone_unlink(clone_xprt); in svc_thread_exit()
1586 svc_clone_free(clone_xprt); in svc_thread_exit()
1609 svc_thread_exitdetached(SVCPOOL *pool, SVCXPRT *clone_xprt) in svc_thread_exitdetached() argument
1612 ASSERT(clone_xprt->xp_master); in svc_thread_exitdetached()
1613 ASSERT(clone_xprt->xp_detached); in svc_thread_exitdetached()
1616 svc_clone_unlinkdetached(clone_xprt); in svc_thread_exitdetached()
1617 svc_clone_free(clone_xprt); in svc_thread_exitdetached()
1840 svc_poll(SVCPOOL *pool, SVCMASTERXPRT *xprt, SVCXPRT *clone_xprt) in svc_poll() argument
1870 clone_xprt->xp_same_xprt++ < pool->p_max_same_xprt)) { in svc_poll()
1876 clone_xprt->xp_same_xprt = 0; in svc_poll()
2219 SVCXPRT *clone_xprt; /* clone for this thread */ in svc_run() local
2223 clone_xprt = svc_clone_init(); in svc_run()
2243 svc_thread_exit(pool, clone_xprt); in svc_run()
2248 next = svc_poll(pool, xprt, clone_xprt); in svc_run()
2264 svc_clone_unlink(clone_xprt); in svc_run()
2271 svc_thread_exit(pool, clone_xprt); in svc_run()
2280 svc_thread_exit(pool, clone_xprt); in svc_run()
2319 svc_clone_unlink(clone_xprt); in svc_run()
2320 svc_clone_link(next, clone_xprt, NULL); in svc_run()
2366 svc_getreq(clone_xprt, mp); in svc_run()
2369 ASSERT(!clone_xprt->xp_reserved); in svc_run()
2376 if (clone_xprt->xp_detached) { in svc_run()
2377 svc_thread_exitdetached(pool, clone_xprt); in svc_run()
2390 (*RELE_PROC(xprt)) (clone_xprt->xp_wq, NULL, enable); in svc_run()
2636 svc_reserve_thread(SVCXPRT *clone_xprt) in svc_reserve_thread() argument
2638 SVCPOOL *pool = clone_xprt->xp_master->xp_pool; in svc_reserve_thread()
2641 ASSERT(!clone_xprt->xp_reserved); in svc_reserve_thread()
2642 ASSERT(!clone_xprt->xp_detached); in svc_reserve_thread()
2655 clone_xprt->xp_reserved = TRUE; in svc_reserve_thread()
2666 svc_unreserve_thread(SVCXPRT *clone_xprt) in svc_unreserve_thread() argument
2668 SVCPOOL *pool = clone_xprt->xp_master->xp_pool; in svc_unreserve_thread()
2671 ASSERT(clone_xprt->xp_reserved); in svc_unreserve_thread()
2672 ASSERT(!clone_xprt->xp_detached); in svc_unreserve_thread()
2680 clone_xprt->xp_reserved = FALSE; in svc_unreserve_thread()
2703 svc_detach_thread(SVCXPRT *clone_xprt) in svc_detach_thread() argument
2705 SVCMASTERXPRT *xprt = clone_xprt->xp_master; in svc_detach_thread()
2710 ASSERT(clone_xprt->xp_reserved); in svc_detach_thread()
2711 ASSERT(!clone_xprt->xp_detached); in svc_detach_thread()
2732 (*RELE_PROC(xprt)) (clone_xprt->xp_wq, NULL, enable); in svc_detach_thread()
2735 clone_xprt->xp_reserved = FALSE; in svc_detach_thread()
2736 clone_xprt->xp_detached = TRUE; in svc_detach_thread()