Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/module_utils/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/module_utils/ipa.pyo

�
�Udac@s�ddlZddlZddlZddlZddlZddlmZmZmZddl	m
Z
ddlmZddl
mZmZddlmZmZd�Zdefd	��YZd
�ZdS(i����N(tto_bytest	to_nativetto_text(tPY3(tquote(t	fetch_urlt
HAS_GSSAPI(tenv_fallbacktAnsibleFallbackNotFoundcOsayt||�SWnItk
r\ytjtjd��dSWq]tk
rXt�q]XnXdS(s1 Load value from environment or DNS in that ordersipa-caiN(RRtsockett
gethostbyaddrt
gethostbynamet	Exception(targstkwargs((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyt_env_then_dns_fallback+s

t	IPAClientcBsheZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd
d�Z
d�Zd
d	�ZRS(cCsO||_||_||_||_d|_|jjd�|_t	|_
dS(Ntipa_timeout(thosttporttprotocoltmoduletNonetheaderstparamstgetttimeouttFalset
use_gssapi(tselfRRRR((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyt__init__:s					cCsd|j|jfS(Ns%s://%s/ipa(RR(R((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytget_base_urlCscCsd|j�S(Ns%s/session/json(R(R((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytget_json_urlFscCs�dtjkr!tr!t|_n�dtjkretredttj��}|tjd<t|_nR|s�dtjks�dtjkr�|jj	d�n|j
dd�nd|j�}dt|d	d
�t|d	d
�f}i|j�d6dd
6dd6}y�t
d|jd|dt|�d|d|j�\}}|d}	|	dkrq|j
d|d�ni|jd�d6|_Wn)tk
r�}
|j
dt|
��nX|js�t�|_n|jji|j�d6dd
6dd6�dS(Nt
KRB5CCNAMEtKRB5_CLIENT_KTNAMEsMEMORY:s;In order to use GSSAPI, you need to install 'urllib_gssapi'tlogins�Password is required if not using GSSAPI. To use GSSAPI, please set the KRB5_CLIENT_KTNAME or KRB5CCNAME (or both)  environment variables.s%s/session/login_passwordsuser=%s&password=%stsafettreferers!application/x-www-form-urlencodedsContent-Types
text/plaintAcceptRturltdataRRtstatusi�i�i�tmsgs
set-cookietCookiesapplication/json(i�i�i�(tostenvironRtTrueRtstrtuuidtuuid4Rtwarnt_failRRRRRRRRRtdicttupdate(RtusernametpasswordtccacheR(R)Rtresptinfotstatus_codete((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyR#Is:
(
9
	
cCsEd|kr|jd�}n|}|jjdd||f�dS(NtmessageR+s%s: %s(RRt	fail_json(RR+R=t
err_string((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyR4mscCsQ|j�d}tjd�}|j|�}d}|rM|j�d}n|S(Ntsummarys!IPA server version (\d\.\d\.\d).*i(tpingtretcompiletmatchRtgroups(Rtresponset
ipa_ver_regext
version_matchtipa_version((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytget_ipa_versiontscCs|jdddd�S(NtmethodRBtname(t
_post_jsonR(R((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyRB}sc
Cs:|dkri}nd|j�}td|�}|dkrSgig|d<n2|dkrrg|g|d<n|g|g|d<ytd|jd|d	ttj|��d
|jd|j	d|j
�\}}|d
}|dkr|j||d�nWn-tk
r3}	|jd|t
|	��nXtrO|jjd�}
n'|jjd�}|rp|}
nd}
tjt|j�d|
��}|jd�}|dk	r�|jd||�nd|kr6|jd�}
d|
kr2|
jd�}
t|
t�r2t|
�dkr(|
dSiSq2n|
SdS(Ns%s/session/jsonRLRBtconfig_showRt
config_modRR(R)RRRR*i�i�i�R+spost %sslatin-1tcharsettencodingterrorsresponse %stresulti(spingRO(i�i�i�(RRR5RRRtjsontdumpsRRRR4RRRtget_content_charsettgetparamtloadsRtreadRt
isinstancetlisttlen(RRLRMtitemR(R)R:R;R<R=RQtresponse_charsetterrRT((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyRN�sJ	*$
	!
cCs�g}x�|j�D]�}|j|d�}t|t�rCg}nd}|j||�}t|t�r�t|t�r�|g}nt|t�r�t|t�r�t|�}t|�}n||kr|j|�qqW|S(N(tkeysRRR[R\tsortedtappend(Rtipa_datatmodule_dataRTtkeyt	mod_valuetdefaultt	ipa_value((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytget_diff�s	c	Cst}tt|�t|��}t|�dkr�t}|jjs�|ri|d|di||6�q|d|d|�q�ntt|�t|��}t|�dkr�t}|jjs�|r�|d|di||6�q�|d|d|�q�n|S(NiRMR^(RR\tsetR]R/Rt
check_mode(	RRMtipa_listtmodule_listt
add_methodt
remove_methodR^tchangedtdiff((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytmodify_if_diff�s N(
t__name__t
__module__RRR R#R4RKRBRRNRjRs(((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyR9s					$				0	cCstdtdddddddgdtd	gf�d
tdddddtdgf�d
tdddddtdgf�dtdddddtdgf�dtdddtdtdgf�dtdddddtdgf�dtdddt��S(Ntipa_protttypeR0RhthttpstchoicesthttptfallbacktIPA_PROTtipa_hostsipa.example.comtIPA_HOSTtipa_porttinti�tIPA_PORTtipa_usertadmintIPA_USERtipa_passtno_logtIPA_PASSRi
tIPA_TIMEOUTtvalidate_certstbool(R5RRR/(((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pytipa_argument_spec�s0$$$$$(RUR-R	R1RCtansible.module_utils._textRRRtansible.module_utils.sixRt+ansible.module_utils.six.moves.urllib.parseRtansible.module_utils.urlsRRtansible.module_utils.basicRRRtobjectRR�(((s</usr/lib/python2.7/site-packages/ansible/module_utils/ipa.pyt<module>s	�

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