Lines Matching refs:rt

678 	struct ieee80211_mesh_route *rt = NULL;
751 rt = ieee80211_mesh_rt_find(vap, preq->preq_origaddr);
752 if (rt == NULL)
754 else if ((rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID) == 0)
755 hwmp_discover(vap, rt->rt_dest, NULL);
769 rt = ieee80211_mesh_rt_find(vap, rootmac);
770 if (rt == NULL) {
771 rt = ieee80211_mesh_rt_add(vap, rootmac);
772 if (rt == NULL) {
787 if ((rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID) == 0 ||
805 rt = ieee80211_mesh_rt_find(vap, PREQ_TADDR(0));
817 if (rt != NULL &&
818 (rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID)) {
853 prep.prep_hopcount = rt->rt_nhops + 1;
859 prep.prep_metric = rt->rt_metric +
873 if (rt == NULL) {
874 rt = ieee80211_mesh_rt_add(vap, PREQ_TADDR(0));
875 if (rt == NULL) {
883 rt->rt_metric = preq->preq_metric;
884 rt->rt_lifetime = preq->preq_lifetime;
885 hrorig = IEEE80211_MESH_ROUTE_PRIV(rt,
941 struct ieee80211_mesh_route *rt = NULL;
961 rt = ieee80211_mesh_rt_find(vap, prep->prep_targetaddr);
962 if (rt == NULL) {
967 rt = ieee80211_mesh_rt_add(vap, prep->prep_targetaddr);
968 if (rt == NULL) {
975 IEEE80211_ADDR_COPY(rt->rt_nexthop, wh->i_addr2);
976 rt->rt_nhops = prep->prep_hopcount;
977 rt->rt_lifetime = prep->prep_lifetime;
978 rt->rt_metric = prep->prep_metric;
979 rt->rt_flags |= IEEE80211_MESHRT_FLAGS_VALID;
983 rt->rt_nhops, rt->rt_metric);
991 hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route);
1018 hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route);
1019 if (rt->rt_flags & IEEE80211_MESHRT_FLAGS_PROXY) {
1031 if ((rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID) == 0 ||
1032 (prep->prep_hopcount < rt->rt_nhops ||
1033 prep->prep_metric < rt->rt_metric)) {
1036 rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID ?
1039 rt->rt_nhops, prep->prep_hopcount,
1040 rt->rt_metric, prep->prep_metric);
1041 IEEE80211_ADDR_COPY(rt->rt_nexthop, wh->i_addr2);
1042 rt->rt_nhops = prep->prep_hopcount;
1043 rt->rt_lifetime = prep->prep_lifetime;
1044 rt->rt_metric = prep->prep_metric;
1045 rt->rt_flags |= IEEE80211_MESHRT_FLAGS_VALID;
1050 rt->rt_nhops, prep->prep_hopcount,
1051 rt->rt_metric, prep->prep_metric);
1069 ieee80211_mac_hash(ic, rt->rt_dest));
1111 struct ieee80211_mesh_route *rt;
1114 rt = ieee80211_mesh_rt_find(vap, ni->ni_macaddr);
1115 if (rt == NULL)
1117 hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route);
1126 IEEE80211_ADDR_COPY(PERR_DADDR(0), rt->rt_dest);
1147 struct ieee80211_mesh_route *rt = NULL;
1164 rt = ieee80211_mesh_rt_find(vap, PERR_DADDR(i));
1165 if (rt == NULL)
1167 hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route);
1170 ieee80211_mesh_rt_del(vap, rt->rt_dest);
1171 ieee80211_mesh_rt_flush_peer(vap, rt->rt_dest);
1172 rt = NULL;
1227 struct ieee80211_mesh_route *rt = NULL;
1236 rt = ieee80211_mesh_rt_find(vap, rann->rann_addr);
1241 if (rt == NULL) {
1245 hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route);
1290 struct ieee80211_mesh_route *rt = NULL;
1304 rt = ieee80211_mesh_rt_find(vap, dest);
1305 if (rt == NULL) {
1306 rt = ieee80211_mesh_rt_add(vap, dest);
1307 if (rt == NULL) {
1315 hr = IEEE80211_MESH_ROUTE_PRIV(rt,
1317 if ((rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID) == 0) {
1320 rt->rt_metric = IEEE80211_MESHLMETRIC_INITIALVAL;
1321 rt->rt_lifetime =
1338 preq.preq_lifetime = rt->rt_lifetime;
1339 preq.preq_metric = rt->rt_metric;
1353 if (rt->rt_flags & IEEE80211_MESHRT_FLAGS_VALID)
1354 ni = ieee80211_find_txnode(vap, rt->rt_nexthop);