File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22# After /usr/people/4Dgifts/examples/network/mcast.c
33# Usage:
44# mcast -s (sender)
5+ # mcast -b (sender, using broadcast instead multicast)
56# mcast (receivers)
67
78MYPORT = 8123
1415from SOCKET import *
1516from IN import *
1617
17- sender = ( sys .argv [1 :2 ] == [ '-s' ])
18+ sender = sys .argv [1 :]
1819
1920s = socket (AF_INET , SOCK_DGRAM )
2021
2122if sender :
22- # Ugly: construct decimal IP address string from MYGROUP_BYTES
23- mygroup = ''
24- for byte in MYGROUP_BYTES : mygroup = mygroup + '.' + `byte`
25- mygroup = mygroup [1 :]
26- ttl = struct .pack ('b' , 1 ) # Time-to-live
27- s .setsockopt (IPPROTO_IP , IP_MULTICAST_TTL , ttl )
23+ if sys .argv [1 ] == '-b' :
24+ s .setsockopt (SOL_SOCKET , SO_BROADCAST , 1 )
25+ mygroup = '<broadcast>'
26+ else :
27+ # Ugly: construct decimal IP address string from MYGROUP_BYTES
28+ mygroup = ''
29+ for byte in MYGROUP_BYTES : mygroup = mygroup + '.' + `byte`
30+ mygroup = mygroup [1 :]
31+ ttl = struct .pack ('b' , 1 ) # Time-to-live
32+ s .setsockopt (IPPROTO_IP , IP_MULTICAST_TTL , ttl )
2833 while 1 :
29- data = `time.time()` + '\n '
34+ data = `time.time()`
35+ ## data = data + (1400 - len(data)) * '\0'
3036 s .sendto (data , (mygroup , MYPORT ))
31- time .sleep (5 )
37+ time .sleep (1 )
3238else :
3339 # Bind the socket to my port
3440 s .bind ('' , MYPORT )
You can’t perform that action at this time.
0 commit comments