Your IP : 216.73.216.196


Current Path : /opt/alt/python37/lib64/python3.7/Tools/demo/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/Tools/demo/__pycache__/mcast.cpython-37.opt-1.pyc

B

� f��@s^dZdZdZdZdZddlZddlZddlZddlZdd�Z	d	d
�Z
dd�Zed
krZe	�dS)z�
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)
i�z225.0.0.250z'ff15:7079:7468:6f6e:6465:6d6f:6d63:6173��NcCsBdtjdd�krtnt}dtjdd�kr6t|�nt|�dS)Nz-6rz-s)�sys�argv�	MYGROUP_6�	MYGROUP_4�sender�receiver)�group�r
�5/opt/alt/python37/lib64/python3.7/Tools/demo/mcast.py�mains
rcCs�t�|d�d}t�|dtj�}t�dt�}|dtjkrP|�tjtj	|�n|�tj
tj|�x<tt
�
���d�d}|�||ddtf�t
�d�qdWdS)Nrz@izutf-8��r)�socket�getaddrinfo�
SOCK_DGRAM�struct�pack�MYTTL�AF_INET�
setsockopt�
IPPROTO_IPZIP_MULTICAST_TTL�IPPROTO_IPV6ZIPV6_MULTICAST_HOPS�repr�time�encodeZsendto�MYPORTZsleep)r	�addrinfo�sZttl_bin�datar
r
rr!srcCst�|d�d}t�|dtj�}|�tjtjd�|�dtf�t�|d|dd�}|dtj	kr�|t
�dtj�}|�tj
tj|�n"|t
�dd�}|�tjtj|�xL|�d�\}}x |dd�d	kr�|dd�}q�Wtt|�d
t|��q�WdS)Nrr�rz=Iz@Ii�����z  )rrrrZ
SOL_SOCKETZSO_REUSEADDRZbindrZ	inet_ptonrrrZ
INADDR_ANYrZIP_ADD_MEMBERSHIPrZIPV6_JOIN_GROUPZrecvfrom�print�strr)r	rrZ	group_binZmreqrrr
r
rr3sr�__main__)
�__doc__rrrrrrrrrrr�__name__r
r
r
r�<module>s