Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pyc

�
�Udac@`s�ddlmZmZmZeZddlmZddlm	Z	m
Z
d�Zd�Zd�Z
d�Zd�Zd	�Zd
�Zd�Zd�Zd
�ZdS(i(tabsolute_importtdivisiontprint_function(t	iteritems(t
is_masklent
to_netmaskcC`s4||kr|jd|�n|jd|�|S(Nisno %s(tinserttappend(t	interfacetcmdtcommands((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytremove_command_from_config_listscC`s0||kr|jd|�n|j|�dS(Ni(RR(RR	R
((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytadd_command_to_config_listsc	C`s�t�}t|t�r�xht|�D]Z\}}|dk	r%t|t�r�t|dt�r�g}xf|D]^}x<t|�D].\}}t|t�rt|�||<qqW|jtt|���qlWt|�}qht|�}n|t|t�rhg}x<t|�D].\}}t|t�rt|�||<qqW|jtt|���t|�}n|ji||6�q%q%Wt	tt|���}nt	|�}|S(Ni(
tdictt
isinstanceRtNonetlistttupleRtextendtupdatetset(	tsample_dictt	test_dicttktvtliteachtkeytvaluet
return_set((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytdict_to_sets2	
c	C`sbt�}|jd�}|r+||d<nt}x*t|�D]\}}t|t�r>x�t|�D]�\}}t�}	|dkr�|j|�j|�}
|	ji|
|6�nm|dkr#|j�|j|�dj|�j�kr#|j|�dj|�}
|	ji|
|6�n|ji|	|6�qfWnt|t�r(x�t|d�D]�\}}t�}	|dkr�|j|�j|�}
|	ji|
|6�nm|dkr|j�|j|�dj|�j�kr|j|�dj|�}
|	ji|
|6�n|ji|	|6�q^Wx�|D]�}|jd�r:|jd�j	d�}|jd�}
t
|�dkr�|
r�|
djd�r�|
ddj	d	�d}
|
|dkr�t}q�n|jd�r
|tkr
|	jitd6�n|ji|	d6�q:q:Wn|dkr>|j|�}|ji||6�q>q>W|S(
Ntnametipv6it	secondarytaddresst/tipv4it (R
tgettFalseRRRRtlowerRtsplittlentTrue(twantthaveRRtdiff_ipRRRRt
test_key_dicttdict_valRtwant_ipthave_iptval((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytfilter_dict_having_none_value>sR	
	:	:
+cC`sSg}xF|D]>}d|kr>||krK|j|�qKq
|j|�q
W|S(NR(R(R
tset_cmdR((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytremove_duplicate_interfaceus
cC`sz|rv|jd�}t|�dkrC|jddj|��nt|d�sv|jddj|d��qvndS(NR#itmsgs?address format is <ipv4 address>/<mask>, got invalid format {0}is9invalid value for mask: {0}, mask should be in range 0-32(R)R*t	fail_jsontformatR(RtmoduleR"((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pyt
validate_ipv4�scC`s�|r�|jd�}t|�dkrC|jddj|��q�dt|d�koddkns�|jddj|d��q�ndS(	NR#iR7s?address format is <ipv6 address>/<mask>, got invalid format {0}iii�s:invalid value for mask: {0}, mask should be in range 0-128(R)R*R8R9tint(RR:R"((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pyt
validate_ipv6�s&cC`s�|jd�}t|jd��dkr.|St||�|jd�}t|�dkrdj|dt|d��}n|S(NR"R%iR#is{0} {1}i(R&R*R)R;R9R(R:R,tip_addr_wanttip((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytvalidate_n_expand_ipv4�s
#cC`s�|s
dSd�}|j�jd�r1d}nP|j�jd�rOd}n2|j�jd�rmd}n|j�jd	�r�d
}n�|j�jd�r�d}n�|j�jd
�r�d}n�|j�jd�r�d}n�|j�jd�rd}n~|j�jd�r!d}n`|j�jd�r?d}nB|j�jd�r]d}n$|j�jd�r{d}nd}|jd�}t|�dkr�|dj�}n||�}|r�||}n|}|S(s)Return the normalized interface name
    NcS`s@d}x3|D]+}|j�s+|dkr
||7}q
q
W|S(Nts/.(tisdigit(Rtdigitstchar((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pyt_get_number�s

tgitGigabitEthernetttetTenGigabitEthernettfatFastEthernettfotFortyGigabitEthernettlongtLongReachEthernettettEthernettvltVlantlotloopbacktposPort-channeltnvtnvettwetTwentyFiveGigEthutHundredGigER%ii����(R(t
startswithRR)R*tstrip(RREtif_typetnumber_listtnumbertproper_interface((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytnormalize_interface�sH													
cC`s4|j�jd�rdS|j�jd�r2dS|j�jd�rKdS|j�jd�rddS|j�jd	�r}d
S|j�jd�r�dS|j�jd
�r�dS|j�jd�r�dS|j�jd�r�dS|j�jd�r�dS|j�jd�rdS|j�jd�r,dSdSdS(sGets the type of interface
    tGIRGtTERItFARKtFORMtLONROtETRQtVLRStLORUtPOsPort-channeltNVRXtTWERZtHUR\tunknownN(tupperR](R((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pytget_interface_type�s2N(t
__future__RRRttypet
__metaclass__tansible.module_utils.sixRt)ansible.module_utils.network.common.utilsRRRRRR4R6R;R=R@RcRr(((sP/usr/lib/python2.7/site-packages/ansible/module_utils/network/ios/utils/utils.pyt<module>	s				7	
	
	
	
	6

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]