Lines Matching refs:g

58 static void                   update_kernel(struct gtable *g);
107 struct listaddr *g; in grplst_mem() local
112 for (g = v->uv_groups; g != NULL; g = g->al_next) in grplst_mem()
113 if (mcastgrp == g->al_addr) in grplst_mem()
361 update_kernel(struct gtable *g) in update_kernel() argument
365 for (st = g->gt_srctbl; st; st = st->st_next) in update_kernel()
366 k_add_rg(st->st_origin, g); in update_kernel()
674 struct gtable *g; in add_table_entry() local
676 g = gtp ? gtp->gt_gnext : kernel_table; in add_table_entry()
679 inet_fmt(g->gt_mcastgrp), in add_table_entry()
680 r, g->gt_route); in add_table_entry()
752 struct gtable *g; in reset_neighbor_state() local
756 for (g = kernel_table; g; g = g->gt_gnext) { in reset_neighbor_state()
757 r = g->gt_route; in reset_neighbor_state()
768 inet_fmt(g->gt_mcastgrp)); in reset_neighbor_state()
770 g->gt_prsent_timer = 0; in reset_neighbor_state()
771 g->gt_grftsnt = 0; in reset_neighbor_state()
772 while ((st = g->gt_srctbl) != NULL) { in reset_neighbor_state()
773 g->gt_srctbl = st->st_next; in reset_neighbor_state()
774 k_del_rg(st->st_origin, g); in reset_neighbor_state()
783 if (g->gt_prsent_timer) { in reset_neighbor_state()
784 g->gt_grftsnt = 1; in reset_neighbor_state()
785 send_graft(g); in reset_neighbor_state()
786 g->gt_prsent_timer = 0; in reset_neighbor_state()
792 ptnp = &g->gt_pruntbl; in reset_neighbor_state()
804 if (!VIFM_ISSET(vifi, g->gt_grpmems)) { in reset_neighbor_state()
807 VIFM_SET(vifi, g->gt_grpmems); in reset_neighbor_state()
810 grplst_mem(vifi, g->gt_mcastgrp)) in reset_neighbor_state()
811 VIFM_SET(vifi, g->gt_grpmems); in reset_neighbor_state()
813 g->gt_grpmems &= ~g->gt_scope; in reset_neighbor_state()
814 prun_add_ttls(g); in reset_neighbor_state()
817 update_kernel(g); in reset_neighbor_state()
820 rsrr_cache_send(g,1); in reset_neighbor_state()
825 inet_fmt(g->gt_mcastgrp), g->gt_grpmems); in reset_neighbor_state()
838 struct gtable *g, *prev_g; in del_table_entry() local
843 g = r->rt_groups; in del_table_entry()
844 while (g) { in del_table_entry()
847 inet_fmt(g->gt_mcastgrp)); in del_table_entry()
848 st = g->gt_srctbl; in del_table_entry()
850 if (k_del_rg(st->st_origin, g) < 0) { in del_table_entry()
854 inet_fmt(g->gt_mcastgrp)); in del_table_entry()
861 g->gt_srctbl = NULL; in del_table_entry()
863 pt = g->gt_pruntbl; in del_table_entry()
869 g->gt_pruntbl = NULL; in del_table_entry()
871 if (g->gt_gnext) in del_table_entry()
872 g->gt_gnext->gt_gprev = g->gt_gprev; in del_table_entry()
873 if (g->gt_gprev) in del_table_entry()
874 g->gt_gprev->gt_gnext = g->gt_gnext; in del_table_entry()
876 kernel_table = g->gt_gnext; in del_table_entry()
880 rsrr_cache_send(g,0); in del_table_entry()
881 rsrr_cache_clean(g); in del_table_entry()
883 prev_g = g; in del_table_entry()
884 g = g->gt_next; in del_table_entry()
895 for (g = r->rt_groups; g; g = g->gt_next) { in del_table_entry()
896 if (g->gt_mcastgrp == mcastgrp) { in del_table_entry()
899 inet_fmt(g->gt_mcastgrp)); in del_table_entry()
900 st = g->gt_srctbl; in del_table_entry()
902 if (k_del_rg(st->st_origin, g) < 0) { in del_table_entry()
906 inet_fmt(g->gt_mcastgrp)); in del_table_entry()
913 g->gt_srctbl = NULL; in del_table_entry()
915 pt = g->gt_pruntbl; in del_table_entry()
921 g->gt_pruntbl = NULL; in del_table_entry()
923 if (g->gt_gnext) in del_table_entry()
924 g->gt_gnext->gt_gprev = g->gt_gprev; in del_table_entry()
925 if (g->gt_gprev) in del_table_entry()
926 g->gt_gprev->gt_gnext = g->gt_gnext; in del_table_entry()
928 kernel_table = g->gt_gnext; in del_table_entry()
931 g->gt_next->gt_prev = prev_g; in del_table_entry()
933 g->gt_next->gt_prev = NULL; in del_table_entry()
934 prev_g->gt_next = g->gt_next; in del_table_entry()
938 rsrr_cache_send(g,0); in del_table_entry()
939 rsrr_cache_clean(g); in del_table_entry()
941 free(g); in del_table_entry()
942 g = prev_g; in del_table_entry()
944 prev_g = g; in del_table_entry()
956 struct gtable *g; in update_table_entry() local
960 for (g = r->rt_groups; g; g = g->gt_next) { in update_table_entry()
961 pt = g->gt_pruntbl; in update_table_entry()
967 g->gt_pruntbl = NULL; in update_table_entry()
969 g->gt_grpmems = 0; in update_table_entry()
975 VIFM_SET(i, g->gt_grpmems); in update_table_entry()
977 if (VIFM_ISSET(i, r->rt_leaves) && grplst_mem(i, g->gt_mcastgrp)) in update_table_entry()
978 VIFM_SET(i, g->gt_grpmems); in update_table_entry()
980 if (VIFM_ISSET(r->rt_parent, g->gt_scope)) in update_table_entry()
981 g->gt_scope = -1; in update_table_entry()
982 g->gt_grpmems &= ~g->gt_scope; in update_table_entry()
986 inet_fmt(g->gt_mcastgrp), in update_table_entry()
987 g->gt_grpmems); in update_table_entry()
989 if (g->gt_grpmems && g->gt_prsent_timer) { in update_table_entry()
990 g->gt_grftsnt = 1; in update_table_entry()
991 send_graft(g); in update_table_entry()
992 g->gt_prsent_timer = 0; in update_table_entry()
996 prun_add_ttls(g); in update_table_entry()
997 update_kernel(g); in update_table_entry()
1000 rsrr_cache_send(g,1); in update_table_entry()
1004 if (!g->gt_prsent_timer && g->gt_grpmems == 0 && r->rt_gateway) { in update_table_entry()
1005 g->gt_timer = CACHE_LIFETIME(cache_lifetime); in update_table_entry()
1006 send_prune(g); in update_table_entry()
1018 struct gtable *g; in update_lclgrp() local
1023 for (g = kernel_table; g; g = g->gt_gnext) { in update_lclgrp()
1024 if (ntohl(mcastgrp) < ntohl(g->gt_mcastgrp)) in update_lclgrp()
1027 r = g->gt_route; in update_lclgrp()
1028 if (g->gt_mcastgrp == mcastgrp && in update_lclgrp()
1031 VIFM_SET(vifi, g->gt_grpmems); in update_lclgrp()
1032 g->gt_grpmems &= ~g->gt_scope; in update_lclgrp()
1033 if (g->gt_grpmems == 0) in update_lclgrp()
1036 prun_add_ttls(g); in update_lclgrp()
1039 inet_fmt(g->gt_mcastgrp), g->gt_grpmems); in update_lclgrp()
1041 update_kernel(g); in update_lclgrp()
1044 rsrr_cache_send(g,1); in update_lclgrp()
1057 struct gtable *g; in delete_lclgrp() local
1062 for (g = kernel_table; g; g = g->gt_gnext) { in delete_lclgrp()
1063 if (ntohl(mcastgrp) < ntohl(g->gt_mcastgrp)) in delete_lclgrp()
1066 if (g->gt_mcastgrp == mcastgrp) { in delete_lclgrp()
1069 r = g->gt_route; in delete_lclgrp()
1078 if (find_prune_entry(vr->al_addr, g->gt_pruntbl) == NULL) { in delete_lclgrp()
1085 VIFM_CLR(vifi, g->gt_grpmems); in delete_lclgrp()
1088 inet_fmt(g->gt_mcastgrp), g->gt_grpmems); in delete_lclgrp()
1090 prun_add_ttls(g); in delete_lclgrp()
1091 update_kernel(g); in delete_lclgrp()
1094 rsrr_cache_send(g,1); in delete_lclgrp()
1101 if (!g->gt_prsent_timer && g->gt_grpmems == 0 && r->rt_gateway) in delete_lclgrp()
1102 send_prune(g); in delete_lclgrp()
1128 struct gtable *g; in accept_prune() local
1168 g = gtp ? gtp->gt_gnext : kernel_table; in accept_prune()
1169 r = g->gt_route; in accept_prune()
1177 if (VIFM_ISSET(vifi, g->gt_scope)) { in accept_prune()
1183 if ((pt = find_prune_entry(src, g->gt_pruntbl)) != NULL) { in accept_prune()
1193 "old timer:", pt->pt_timer, "cur gm:", g->gt_grpmems); in accept_prune()
1208 pt->pt_next = g->gt_pruntbl; in accept_prune()
1209 g->gt_pruntbl = pt; in accept_prune()
1213 g->gt_timer = CACHE_LIFETIME(cache_lifetime); in accept_prune()
1214 if ((u_int32_t)g->gt_timer < prun_tmr) in accept_prune()
1215 g->gt_timer = prun_tmr; in accept_prune()
1223 if (find_prune_entry(vr->al_addr, g->gt_pruntbl) == NULL) { in accept_prune()
1229 VIFM_CLR(vifi, g->gt_grpmems); in accept_prune()
1232 inet_fmt(g->gt_mcastgrp), vifi, g->gt_grpmems); in accept_prune()
1234 prun_add_ttls(g); in accept_prune()
1235 update_kernel(g); in accept_prune()
1238 rsrr_cache_send(g,1); in accept_prune()
1248 if (!g->gt_prsent_timer && g->gt_grpmems == 0 && r->rt_gateway) { in accept_prune()
1249 send_prune(g); in accept_prune()
1273 struct gtable *g; in chkgrp_graft() local
1275 for (g = kernel_table; g; g = g->gt_gnext) { in chkgrp_graft()
1276 if (ntohl(mcastgrp) < ntohl(g->gt_mcastgrp)) in chkgrp_graft()
1279 r = g->gt_route; in chkgrp_graft()
1280 if (g->gt_mcastgrp == mcastgrp && VIFM_ISSET(vifi, r->rt_children)) in chkgrp_graft()
1281 if (g->gt_prsent_timer) { in chkgrp_graft()
1282 VIFM_SET(vifi, g->gt_grpmems); in chkgrp_graft()
1288 g->gt_grpmems &= ~g->gt_scope; in chkgrp_graft()
1289 if (g->gt_grpmems == 0) in chkgrp_graft()
1293 g->gt_grftsnt = 1; in chkgrp_graft()
1296 send_graft(g); in chkgrp_graft()
1299 g->gt_prsent_timer = 0; in chkgrp_graft()
1300 g->gt_timer = max_prune_lifetime; in chkgrp_graft()
1304 inet_fmt(g->gt_mcastgrp), g->gt_grpmems); in chkgrp_graft()
1306 prun_add_ttls(g); in chkgrp_graft()
1307 update_kernel(g); in chkgrp_graft()
1310 rsrr_cache_send(g,1); in chkgrp_graft()
1336 struct gtable *g; in accept_graft() local
1366 g = gtp ? gtp->gt_gnext : kernel_table; in accept_graft()
1367 r = g->gt_route; in accept_graft()
1369 if (VIFM_ISSET(vifi, g->gt_scope)) { in accept_graft()
1376 ptnp = &g->gt_pruntbl; in accept_graft()
1382 VIFM_SET(vifi, g->gt_grpmems); in accept_graft()
1385 inet_fmt(g->gt_mcastgrp), g->gt_grpmems); in accept_graft()
1387 prun_add_ttls(g); in accept_graft()
1388 update_kernel(g); in accept_graft()
1391 rsrr_cache_send(g,1); in accept_graft()
1401 g->gt_timer = max_prune_lifetime; in accept_graft()
1403 if (g->gt_prsent_timer) { in accept_graft()
1405 g->gt_grftsnt = 1; in accept_graft()
1408 send_graft(g); in accept_graft()
1411 g->gt_prsent_timer = 0; in accept_graft()
1440 struct gtable *g; in accept_g_ack() local
1473 g = gtp ? gtp->gt_gnext : kernel_table; in accept_g_ack()
1474 g->gt_grftsnt = 0; in accept_g_ack()
1495 struct gtable *g, *prev_g; in free_all_prunes() local
1500 g = r->rt_groups; in free_all_prunes()
1501 while (g) { in free_all_prunes()
1502 s = g->gt_srctbl; in free_all_prunes()
1509 p = g->gt_pruntbl; in free_all_prunes()
1516 prev_g = g; in free_all_prunes()
1517 g = g->gt_next; in free_all_prunes()
1524 g = kernel_no_route; in free_all_prunes()
1525 while (g) { in free_all_prunes()
1526 if (g->gt_srctbl) in free_all_prunes()
1527 free(g->gt_srctbl); in free_all_prunes()
1529 prev_g = g; in free_all_prunes()
1530 g = g->gt_next; in free_all_prunes()