version 1.34.2.4, 2004/11/29 07:25:04 |
version 1.34.2.5, 2005/02/04 11:47:45 |
Line 70 struct igmpstat igmpstat; |
|
Line 70 struct igmpstat igmpstat; |
|
int igmp_timers_are_running; |
int igmp_timers_are_running; |
static LIST_HEAD(, router_info) rti_head = LIST_HEAD_INITIALIZER(rti_head); |
static LIST_HEAD(, router_info) rti_head = LIST_HEAD_INITIALIZER(rti_head); |
|
|
void igmp_sendpkt __P((struct in_multi *, int)); |
void igmp_sendpkt(struct in_multi *, int); |
static int rti_fill __P((struct in_multi *)); |
static int rti_fill(struct in_multi *); |
static struct router_info *rti_find __P((struct ifnet *)); |
static struct router_info *rti_find(struct ifnet *); |
static void rti_delete(struct ifnet *); |
static void rti_delete(struct ifnet *); |
|
|
static int |
static int |
rti_fill(inm) |
rti_fill(struct in_multi *inm) |
struct in_multi *inm; |
|
{ |
{ |
struct router_info *rti; |
struct router_info *rti; |
|
|
|
|
} |
} |
|
|
static struct router_info * |
static struct router_info * |
rti_find(ifp) |
rti_find(struct ifnet *ifp) |
struct ifnet *ifp; |
|
{ |
{ |
struct router_info *rti; |
struct router_info *rti; |
|
|
|
|
} |
} |
|
|
static void |
static void |
rti_delete(ifp) |
rti_delete(struct ifnet *ifp) |
struct ifnet *ifp; |
|
{ |
{ |
struct router_info *rti; |
struct router_info *rti; |
|
|
Line 414 igmp_input(struct mbuf *m, ...) |
|
Line 411 igmp_input(struct mbuf *m, ...) |
|
} |
} |
|
|
int |
int |
igmp_joingroup(inm) |
igmp_joingroup(struct in_multi *inm) |
struct in_multi *inm; |
|
{ |
{ |
int report_type; |
int report_type; |
int s = splsoftnet(); |
int s = splsoftnet(); |
Line 441 igmp_joingroup(inm) |
|
Line 437 igmp_joingroup(inm) |
|
} |
} |
|
|
void |
void |
igmp_leavegroup(inm) |
igmp_leavegroup(struct in_multi *inm) |
struct in_multi *inm; |
|
{ |
{ |
|
|
switch (inm->inm_state) { |
switch (inm->inm_state) { |
Line 461 igmp_leavegroup(inm) |
|
Line 456 igmp_leavegroup(inm) |
|
} |
} |
|
|
void |
void |
igmp_fasttimo() |
igmp_fasttimo(void) |
{ |
{ |
struct in_multi *inm; |
struct in_multi *inm; |
struct in_multistep step; |
struct in_multistep step; |
|
|
} |
} |
|
|
void |
void |
igmp_slowtimo() |
igmp_slowtimo(void) |
{ |
{ |
struct router_info *rti; |
struct router_info *rti; |
int s; |
int s; |
|
|
} |
} |
|
|
void |
void |
igmp_sendpkt(inm, type) |
igmp_sendpkt(struct in_multi *inm, int type) |
struct in_multi *inm; |
|
int type; |
|
{ |
{ |
struct mbuf *m; |
struct mbuf *m; |
struct igmp *igmp; |
struct igmp *igmp; |
Line 579 igmp_sendpkt(inm, type) |
|
Line 572 igmp_sendpkt(inm, type) |
|
} |
} |
|
|
void |
void |
igmp_purgeif(ifp) |
igmp_purgeif(struct ifnet *ifp) |
struct ifnet *ifp; |
|
{ |
{ |
|
|
rti_delete(ifp); |
rti_delete(ifp); |