Lines Matching refs:router

3  * Fichier Module :igmpv3.c - An IGMPv3-router implementation
6 * Description: Implementation de differentes routines du protocole IGMPv3-router
25 extern igmp_router_t router;
114 igmp_router_t *router,
130 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,forward_upstream);
132 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,1);
148 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
149 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
159 igmp_router_t *router,
182 send_group_src_specific_q(router,ifp,gp,set_src,num);
195 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
196 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
220 send_group_src_specific_q(router,ifp,gp,set_src,num);
232 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
233 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
244 igmp_router_t *router,
289 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
306 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
324 send_group_src_specific_q(router,ifp,gp,set_src,num);
330 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
331 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
338 k_proxy_chg_mfc(router->igmprt_socket,mulsrc.igmps_addr.s_addr,gp->igmpg_addr.s_addr,wan_index,1);
341 igmp_info_print(router);
350 igmp_router_t *router,
378 igmp_info_print(router);
399 k_proxy_del_mfc(router->igmprt_socket,mulsrc.igmps_addr.s_addr,gp->igmpg_addr.s_addr);
420 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,forward_upstream);
425 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,1);
443 send_group_src_specific_q(router,ifp,gp,set_src,num);
458 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
460 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
478 send_group_src_specific_q(router,ifp,gp,set_src,num);
480 send_group_specific_query(router,ifp,gp);
493 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
495 //set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
511 igmp_router_t* router,
529 //printf("%d, 0x%x,0x%x,0x%x,\n",router->igmprt_socket,mulsrc.igmps_addr.s_addr,gp->igmpg_addr.s_addr,wan_index);
530 k_proxy_chg_mfc(router->igmprt_socket,mulsrc.igmps_addr.s_addr,gp->igmpg_addr.s_addr,wan_index,1);
554 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
570 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
578 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,numsrc,sources);
579 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
582 igmp_info_print(router); //aspen
593 igmp_router_t* router,
614 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,forward_upstream);
616 k_proxy_chg_mfc(router->igmprt_socket,sources[i].s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,1);
631 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
632 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
640 member = (membership_db*)update_multi(router,gp->igmpg_addr,gp->igmpg_fmode,num,set_src);
641 set_source_filter(router,gp,upstream,member->membership.fmode,member->membership.numsources,member->membership.sources);
667 * void igmprt_timer_group(igmp_router_t* router, igmp_interface_t *ifp)
669 * handle the groups timers for this router
673 void igmprt_timer_group(igmp_router_t* router,igmp_interface_t *ifp)
693 k_proxy_del_mfc(router->igmprt_socket,mulsrc.igmps_addr.s_addr,gp->igmpg_addr.s_addr);
703 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
713 igmprt = router;
716 for (ifp1 = router->igmprt_interfaces; ifp1; ifp1 = ifp1->igmpi_next)
728 upstream_interface = igmprt_interface_lookup(router,up);
730 if (setsockopt(router->igmprt_up_socket, IPPROTO_IP, IP_DROP_MEMBERSHIP, (void *) &mreq, sizeof(mreq)) < 0) {
738 router = igmprt;
754 * void igmprt_timer_source(igmp_router_t* router, igmp_interface_t *ifp)
758 void igmprt_timer_source (igmp_router_t* router,igmp_interface_t *ifp)
784 k_proxy_chg_mfc(router->igmprt_socket,src->igmps_source.s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,1);
793 k_proxy_chg_mfc(router->igmprt_socket,src->igmps_source.s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,0);
796 k_proxy_del_mfc (router->igmprt_socket, src->igmps_source.s_addr, gp->igmpg_addr.s_addr);
801 igmprt = router;
812 upstream_interface = igmprt_interface_lookup(router,up);
814 if (setsockopt(router->igmprt_up_socket, IPPROTO_IP, IP_DROP_MEMBERSHIP, (void *) &mreq, sizeof(mreq)) < 0) {
821 router = igmprt;
834 k_proxy_chg_mfc(router->igmprt_socket,src->igmps_source.s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,1);
843 k_proxy_chg_mfc(router->igmprt_socket,src->igmps_source.s_addr,gp->igmpg_addr.s_addr,ifp->igmpi_index,0);
873 * void sch_group_specq_add(router,ifp,gp,sources,numsrc)
903 * Include sources if they are specified and the router version of the
956 if (SRSP == TRUE) /*set supress router-side Processing*/
995 igmp_router_t *router,
1005 igmprt_membership_query(router,ifp,&gp->igmpg_addr,NULL,0,SRSP);
1015 igmp_router_t *router,
1103 * send_sh_query(router,ifp)
1107 void send_sh_query(igmp_router_t *router,
1130 igmprt_membership_query(router,ifp,&sch->gp_addr,NULL,0,1);
1134 igmprt_membership_query(router,ifp,&sch->gp_addr,NULL,0,0);
1147 igmprt_membership_query(router,ifp,&sch->gp_addr,&src_inf_lmqi,numsrc2,0);}
1149 igmprt_membership_query(router,ifp,&sch->gp_addr,&src_sup_lmqi,numsrc1,1);}
1348 for (ifp1=router.igmprt_interfaces; ifp1;ifp1=ifp1->igmpi_next)
1389 for (ifp1=router.igmprt_interfaces; ifp1;ifp1=ifp1->igmpi_next)
1430 for (ifp1=router.igmprt_interfaces; ifp1;ifp1=ifp1->igmpi_next)
1588 for (ifp2=router.igmprt_interfaces; ifp2;ifp2=ifp2->igmpi_next)
1628 for (ifp2=router.igmprt_interfaces; ifp2;ifp2=ifp2->igmpi_next)
1748 //sendto(router.igmprt_socket, (void*) v2_report, size, 0, (struct sockaddr*)&sin, sizeof(sin));