mcast.c (d1a76187a5be4f89c6cb19d800cb5fb7aac735c5) mcast.c (b071195deba14b37ce896c26f20349b46e5f9fd2)
1/*
2 * Multicast support for IPv6
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 * Based on linux/ipv4/igmp.c and linux/ipv4/ip_sockglue.c

--- 2416 unchanged lines hidden (view full) ---

2425}
2426
2427static int igmp6_mc_seq_show(struct seq_file *seq, void *v)
2428{
2429 struct ifmcaddr6 *im = (struct ifmcaddr6 *)v;
2430 struct igmp6_mc_iter_state *state = igmp6_mc_seq_private(seq);
2431
2432 seq_printf(seq,
1/*
2 * Multicast support for IPv6
3 * Linux INET6 implementation
4 *
5 * Authors:
6 * Pedro Roque <roque@di.fc.ul.pt>
7 *
8 * Based on linux/ipv4/igmp.c and linux/ipv4/ip_sockglue.c

--- 2416 unchanged lines hidden (view full) ---

2425}
2426
2427static int igmp6_mc_seq_show(struct seq_file *seq, void *v)
2428{
2429 struct ifmcaddr6 *im = (struct ifmcaddr6 *)v;
2430 struct igmp6_mc_iter_state *state = igmp6_mc_seq_private(seq);
2431
2432 seq_printf(seq,
2433 "%-4d %-15s " NIP6_SEQFMT " %5d %08X %ld\n",
2433 "%-4d %-15s %#p6 %5d %08X %ld\n",
2434 state->dev->ifindex, state->dev->name,
2434 state->dev->ifindex, state->dev->name,
2435 NIP6(im->mca_addr),
2435 &im->mca_addr,
2436 im->mca_users, im->mca_flags,
2437 (im->mca_flags&MAF_TIMER_RUNNING) ?
2438 jiffies_to_clock_t(im->mca_timer.expires-jiffies) : 0);
2439 return 0;
2440}
2441
2442static const struct seq_operations igmp6_mc_seq_ops = {
2443 .start = igmp6_mc_seq_start,

--- 142 unchanged lines hidden (view full) ---

2586 if (v == SEQ_START_TOKEN) {
2587 seq_printf(seq,
2588 "%3s %6s "
2589 "%32s %32s %6s %6s\n", "Idx",
2590 "Device", "Multicast Address",
2591 "Source Address", "INC", "EXC");
2592 } else {
2593 seq_printf(seq,
2436 im->mca_users, im->mca_flags,
2437 (im->mca_flags&MAF_TIMER_RUNNING) ?
2438 jiffies_to_clock_t(im->mca_timer.expires-jiffies) : 0);
2439 return 0;
2440}
2441
2442static const struct seq_operations igmp6_mc_seq_ops = {
2443 .start = igmp6_mc_seq_start,

--- 142 unchanged lines hidden (view full) ---

2586 if (v == SEQ_START_TOKEN) {
2587 seq_printf(seq,
2588 "%3s %6s "
2589 "%32s %32s %6s %6s\n", "Idx",
2590 "Device", "Multicast Address",
2591 "Source Address", "INC", "EXC");
2592 } else {
2593 seq_printf(seq,
2594 "%3d %6.6s " NIP6_SEQFMT " " NIP6_SEQFMT " %6lu %6lu\n",
2594 "%3d %6.6s %#p6 %#p6 %6lu %6lu\n",
2595 state->dev->ifindex, state->dev->name,
2595 state->dev->ifindex, state->dev->name,
2596 NIP6(state->im->mca_addr),
2597 NIP6(psf->sf_addr),
2596 &state->im->mca_addr,
2597 &psf->sf_addr,
2598 psf->sf_count[MCAST_INCLUDE],
2599 psf->sf_count[MCAST_EXCLUDE]);
2600 }
2601 return 0;
2602}
2603
2604static const struct seq_operations igmp6_mcf_seq_ops = {
2605 .start = igmp6_mcf_seq_start,

--- 101 unchanged lines hidden ---
2598 psf->sf_count[MCAST_INCLUDE],
2599 psf->sf_count[MCAST_EXCLUDE]);
2600 }
2601 return 0;
2602}
2603
2604static const struct seq_operations igmp6_mcf_seq_ops = {
2605 .start = igmp6_mcf_seq_start,

--- 101 unchanged lines hidden ---