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