igmp.c (ebf8889bd1fe3615991ff4494635d237280652a2) igmp.c (b24b8a247ff65c01b252025926fe564209fae4fc)
1/*
2 * Linux NET3: Internet Group Management Protocol [IGMP]
3 *
4 * This code implements the IGMP protocol as defined in RFC1112. There has
5 * been a further revision of this protocol since which is now supported.
6 *
7 * If you have trouble with this module be careful what gcc you have used,
8 * the older version didn't come out right using gcc 2.5.8, the newer one

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

1229 im->sfcount[MCAST_EXCLUDE] = 1;
1230 im->sources = NULL;
1231 im->tomb = NULL;
1232 im->crcount = 0;
1233 atomic_set(&im->refcnt, 1);
1234 spin_lock_init(&im->lock);
1235#ifdef CONFIG_IP_MULTICAST
1236 im->tm_running=0;
1/*
2 * Linux NET3: Internet Group Management Protocol [IGMP]
3 *
4 * This code implements the IGMP protocol as defined in RFC1112. There has
5 * been a further revision of this protocol since which is now supported.
6 *
7 * If you have trouble with this module be careful what gcc you have used,
8 * the older version didn't come out right using gcc 2.5.8, the newer one

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

1229 im->sfcount[MCAST_EXCLUDE] = 1;
1230 im->sources = NULL;
1231 im->tomb = NULL;
1232 im->crcount = 0;
1233 atomic_set(&im->refcnt, 1);
1234 spin_lock_init(&im->lock);
1235#ifdef CONFIG_IP_MULTICAST
1236 im->tm_running=0;
1237 init_timer(&im->timer);
1238 im->timer.data=(unsigned long)im;
1239 im->timer.function=&igmp_timer_expire;
1237 setup_timer(&im->timer, &igmp_timer_expire, (unsigned long)im);
1240 im->unsolicit_count = IGMP_Unsolicited_Report_Count;
1241 im->reporter = 0;
1242 im->gsquery = 0;
1243#endif
1244 im->loaded = 0;
1245 write_lock_bh(&in_dev->mc_list_lock);
1246 im->next=in_dev->mc_list;
1247 in_dev->mc_list=im;

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

1333
1334void ip_mc_init_dev(struct in_device *in_dev)
1335{
1336 ASSERT_RTNL();
1337
1338 in_dev->mc_tomb = NULL;
1339#ifdef CONFIG_IP_MULTICAST
1340 in_dev->mr_gq_running = 0;
1238 im->unsolicit_count = IGMP_Unsolicited_Report_Count;
1239 im->reporter = 0;
1240 im->gsquery = 0;
1241#endif
1242 im->loaded = 0;
1243 write_lock_bh(&in_dev->mc_list_lock);
1244 im->next=in_dev->mc_list;
1245 in_dev->mc_list=im;

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

1331
1332void ip_mc_init_dev(struct in_device *in_dev)
1333{
1334 ASSERT_RTNL();
1335
1336 in_dev->mc_tomb = NULL;
1337#ifdef CONFIG_IP_MULTICAST
1338 in_dev->mr_gq_running = 0;
1341 init_timer(&in_dev->mr_gq_timer);
1342 in_dev->mr_gq_timer.data=(unsigned long) in_dev;
1343 in_dev->mr_gq_timer.function=&igmp_gq_timer_expire;
1339 setup_timer(&in_dev->mr_gq_timer, igmp_gq_timer_expire,
1340 (unsigned long)in_dev);
1344 in_dev->mr_ifc_count = 0;
1341 in_dev->mr_ifc_count = 0;
1345 init_timer(&in_dev->mr_ifc_timer);
1346 in_dev->mr_ifc_timer.data=(unsigned long) in_dev;
1347 in_dev->mr_ifc_timer.function=&igmp_ifc_timer_expire;
1342 setup_timer(&in_dev->mr_ifc_timer, igmp_ifc_timer_expire,
1343 (unsigned long)in_dev);
1348 in_dev->mr_qrv = IGMP_Unsolicited_Report_Count;
1349#endif
1350
1351 rwlock_init(&in_dev->mc_list_lock);
1352 spin_lock_init(&in_dev->mc_tomb_lock);
1353}
1354
1355/* Device going up */

--- 1240 unchanged lines hidden ---
1344 in_dev->mr_qrv = IGMP_Unsolicited_Report_Count;
1345#endif
1346
1347 rwlock_init(&in_dev->mc_list_lock);
1348 spin_lock_init(&in_dev->mc_tomb_lock);
1349}
1350
1351/* Device going up */

--- 1240 unchanged lines hidden ---