/titanic_50/usr/src/uts/common/inet/ip/ |
H A D | ip_ire.c | 223 static ire_t *ire_add_v4(ire_t *ire); 224 static void ire_delete_v4(ire_t *ire); 334 ire_refhold(ire_t *ire) in ire_refhold() argument 336 atomic_inc_32(&(ire)->ire_refcnt); in ire_refhold() 337 ASSERT((ire)->ire_refcnt != 0); in ire_refhold() 339 ire_trace_ref(ire); in ire_refhold() 344 ire_refhold_notr(ire_t *ire) in ire_refhold_notr() argument 346 atomic_inc_32(&(ire)->ire_refcnt); in ire_refhold_notr() 347 ASSERT((ire)->ire_refcnt != 0); in ire_refhold_notr() 351 ire_refhold_locked(ire_t *ire) in ire_refhold_locked() argument [all …]
|
H A D | ip6_ire.c | 61 #define IS_DEFAULT_ROUTE_V6(ire) \ argument 62 (((ire)->ire_type & IRE_DEFAULT) || \ 63 (((ire)->ire_type & IRE_INTERFACE) && \ 64 (IN6_IS_ADDR_UNSPECIFIED(&(ire)->ire_addr_v6)))) 80 ire_init_v6(ire_t *ire, const in6_addr_t *v6addr, const in6_addr_t *v6mask, in ire_init_v6() argument 95 ire->ire_addr_v6 = *v6addr; in ire_init_v6() 97 ire->ire_gateway_addr_v6 = *v6gateway; in ire_init_v6() 105 ire->ire_mask_v6 = ipv6_all_ones; in ire_init_v6() 106 ire->ire_masklen = IPV6_ABITS; in ire_init_v6() 113 ire->ire_mask_v6 = *v6mask; in ire_init_v6() [all …]
|
H A D | ip_ftable.c | 75 #define IS_DEFAULT_ROUTE(ire) \ argument 76 (((ire)->ire_type & IRE_DEFAULT) || \ 77 (((ire)->ire_type & IRE_INTERFACE) && ((ire)->ire_addr == 0))) 99 ire_t *ire; in ire_ftable_lookup_v4() local 148 ire = margs.ift_best_ire; in ire_ftable_lookup_v4() 153 ASSERT(ire != NULL); in ire_ftable_lookup_v4() 155 DTRACE_PROBE2(ire__found, ire_ftable_args_t *, &margs, ire_t *, ire); in ire_ftable_lookup_v4() 164 if (ire->ire_bucket->irb_ire_cnt > 1 && !(flags & MATCH_IRE_GW)) { in ire_ftable_lookup_v4() 167 IS_DEFAULT_ROUTE(ire))) { in ire_ftable_lookup_v4() 171 next_ire = ire_round_robin(ire->ire_bucket, &margs, in ire_ftable_lookup_v4() [all …]
|
H A D | ip_rts.c | 90 static int rts_getmetrics(ire_t *ire, ill_t *ill, rt_metrics_t *metrics); 91 static mblk_t *rts_rtmget(mblk_t *mp, ire_t *ire, ire_t *ifire, 93 static void rts_setmetrics(ire_t *ire, uint_t which, rt_metrics_t *metrics); 188 ip_rts_rtmsg(int type, ire_t *ire, int error, ip_stack_t *ipst) in ip_rts_rtmsg() argument 196 if (ire == NULL) in ip_rts_rtmsg() 198 ASSERT(ire->ire_ipversion == IPV4_VERSION || in ip_rts_rtmsg() 199 ire->ire_ipversion == IPV6_VERSION); in ip_rts_rtmsg() 201 ASSERT(!(ire->ire_type & IRE_IF_CLONE)); in ip_rts_rtmsg() 203 if (ire->ire_flags & RTF_SETSRC) in ip_rts_rtmsg() 206 switch (ire->ire_ipversion) { in ip_rts_rtmsg() [all …]
|
H A D | ip_output.c | 138 ire_t *ire; in conn_ip_output() local 161 ire = ixa->ixa_ire; in conn_ip_output() 169 ire->ire_badcnt = 0; in conn_ip_output() 190 if (ire->ire_generation != ixa->ixa_ire_generation) { in conn_ip_output() 197 ire = ixa->ixa_ire; in conn_ip_output() 198 ASSERT(ire != NULL); in conn_ip_output() 199 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in conn_ip_output() 204 ire->ire_ob_pkt_count++; in conn_ip_output() 206 return ((ire->ire_sendfn)(ire, mp, mp->b_rptr, ixa, in conn_ip_output() 254 ire = ixa->ixa_ire; in conn_ip_output() [all …]
|
H A D | ip6_output.c | 109 ire_t *ire; in ip_output_simple_v6() local 153 ire = ip_select_route_v6(&firsthop, ip6h->ip6_src, ixa, NULL, &setsrc, in ip_output_simple_v6() 155 ASSERT(ire != NULL); /* IRE_NOROUTE if none found */ in ip_output_simple_v6() 164 if (ire->ire_flags & (RTF_BLACKHOLE|RTF_REJECT)) { in ip_output_simple_v6() 169 ire->ire_ob_pkt_count++; in ip_output_simple_v6() 172 error = (ire->ire_sendfn)(ire, mp, ip6h, ixa, in ip_output_simple_v6() 178 nce = ire_to_nce(ire, INADDR_ANY, &ip6h->ip6_dst); in ip_output_simple_v6() 189 nce1 = ire_handle_condemned_nce(nce, ire, NULL, ip6h, B_TRUE); in ip_output_simple_v6() 195 ire_refrele(ire); in ip_output_simple_v6() 218 ixa->ixa_postfragfn = ire->ire_postfragfn; in ip_output_simple_v6() [all …]
|
H A D | ip6_if.c | 398 ire_t *ire, *nire; in ip_rt_add_v6() local 454 ire = ire_ftable_lookup_v6(dst_addr, 0, 0, IRE_LOOPBACK, in ip_rt_add_v6() 457 if (ire != NULL) { in ip_rt_add_v6() 458 ire_refrele(ire); in ip_rt_add_v6() 466 ire = ire_create_v6( in ip_rt_add_v6() 477 if (ire == NULL) { in ip_rt_add_v6() 484 ire->ire_setsrc_addr_v6 = *src_addr; in ip_rt_add_v6() 486 nire = ire_add(ire); in ip_rt_add_v6() 500 if (nire != ire) { in ip_rt_add_v6() 507 ire = nire; in ip_rt_add_v6() [all …]
|
H A D | ip6_input.c | 482 ire_t *ire; in ire_linklocal() local 485 ire = ire_route_recursive_v6(nexthop, 0, ill, ALL_ZONES, ira->ira_tsl, in ire_linklocal() 487 if (!(ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) || in ire_linklocal() 489 return (ire); in ire_linklocal() 498 return (ire); in ire_linklocal() 502 ire_refrele(ire); in ire_linklocal() 503 ire = ire_route_recursive_v6(nexthop, 0, ill, ALL_ZONES, ira->ira_tsl, in ire_linklocal() 506 return (ire); in ire_linklocal() 517 ire_t *ire; in ill_input_short_v6() local 768 ire = ire_multicast(ill); in ill_input_short_v6() [all …]
|
H A D | ip_input.c | 559 ire_t *ire; in ill_input_short_v4() local 783 ire = ire_multicast(ill); in ill_input_short_v4() 786 ire = ire_route_recursive_v4(nexthop, 0, NULL, in ill_input_short_v4() 792 ASSERT(ire != NULL); in ill_input_short_v4() 795 rtc->rtc_ire = ire; in ill_input_short_v4() 799 ire = rtc->rtc_ire; in ill_input_short_v4() 803 ire = ire_multicast(ill); in ill_input_short_v4() 806 ire = ire_route_recursive_dstonly_v4(nexthop, irr_flags, in ill_input_short_v4() 809 ASSERT(ire != NULL); in ill_input_short_v4() 812 rtc->rtc_ire = ire; in ill_input_short_v4() [all …]
|
H A D | tnet.c | 1235 tsol_ire_match_gwattr(ire_t *ire, const ts_label_t *tsl) in tsol_ire_match_gwattr() argument 1247 (ire->ire_type & (IRE_LOCAL | IRE_LOOPBACK | IRE_BROADCAST | in tsol_ire_match_gwattr() 1258 if (tsl == NULL || ire->ire_gw_secattr == NULL) { in tsol_ire_match_gwattr() 1263 "label(2)", ire_t *, ire, ts_label_t *, tsl); in tsol_ire_match_gwattr() 1269 attrp = ire->ire_gw_secattr; in tsol_ire_match_gwattr() 1308 if (ire->ire_ipversion == IPV4_VERSION) { in tsol_ire_match_gwattr() 1316 } else if (ire->ire_type & IRE_OFFLINK) { in tsol_ire_match_gwattr() 1317 if (ire->ire_ipversion == IPV6_VERSION) in tsol_ire_match_gwattr() 1318 paddr = &ire->ire_gateway_addr_v6; in tsol_ire_match_gwattr() 1319 else if (ire->ire_ipversion == IPV4_VERSION) in tsol_ire_match_gwattr() [all …]
|
H A D | tn_ipopt.c | 472 ire_t *ire; in tsol_compute_label_v4() local 495 ire = ire_route_recursive_v4(dst, 0, NULL, zoneid, tsl, in tsol_compute_label_v4() 498 ASSERT(ire != NULL); in tsol_compute_label_v4() 499 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in tsol_compute_label_v4() 501 ire_refrele(ire); in tsol_compute_label_v4() 508 if (ire->ire_type & (IRE_BROADCAST | IRE_LOCAL | IRE_LOOPBACK | in tsol_compute_label_v4() 510 ire_refrele(ire); in tsol_compute_label_v4() 524 ire_refrele(ire); in tsol_compute_label_v4() 527 ire_refrele(ire); in tsol_compute_label_v4() 975 ire_t *ire; in tsol_compute_label_v6() local [all …]
|
H A D | ip.c | 2629 ire_t *ire, *nire; in icmp_redirect_v4() local 2641 ire = ire_ftable_lookup_v4(gateway, 0, 0, IRE_ONLINK, NULL, in icmp_redirect_v4() 2656 if (prev_ire == NULL || ire == NULL || in icmp_redirect_v4() 2659 !(ire->ire_type & IRE_IF_ALL) || in icmp_redirect_v4() 2664 if (ire != NULL) in icmp_redirect_v4() 2665 ire_refrele(ire); in icmp_redirect_v4() 2672 ire_refrele(ire); in icmp_redirect_v4() 2695 ire = ire_create( in icmp_redirect_v4() 2706 if (ire == NULL) { in icmp_redirect_v4() 2710 nire = ire_add(ire); in icmp_redirect_v4() [all …]
|
H A D | ip_if.c | 1232 ill_downi(ire_t *ire, char *ill_arg) in ill_downi() argument 1237 mutex_enter(&ire->ire_lock); in ill_downi() 1238 nce = ire->ire_nce_cache; in ill_downi() 1240 ire->ire_nce_cache = NULL; in ill_downi() 1243 mutex_exit(&ire->ire_lock); in ill_downi() 1246 if (ire->ire_ill == ill) { in ill_downi() 1258 ASSERT(ire->ire_bucket->irb_refcnt > 0); in ill_downi() 1259 ire_delete(ire); in ill_downi() 1260 if (ire->ire_unbound) in ill_downi() 1261 ire_rebind(ire); in ill_downi() [all …]
|
H A D | ip6.c | 1016 ire_t *ire, *nire; in icmp_redirect_v6() local 1154 ire = ire_create_v6( in icmp_redirect_v6() 1187 ire = ire_create_v6( in icmp_redirect_v6() 1199 if (ire == NULL) in icmp_redirect_v6() 1202 nire = ire_add(ire); in icmp_redirect_v6() 1204 if (nire != NULL && nire != ire) { in icmp_redirect_v6() 1210 ire = nire; in icmp_redirect_v6() 1211 if (ire != NULL) { in icmp_redirect_v6() 1212 ire_refrele(ire); /* Held in ire_add */ in icmp_redirect_v6() 1330 ire_t *ire; in icmp_pkt_v6() local [all …]
|
H A D | ip_attr.c | 1152 ire_t *ire; in ixa_cleanup_stale() local 1156 ire = ixa->ixa_ire; in ixa_cleanup_stale() 1160 if (ire != NULL && IRE_IS_CONDEMNED(ire)) { in ixa_cleanup_stale() 1161 ire_refrele_notr(ire); in ixa_cleanup_stale() 1162 ire = ire_blackhole(ixa->ixa_ipst, in ixa_cleanup_stale() 1164 ASSERT(ire != NULL); in ixa_cleanup_stale() 1166 ire_refhold_notr(ire); in ixa_cleanup_stale() 1167 ire_refrele(ire); in ixa_cleanup_stale() 1169 ixa->ixa_ire = ire; in ixa_cleanup_stale()
|
H A D | ip_netinfo.c | 1071 ire_t *ire; in ip_routeto_impl() local 1079 ire = ire_route_recursive_v6(&sin6->sin6_addr, 0, NULL, in ip_routeto_impl() 1083 ire = ire_route_recursive_v4(sin->sin_addr.s_addr, 0, NULL, in ip_routeto_impl() 1087 ASSERT(ire != NULL); in ip_routeto_impl() 1093 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in ip_routeto_impl() 1094 ire_refrele(ire); in ip_routeto_impl() 1098 nexthop_ire = ire_nexthop(ire); in ip_routeto_impl() 1100 ire_refrele(ire); in ip_routeto_impl() 1105 ire_refrele(ire); in ip_routeto_impl() 1120 ire_refrele(ire); in ip_routeto_impl()
|
H A D | ip_mroute.c | 2484 ire_t *ire; in register_mforward() local 2508 ire = ire_route_recursive_v4(ipha->ipha_dst, 0, NULL, ALL_ZONES, in register_mforward() 2512 ire = ire_multicast(ill); in register_mforward() 2514 ASSERT(ire != NULL); in register_mforward() 2516 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in register_mforward() 2520 ire_refrele(ire); in register_mforward() 2523 ASSERT(ire->ire_type & IRE_MULTICAST); in register_mforward() 2524 (*ire->ire_recvfn)(ire, mp, ipha, ira); in register_mforward() 2525 ire_refrele(ire); in register_mforward() 2614 ire_t *ire; in ip_mroute_decap() local [all …]
|
H A D | ipmp.c | 1786 ipmp_ill_ire_mark_testhidden(ire_t *ire, char *ill_arg) in ipmp_ill_ire_mark_testhidden() argument 1793 if (ire->ire_ill != ill) in ipmp_ill_ire_mark_testhidden() 1796 if (IRE_HIDDEN_TYPE(ire->ire_type)) { in ipmp_ill_ire_mark_testhidden() 1797 DTRACE_PROBE1(ipmp__mark__testhidden, ire_t *, ire); in ipmp_ill_ire_mark_testhidden() 1798 ire->ire_testhidden = B_TRUE; in ipmp_ill_ire_mark_testhidden() 1807 ipmp_ill_ire_clear_testhidden(ire_t *ire, char *ill_arg) in ipmp_ill_ire_clear_testhidden() argument 1814 if (ire->ire_ill == ill) { in ipmp_ill_ire_clear_testhidden() 1815 DTRACE_PROBE1(ipmp__clear__testhidden, ire_t *, ire); in ipmp_ill_ire_clear_testhidden() 1816 ire->ire_testhidden = B_FALSE; in ipmp_ill_ire_clear_testhidden()
|
H A D | conn_opt.c | 1222 ire_t *ire; in conn_opt_set_ip() local 1229 ire = ire_ftable_lookup_v4(addr, 0, 0, IRE_ONLINK, NULL, zoneid, in conn_opt_set_ip() 1231 if (ire == NULL) in conn_opt_set_ip() 1233 ire_refrele(ire); in conn_opt_set_ip() 1636 ire_t *ire; in conn_opt_set_ipv6() local 1644 ire = ire_ftable_lookup_v6(&sin6->sin6_addr, in conn_opt_set_ipv6() 1647 if (ire == NULL) in conn_opt_set_ipv6() 1649 ire_refrele(ire); in conn_opt_set_ipv6()
|
/titanic_50/usr/src/cmd/mdb/common/modules/genunix/ |
H A D | net.c | 854 get_ifname(const ire_t *ire, char *intf) in get_ifname() argument 859 if (ire->ire_ill != NULL) { in get_ifname() 861 (uintptr_t)ire->ire_ill) == -1) in get_ifname() 872 get_ireflags(const ire_t *ire, char *flags) in get_ireflags() argument 876 if (ire->ire_flags & RTF_INDIRECT) in get_ireflags() 878 else if (ire->ire_type & IRE_OFFLINK) in get_ireflags() 882 if (ire->ire_type & IRE_IF_CLONE) in get_ireflags() 884 else if (ire->ire_ipversion == IPV4_VERSION) { in get_ireflags() 885 if (ire->ire_mask == IP_HOST_MASK) in get_ireflags() 888 if (IN6_ARE_ADDR_EQUAL(&ire->ire_mask_v6, &ipv6_all_ones)) in get_ireflags() [all …]
|
/titanic_50/usr/src/uts/common/io/ib/mgt/ibcm/ |
H A D | ibcm_arp_link.c | 110 ire_t *ire = NULL; in ibcm_resolver_pr_lookup() local 136 ire = ire_route_recursive_v4(dst_addr->un.ip4addr, 0, NULL, in ibcm_resolver_pr_lookup() 140 ASSERT(ire != NULL); in ibcm_resolver_pr_lookup() 141 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in ibcm_resolver_pr_lookup() 147 ill = ire_nexthop_ill(ire); in ibcm_resolver_pr_lookup() 163 wqnp->gateway.un.ip4addr = ire->ire_gateway_addr; in ibcm_resolver_pr_lookup() 164 wqnp->netmask.un.ip4addr = ire->ire_mask; in ibcm_resolver_pr_lookup() 176 ire = ire_route_recursive_v6(&dst_addr->un.ip6addr, 0, NULL, in ibcm_resolver_pr_lookup() 180 ASSERT(ire != NULL); in ibcm_resolver_pr_lookup() 181 if (ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE)) { in ibcm_resolver_pr_lookup() [all …]
|
/titanic_50/usr/src/uts/common/inet/tcp/ |
H A D | tcp_timers.c | 612 ire_t *ire; in tcp_ip_notify() local 618 ire = connp->conn_ixa->ixa_ire; in tcp_ip_notify() 619 if (ire != NULL && !(ire->ire_flags & (RTF_REJECT|RTF_BLACKHOLE))) { in tcp_ip_notify() 620 if (ire->ire_ipversion == IPV4_VERSION) { in tcp_ip_notify() 625 ip_rts_change(RTM_LOSING, ire->ire_addr, in tcp_ip_notify() 626 ire->ire_gateway_addr, ire->ire_mask, in tcp_ip_notify() 629 ire->ire_ipst); in tcp_ip_notify() 631 (void) ire_no_good(ire); in tcp_ip_notify()
|
/titanic_50/usr/src/lib/libast/common/misc/ |
H A D | glob.c | 303 regex_t* ire; in glob_dir() local 505 ire = gp->gl_ignorei; in glob_dir() 508 ire = 0; in glob_dir() 519 ire = gp->gl_ignore; in glob_dir() 527 if (ire && !regexec(ire, name, 0, NiL, 0)) in glob_dir()
|
/titanic_50/usr/src/uts/common/inet/ |
H A D | ip_ire.h | 140 extern int ire_atomic_start(irb_t *irb_ptr, ire_t *ire); 141 extern void ire_atomic_end(irb_t *irb_ptr, ire_t *ire); 270 extern ire_t *ire_route_recursive_impl_v4(ire_t *ire, ipaddr_t, uint_t, 273 extern ire_t *ire_route_recursive_impl_v6(ire_t *ire, const in6_addr_t *,
|
/titanic_50/usr/src/cmd/mdb/common/modules/ip/ |
H A D | ip.c | 837 ire_t ire; in ire_walk_step() local 839 if (mdb_vread(&ire, sizeof (ire), wsp->walk_addr) == -1) { in ire_walk_step() 845 if ((wsp->walk_data != NULL) && (wsp->walk_data != ire.ire_ipst)) in ire_walk_step() 848 return (wsp->walk_callback(wsp->walk_addr, &ire, wsp->walk_cbdata)); in ire_walk_step() 861 ire_t ire; in ire_next_walk_step() local 868 if (mdb_vread(&ire, sizeof (ire), wsp->walk_addr) == -1) { in ire_next_walk_step() 872 status = wsp->walk_callback(wsp->walk_addr, &ire, in ire_next_walk_step() 878 wsp->walk_addr = (uintptr_t)ire.ire_next; in ire_next_walk_step() 1575 ire(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) in ire() function 1578 ire_t ire; in ire() local [all …]
|