Lines Matching refs:ira
1499 ipsec_check_loopback_policy(mblk_t *data_mp, ip_recv_attr_t *ira, in ipsec_check_loopback_policy() argument
1502 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) in ipsec_check_loopback_policy()
1505 ASSERT(ira->ira_flags & IRAF_LOOPBACK); in ipsec_check_loopback_policy()
1523 ipsec_check_ipsecin_unique(ip_recv_attr_t *ira, const char **reason, in ipsec_check_ipsecin_unique() argument
1531 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_check_ipsecin_unique()
1532 ASSERT(!(ira->ira_flags & IRAF_LOOPBACK)); in ipsec_check_ipsecin_unique()
1534 ah_assoc = ira->ira_ipsec_ah_sa; in ipsec_check_ipsecin_unique()
1535 esp_assoc = ira->ira_ipsec_esp_sa; in ipsec_check_ipsecin_unique()
1566 ipsec_check_ipsecin_action(ip_recv_attr_t *ira, mblk_t *mp, ipsec_action_t *ap, in ipsec_check_ipsecin_action() argument
1580 if (ira->ira_flags & IRAF_LOOPBACK) { in ipsec_check_ipsecin_action()
1588 if (ap == ira->ira_ipsec_action || in ipsec_check_ipsecin_action()
1589 (ira->ira_flags & IRAF_TRUSTED_ICMP)) in ipsec_check_ipsecin_action()
1597 ASSERT(!(ira->ira_flags & IRAF_TRUSTED_ICMP)); in ipsec_check_ipsecin_action()
1598 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_check_ipsecin_action()
1600 ah_assoc = ira->ira_ipsec_ah_sa; in ipsec_check_ipsecin_action()
1601 esp_assoc = ira->ira_ipsec_esp_sa; in ipsec_check_ipsecin_action()
1603 decaps = (ira->ira_flags & IRAF_IPSEC_DECAPS); in ipsec_check_ipsecin_action()
1723 if (ira->ira_ipsec_action != NULL) { in ipsec_check_ipsecin_action()
1729 IPACT_REFRELE(ira->ira_ipsec_action); in ipsec_check_ipsecin_action()
1731 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_check_ipsecin_action()
1732 ASSERT(ira->ira_ipsec_action == NULL); in ipsec_check_ipsecin_action()
1734 ira->ira_ipsec_action = ap; in ipsec_check_ipsecin_action()
1800 ipsec_check_ipsecin_latch(ip_recv_attr_t *ira, mblk_t *mp, ipsec_latch_t *ipl, in ipsec_check_ipsecin_latch() argument
1807 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_check_ipsecin_latch()
1809 if (!(ira->ira_flags & IRAF_LOOPBACK)) { in ipsec_check_ipsecin_latch()
1815 if (ira->ira_ipsec_ah_sa != NULL) { in ipsec_check_ipsecin_latch()
1817 ira->ira_ipsec_ah_sa)) { in ipsec_check_ipsecin_latch()
1824 if (ira->ira_ipsec_esp_sa != NULL) { in ipsec_check_ipsecin_latch()
1826 ira->ira_ipsec_esp_sa)) { in ipsec_check_ipsecin_latch()
1838 if (!ipsec_check_ipsecin_unique(ira, reason, counter, in ipsec_check_ipsecin_latch()
1843 return (ipsec_check_ipsecin_action(ira, mp, ap, ipha, ip6h, reason, in ipsec_check_ipsecin_latch()
1858 ipha_t *ipha, ip6_t *ip6h, uint64_t pkt_unique, ip_recv_attr_t *ira, in ipsec_check_ipsecin_policy() argument
1874 if (ira->ira_flags & IRAF_LOOPBACK) in ipsec_check_ipsecin_policy()
1875 return (ipsec_check_loopback_policy(data_mp, ira, ipsp)); in ipsec_check_ipsecin_policy()
1877 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_check_ipsecin_policy()
1879 if (ira->ira_ipsec_action != NULL) { in ipsec_check_ipsecin_policy()
1884 IPACT_REFRELE(ira->ira_ipsec_action); in ipsec_check_ipsecin_policy()
1886 ASSERT(ira->ira_ipsec_action == NULL); in ipsec_check_ipsecin_policy()
1888 if (!SA_IDS_MATCH(ira->ira_ipsec_ah_sa, ira->ira_ipsec_esp_sa)) { in ipsec_check_ipsecin_policy()
1894 if (!ipsec_check_ipsecin_unique(ira, &reason, &counter, pkt_unique, in ipsec_check_ipsecin_policy()
1904 if (ipsec_check_ipsecin_action(ira, data_mp, ap, in ipsec_check_ipsecin_policy()
1916 ASSERT(ira->ira_ipsec_action == NULL); in ipsec_check_ipsecin_policy()
2117 ipha_t *ipha, ip6_t *ip6h, ip_recv_attr_t *ira, netstack_t *ns) in ipsec_check_global_policy() argument
2189 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) { in ipsec_check_global_policy()
2204 if (ira->ira_flags & IRAF_IPSEC_SECURE) { in ipsec_check_global_policy()
2206 pkt_unique, ira, ns)); in ipsec_check_global_policy()
2407 ipsec_latch_inbound(conn_t *connp, ip_recv_attr_t *ira) in ipsec_latch_inbound() argument
2416 if (!(ira->ira_flags & IRAF_LOOPBACK)) { in ipsec_latch_inbound()
2417 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_latch_inbound()
2418 if (ira->ira_ipsec_esp_sa != NULL) in ipsec_latch_inbound()
2419 sa = ira->ira_ipsec_esp_sa; in ipsec_latch_inbound()
2421 sa = ira->ira_ipsec_ah_sa; in ipsec_latch_inbound()
2428 if (ira->ira_flags & IRAF_IPSEC_SECURE) { in ipsec_latch_inbound()
2439 ira->ira_ipsec_action); in ipsec_latch_inbound()
2442 connp->conn_latch_in_action = ira->ira_ipsec_action; in ipsec_latch_inbound()
2456 ipha_t *ipha, ip6_t *ip6h, ip_recv_attr_t *ira) in ipsec_check_inbound_policy() argument
2473 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) { in ipsec_check_inbound_policy()
2540 ipha, ip6h, ira, ns); in ipsec_check_inbound_policy()
2578 ipha, ip6h, ira, ns); in ipsec_check_inbound_policy()
2596 if (ipsec_check_ipsecin_latch(ira, mp, ipl, ap, in ipsec_check_inbound_policy()
2622 mp = ipsec_check_ipsecin_policy(mp, p, ipha, ip6h, unique_id, ira, ns); in ipsec_check_inbound_policy()
2628 ipsec_latch_inbound(connp, ira); in ipsec_check_inbound_policy()
2975 ipsec_in_to_out_action(ip_recv_attr_t *ira) in ipsec_in_to_out_action() argument
2997 ASSERT(ira->ira_flags & IRAF_IPSEC_SECURE); in ipsec_in_to_out_action()
2999 ah_assoc = ira->ira_ipsec_ah_sa; in ipsec_in_to_out_action()
3002 esp_assoc = ira->ira_ipsec_esp_sa; in ipsec_in_to_out_action()
3017 !!(ira->ira_flags & IRAF_IPSEC_DECAPS); in ipsec_in_to_out_action()
3047 ap->ipa_want_se = !!(ira->ira_flags & IRAF_IPSEC_DECAPS); in ipsec_in_to_out_action()
4024 ipsec_in_to_out(ip_recv_attr_t *ira, ip_xmit_attr_t *ixa, mblk_t *data_mp, in ipsec_in_to_out() argument
4033 if (ira->ira_ipsec_action != NULL) { in ipsec_in_to_out()
4035 reflect_action = ira->ira_ipsec_action; in ipsec_in_to_out()
4036 ira->ira_ipsec_action = NULL; in ipsec_in_to_out()
4037 } else if (!(ira->ira_flags & IRAF_LOOPBACK)) in ipsec_in_to_out()
4038 reflect_action = ipsec_in_to_out_action(ira); in ipsec_in_to_out()
4069 if (ira->ira_flags & IRAF_IPSEC_SECURE) in ipsec_in_to_out()
4114 ipsec_in_release_refs(ip_recv_attr_t *ira) in ipsec_in_release_refs() argument
4116 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) in ipsec_in_release_refs()
4119 if (ira->ira_ipsec_ah_sa != NULL) { in ipsec_in_release_refs()
4120 IPSA_REFRELE(ira->ira_ipsec_ah_sa); in ipsec_in_release_refs()
4121 ira->ira_ipsec_ah_sa = NULL; in ipsec_in_release_refs()
4123 if (ira->ira_ipsec_esp_sa != NULL) { in ipsec_in_release_refs()
4124 IPSA_REFRELE(ira->ira_ipsec_esp_sa); in ipsec_in_release_refs()
4125 ira->ira_ipsec_esp_sa = NULL; in ipsec_in_release_refs()
4127 if (ira->ira_ipsec_action != NULL) { in ipsec_in_release_refs()
4128 IPACT_REFRELE(ira->ira_ipsec_action); in ipsec_in_release_refs()
4129 ira->ira_ipsec_action = NULL; in ipsec_in_release_refs()
4132 ira->ira_flags &= ~IRAF_IPSEC_SECURE; in ipsec_in_release_refs()
4146 ipsec_out_to_in(ip_xmit_attr_t *ixa, ill_t *ill, ip_recv_attr_t *ira) in ipsec_out_to_in() argument
4152 ira->ira_free_flags = 0; in ipsec_out_to_in()
4153 ira->ira_zoneid = ixa->ixa_zoneid; in ipsec_out_to_in()
4154 ira->ira_cred = ixa->ixa_cred; in ipsec_out_to_in()
4155 ira->ira_cpid = ixa->ixa_cpid; in ipsec_out_to_in()
4156 ira->ira_tsl = ixa->ixa_tsl; in ipsec_out_to_in()
4157 ira->ira_ill = ira->ira_rill = ill; in ipsec_out_to_in()
4158 ira->ira_flags = ixa->ixa_flags & IAF_MASK; in ipsec_out_to_in()
4159 ira->ira_no_loop_zoneid = ixa->ixa_no_loop_zoneid; in ipsec_out_to_in()
4160 ira->ira_pktlen = ixa->ixa_pktlen; in ipsec_out_to_in()
4161 ira->ira_ip_hdr_length = ixa->ixa_ip_hdr_length; in ipsec_out_to_in()
4162 ira->ira_protocol = ixa->ixa_protocol; in ipsec_out_to_in()
4163 ira->ira_mhip = NULL; in ipsec_out_to_in()
4165 ira->ira_flags |= IRAF_LOOPBACK | IRAF_L2SRC_LOOPBACK; in ipsec_out_to_in()
4167 ira->ira_sqp = ixa->ixa_sqp; in ipsec_out_to_in()
4168 ira->ira_ring = NULL; in ipsec_out_to_in()
4170 ira->ira_ruifindex = ill->ill_phyint->phyint_ifindex; in ipsec_out_to_in()
4171 ira->ira_rifindex = ira->ira_ruifindex; in ipsec_out_to_in()
4176 ira->ira_flags |= IRAF_IPSEC_SECURE; in ipsec_out_to_in()
4178 ira->ira_ipsec_ah_sa = NULL; in ipsec_out_to_in()
4179 ira->ira_ipsec_esp_sa = NULL; in ipsec_out_to_in()
4190 ira->ira_ipsec_action = act; in ipsec_out_to_in()
5551 ipsec_tun_inbound(ip_recv_attr_t *ira, mblk_t *data_mp, ipsec_tun_pol_t *itp, in ipsec_tun_inbound() argument
5622 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) { in ipsec_tun_inbound()
5670 mp = ip_recv_attr_to_mblk(ira); in ipsec_tun_inbound()
5791 if (!(ira->ira_flags & IRAF_IPSEC_SECURE)) { in ipsec_tun_inbound()
5823 ira, ns); in ipsec_tun_inbound()
5859 if ((ira->ira_flags & IRAF_IPSEC_SECURE) && !global_present) { in ipsec_tun_inbound()
5860 if (ira->ira_flags & IRAF_TRUSTED_ICMP) { in ipsec_tun_inbound()
5898 outer_ipv6, ira, ns); in ipsec_tun_inbound()