Your IP : 216.73.216.213


Current Path : /opt/alt/python33/lib64/python3.3/Tools/demo/__pycache__/
Upload File :
Current File : //opt/alt/python33/lib64/python3.3/Tools/demo/__pycache__/mcast.cpython-33.pyc

�
��f�c@s�dZdZdZdZdZddlZddlZddlZddlZdd�Z	d	d
�Z
dd�Zed
kr�e	�ndS(u�
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�u225.0.0.250u'ff15:7079:7468:6f6e:6465:6d6f:6d63:6173iiNcCsYdtjdd�krtnt}dtjdd�krKt|�n
t|�dS(Nu-6iu-s(usysuargvu	MYGROUP_6u	MYGROUP_4usenderureceiver(ugroup((u5/opt/alt/python33/lib64/python3.3/Tools/demo/mcast.pyumains%
umaincCs�tj|d�d}tj|dtj�}tjdt�}|dtjkrp|jtj	tj
|�n|jtjtj|�xMt
tj��jd�d}|j||ddtf�tjd�q�dS(Niu@iuutf-8sii(usocketugetaddrinfouNoneu
SOCK_DGRAMustructupackuMYTTLuAF_INETu
setsockoptu
IPPROTO_IPuIP_MULTICAST_TTLuIPPROTO_IPV6uIPV6_MULTICAST_HOPSureprutimeuencodeusendtouMYPORTusleep(ugroupuaddrinfousuttl_binudata((u5/opt/alt/python33/lib64/python3.3/Tools/demo/mcast.pyusender!susendercCsZtj|d�d}tj|dtj�}|jtjtjd�|jdtf�tj	|d|dd�}|dtj
kr�|tjdtj
�}|jtjtj|�n/|tjdd�}|jtjtj|�xc|jd�\}}x*|d
d�dkr4|dd�}qWtt|�d	t|��q�dS(Niiuiu=Iu@Ii�uu  i����i����(usocketugetaddrinfouNoneu
SOCK_DGRAMu
setsockoptu
SOL_SOCKETuSO_REUSEADDRubinduMYPORTu	inet_ptonuAF_INETustructupacku
INADDR_ANYu
IPPROTO_IPuIP_ADD_MEMBERSHIPuIPPROTO_IPV6uIPV6_JOIN_GROUPurecvfromuprintustrurepr(ugroupuaddrinfousu	group_binumrequdatausender((u5/opt/alt/python33/lib64/python3.3/Tools/demo/mcast.pyureceiver3sureceiveru__main__(
u__doc__uMYPORTu	MYGROUP_4u	MYGROUP_6uMYTTLutimeustructusocketusysumainusenderureceiveru__name__(((u5/opt/alt/python33/lib64/python3.3/Tools/demo/mcast.pyu<module>s