diff options
author | Vyacheslav Trushkin <me@dogonthesun.net> | 2011-11-21 20:26:39 +0400 |
---|---|---|
committer | Denis Ovsienko <infrastation@yandex.ru> | 2011-12-13 14:25:43 +0400 |
commit | 9a9446eabb8f153251d6d93d225a68ca44b436ac (patch) | |
tree | 00ca15de108d23f938220fed8ac1daf7a73aa050 /ospf6d/ospf6_interface.c | |
parent | 6989880ad7699cb6bf0cfc0fbb95da51430652cf (diff) |
ospf6d: justify multicast group management
* ospf6_network.[ch]
* ospf6_sso(): new function supersedes ospf6_join_allspfrouters(),
ospf6_leave_allspfrouters(), ospf6_join_alldrouters() and
ospf6_leave_alldrouters()
* ospf6_interface.c
* ospf6_interface_state_change(): update respectively
* interface_up(): ditto
* interface_down(): ditto
Diffstat (limited to 'ospf6d/ospf6_interface.c')
-rw-r--r-- | ospf6d/ospf6_interface.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ospf6d/ospf6_interface.c b/ospf6d/ospf6_interface.c index 13d69808..f6420513 100644 --- a/ospf6d/ospf6_interface.c +++ b/ospf6d/ospf6_interface.c @@ -399,12 +399,12 @@ ospf6_interface_state_change (u_char next_state, struct ospf6_interface *oi) prev_state == OSPF6_INTERFACE_BDR) && (next_state != OSPF6_INTERFACE_DR && next_state != OSPF6_INTERFACE_BDR)) - ospf6_leave_alldrouters (oi->interface->ifindex); + ospf6_sso (oi->interface->ifindex, &alldrouters6, IPV6_LEAVE_GROUP); if ((prev_state != OSPF6_INTERFACE_DR && prev_state != OSPF6_INTERFACE_BDR) && (next_state == OSPF6_INTERFACE_DR || next_state == OSPF6_INTERFACE_BDR)) - ospf6_join_alldrouters (oi->interface->ifindex); + ospf6_sso (oi->interface->ifindex, &alldrouters6, IPV6_JOIN_GROUP); OSPF6_ROUTER_LSA_SCHEDULE (oi->area); if (next_state == OSPF6_INTERFACE_DOWN) @@ -612,7 +612,7 @@ interface_up (struct thread *thread) } /* Join AllSPFRouters */ - ospf6_join_allspfrouters (oi->interface->ifindex); + ospf6_sso (oi->interface->ifindex, &allspfrouters6, IPV6_JOIN_GROUP); /* Update interface route */ ospf6_interface_connected_route_update (oi->interface); @@ -707,7 +707,7 @@ interface_down (struct thread *thread) /* Leave AllSPFRouters */ if (oi->state > OSPF6_INTERFACE_DOWN) - ospf6_leave_allspfrouters (oi->interface->ifindex); + ospf6_sso (oi->interface->ifindex, &allspfrouters6, IPV6_LEAVE_GROUP); ospf6_interface_state_change (OSPF6_INTERFACE_DOWN, oi); |