X7ROOT File Manager
Current Path:
/lib64/python2.7/Demo/sockets
lib64
/
python2.7
/
Demo
/
sockets
/
??
..
??
README
(628 B)
??
broadcast.py
(283 B)
??
broadcast.pyc
(547 B)
??
broadcast.pyo
(547 B)
??
echosvr.py
(738 B)
??
echosvr.pyc
(827 B)
??
echosvr.pyo
(827 B)
??
finger.py
(1.23 KB)
??
finger.pyc
(1.13 KB)
??
finger.pyo
(1.13 KB)
??
ftp.py
(3.84 KB)
??
ftp.pyc
(2.88 KB)
??
ftp.pyo
(2.88 KB)
??
gopher.py
(9.55 KB)
??
gopher.pyc
(10.08 KB)
??
gopher.pyo
(10.08 KB)
??
mcast.py
(2.16 KB)
??
mcast.pyc
(2.12 KB)
??
mcast.pyo
(2.12 KB)
??
radio.py
(287 B)
??
radio.pyc
(471 B)
??
radio.pyo
(471 B)
??
rpython.py
(713 B)
??
rpython.pyc
(982 B)
??
rpython.pyo
(982 B)
??
rpythond.py
(1.18 KB)
??
rpythond.pyc
(1.3 KB)
??
rpythond.pyo
(1.3 KB)
??
telnet.py
(2.94 KB)
??
telnet.pyc
(2.1 KB)
??
telnet.pyo
(2.1 KB)
??
throughput.py
(2.04 KB)
??
throughput.pyc
(2.42 KB)
??
throughput.pyo
(2.42 KB)
??
udpecho.py
(1.43 KB)
??
udpecho.pyc
(1.98 KB)
??
udpecho.pyo
(1.98 KB)
??
unicast.py
(230 B)
??
unicast.pyc
(456 B)
??
unicast.pyo
(456 B)
??
unixclient.py
(232 B)
??
unixclient.pyc
(424 B)
??
unixclient.pyo
(424 B)
??
unixserver.py
(414 B)
??
unixserver.pyc
(593 B)
??
unixserver.pyo
(593 B)
Editing: mcast.py
#! /usr/bin/python2.7 # # Send/receive UDP multicast packets. # Requires that your OS kernel supports IP multicast. # # Usage: # mcast -s (sender, IPv4) # mcast -s -6 (sender, IPv6) # mcast (receivers, IPv4) # mcast -6 (receivers, IPv6) MYPORT = 8123 MYGROUP_4 = '225.0.0.250' MYGROUP_6 = 'ff15:7079:7468:6f6e:6465:6d6f:6d63:6173' MYTTL = 1 # Increase to reach other networks import time import struct import socket import sys def main(): group = MYGROUP_6 if "-6" in sys.argv[1:] else MYGROUP_4 if "-s" in sys.argv[1:]: sender(group) else: receiver(group) def sender(group): addrinfo = socket.getaddrinfo(group, None)[0] s = socket.socket(addrinfo[0], socket.SOCK_DGRAM) # Set Time-to-live (optional) ttl_bin = struct.pack('@i', MYTTL) if addrinfo[0] == socket.AF_INET: # IPv4 s.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, ttl_bin) else: s.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_MULTICAST_HOPS, ttl_bin) while True: data = repr(time.time()) s.sendto(data + '\0', (addrinfo[4][0], MYPORT)) time.sleep(1) def receiver(group): # Look up multicast group address in name server and find out IP version addrinfo = socket.getaddrinfo(group, None)[0] # Create a socket s = socket.socket(addrinfo[0], socket.SOCK_DGRAM) # Allow multiple copies of this program on one machine # (not strictly needed) s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) # Bind it to the port s.bind(('', MYPORT)) group_bin = socket.inet_pton(addrinfo[0], addrinfo[4][0]) # Join group if addrinfo[0] == socket.AF_INET: # IPv4 mreq = group_bin + struct.pack('=I', socket.INADDR_ANY) s.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq) else: mreq = group_bin + struct.pack('@I', 0) s.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_JOIN_GROUP, mreq) # Loop, printing any data we receive while True: data, sender = s.recvfrom(1500) while data[-1:] == '\0': data = data[:-1] # Strip trailing \0's print (str(sender) + ' ' + repr(data)) if __name__ == '__main__': main()
Upload File
Create Folder