Lines Matching refs:ipl
1457 ipsec_latch_t *ipl; in ipsec_req_from_conn() local
1463 ipl = connp->conn_latch; in ipsec_req_from_conn()
1470 if (ipl != NULL) { in ipsec_req_from_conn()
1740 spd_match_inbound_ids(ipsec_latch_t *ipl, ipsa_t *sa) in spd_match_inbound_ids() argument
1742 ASSERT(ipl->ipl_ids_latched == B_TRUE); in spd_match_inbound_ids()
1743 return ipsid_equal(ipl->ipl_remote_cid, sa->ipsa_src_cid) && in spd_match_inbound_ids()
1744 ipsid_equal(ipl->ipl_local_cid, sa->ipsa_dst_cid); in spd_match_inbound_ids()
1799 ipsec_check_ipsecin_latch(ip_recv_attr_t *ira, mblk_t *mp, ipsec_latch_t *ipl, in ipsec_check_ipsecin_latch() argument
1805 ASSERT(ipl->ipl_ids_latched == B_TRUE); in ipsec_check_ipsecin_latch()
1815 if (!spd_match_inbound_ids(ipl, in ipsec_check_ipsecin_latch()
1824 if (!spd_match_inbound_ids(ipl, in ipsec_check_ipsecin_latch()
2384 ipsec_latch_ids(ipsec_latch_t *ipl, ipsid_t *local, ipsid_t *remote) in ipsec_latch_ids() argument
2386 mutex_enter(&ipl->ipl_lock); in ipsec_latch_ids()
2388 if (ipl->ipl_ids_latched) { in ipsec_latch_ids()
2390 mutex_exit(&ipl->ipl_lock); in ipsec_latch_ids()
2399 ipl->ipl_local_cid = local; in ipsec_latch_ids()
2400 ipl->ipl_remote_cid = remote; in ipsec_latch_ids()
2401 ipl->ipl_ids_latched = B_TRUE; in ipsec_latch_ids()
2402 mutex_exit(&ipl->ipl_lock); in ipsec_latch_ids()
2409 ipsec_latch_t *ipl = connp->conn_latch; in ipsec_latch_inbound() local
2411 if (!ipl->ipl_ids_latched) { in ipsec_latch_inbound()
2425 ipsec_latch_ids(ipl, local, remote); in ipsec_latch_inbound()
2458 ipsec_latch_t *ipl; in ipsec_check_inbound_policy() local
2562 if ((ipl = connp->conn_latch) == NULL) { in ipsec_check_inbound_policy()
2583 IPLATCH_REFHOLD(ipl); in ipsec_check_inbound_policy()
2595 if (ipsec_check_ipsecin_latch(ira, mp, ipl, ap, in ipsec_check_inbound_policy()
2598 IPLATCH_REFRELE(ipl); in ipsec_check_inbound_policy()
2609 IPLATCH_REFRELE(ipl); in ipsec_check_inbound_policy()
2615 IPLATCH_REFRELE(ipl); in ipsec_check_inbound_policy()
2628 IPLATCH_REFRELE(ipl); in ipsec_check_inbound_policy()
4510 iplatch_free(ipsec_latch_t *ipl) in iplatch_free() argument
4512 if (ipl->ipl_local_cid != NULL) in iplatch_free()
4513 IPSID_REFRELE(ipl->ipl_local_cid); in iplatch_free()
4514 if (ipl->ipl_remote_cid != NULL) in iplatch_free()
4515 IPSID_REFRELE(ipl->ipl_remote_cid); in iplatch_free()
4516 mutex_destroy(&ipl->ipl_lock); in iplatch_free()
4517 kmem_free(ipl, sizeof (*ipl)); in iplatch_free()
4523 ipsec_latch_t *ipl = kmem_alloc(sizeof (*ipl), KM_NOSLEEP); in iplatch_create() local
4524 if (ipl == NULL) in iplatch_create()
4525 return (ipl); in iplatch_create()
4526 bzero(ipl, sizeof (*ipl)); in iplatch_create()
4527 mutex_init(&ipl->ipl_lock, NULL, MUTEX_DEFAULT, NULL); in iplatch_create()
4528 ipl->ipl_refcnt = 1; in iplatch_create()
4529 return (ipl); in iplatch_create()