ó 4ŽŢ]c @slddlZddlZddlZdZdZdddddd d d d g Zd ZddlZejedƒej eƒyej ede ddƒWnSe k rÉej eddddƒn*e k rňddlZeejd s tlayertmoduletnamet interfacetparamtsummaryttemplate(tostxml.etree.ElementTreeRR0R1tinterface_dicttNoneR Rtisfiletetreet ElementTreetparset fromstringR+tgett getiteratorRtfindttextR( RR9txmlR0R1tactive_modulest param_listRttreetlR/R'R&((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyR|sH       ( (cCsNt|ƒ}d|dj||dƒdj||djdƒƒf}|S(Ns %s(%s) %ss, it is (RtjoinR$(R5RRtinterface_text((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyRŽs >cCs`ddlm}g}xC||dD]3}|j|j|ƒd|dj|ƒf}q%W|S(Ni(t test_moduleis%s(%s) s, (t templatesRNRt dict_valuesRL(tinterfaces_dictR5RNt param_tmpR'RM((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyRľs t compiletestcCsIddlm}d}|tjd||jƒ7}|t||ƒ7}|S(Ni(RNRt TEMPLATETYPE(RORNR*tsubtte_test_moduleR(R5RR4RNtte((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pytgenerate_compile_teżs cCsČddl}ddl}|jj|ƒd}|jj|ƒjdƒd}y.|jd||d|jdtƒ}|SWnF|j k rĂ}t j j d ƒt j j |j ƒt jd ƒnXdS( s; Returns xml format of interfaces for given .if policy filei˙˙˙˙Nt/t.isDpython /usr/share/selinux/devel/include/support/segenxml.py -w -m %sRtshells- Could not proceed selected interface file. i(R9t subprocessRtdirnametbasenameR$t check_outputtSTDOUTtTruetCalledProcessErrorRRRtoutputR#(tif_fileR9R\tbasedirtfilenameRcR&((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyRČs    c Csđdddddg}dg}dg}ddl}ddl}id d 6d d 6d d6dd6}t|ƒ}||kpŁ|jdƒd|kpŁ||d|ksŇtd|ƒGHyĽt|d dƒ} | jt||ƒƒ| jƒy(|j d|d d|j dt ƒWnC|j k rX} t jjtdƒ|ƒt jj| jƒnXWn3tk r} t jjtdƒ|| fƒnXxYt|jƒƒD](} |jj| ƒrŁ|j| ƒqŁqŁWnt jjtd|ƒƒdS(Ntuserdomtkerneltcorenettfilestdevtselinux_genboolR8i˙˙˙˙scompiletest.pptppscompiletest.teRWscompiletest.fctfcscompiletest.iftifR iisCompiling %s interfacetws,make -f /usr/share/selinux/devel/Makefile %sRR[s Compile test for %s failed. s% Compile test for %s has not run. %s s, Compiling of %s interface is not supported.(R\R9RR$R topenRRXtcloseR_R`RaRbRRRctEnvironmentErrorRtvaluesRtexiststremove( R5Rtexclude_interfacestexclude_interface_nametexclude_interface_typeR\R9t policy_filesRtfdR&tv((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyRŮs4    " 9   $(R*RRtADMIN_TRANSITION_INTERFACER,t__all__tPROGNAMEtgettexttbindtextdomaint textdomaintinstallRat TypeErrorRtbuiltinsR t__dict__RRRRR<R;RRRRXRR(((s8/usr/lib64/python2.7/site-packages/sepolicy/interface.pyts>   !            2