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