+
    4Ssi`š  ã                   ó  € ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RIH	t	 ^ RI
Ht ^ RIHtHtHtHtHt ^ RIHtHtHt ]P,                  ! R4      t ! R R	]4      t ! R
 R]4      t ! R R]4      t ! R R]4      t ! R R]4      tR# )é    N)ÚLdb)Ú
ndr_unpack)Úsecurity)ÚSCOPE_SUBTREEÚSCOPE_ONELEVELÚ
SCOPE_BASEÚERR_NO_SUCH_OBJECTÚLdbError)ÚCommandÚCommandErrorÚOptionz^([^;]+);range=(\d+)-(\d+|\*)$c                   ó¤   a € ] tR t^+t o RRRRRRRR]P
                  ]P                  R3R ltR tR t	R	 t
R
 tR tR tR tR tR tR tRtV tR# )ÚLDAPBaseFÚsectionÚ ÚSUBTc                ó"  € . pTpR V9  d9   \         P                  P                  V4      '       d   RV,          pM	RV,          pVP                  4       P	                  R4      '       d   R.pWÀn        WÐn        \        VVVVR7      V n        W n	        W°n
        W@n        WPn        W`n        Wpn        W�n        W€n        Wn        Wàn        \'        V P                  P)                  4       4      V n        \'        V P                  P-                  4       4      V n        \'        V P                  P1                  4       4      V n        \'        V P                  P5                  4       4      V n        V P9                  4       V n        V P=                  4       V n        \@        PB                  ! RRV P*                  4      PE                  RR	4      V n#        V PI                  4       V n%        V PM                  4        V P                  '       Ed   V P                  '       gû   V P
                  PO                  R
V P"                  ,          4       V P
                  PO                  RRV P*                  ,          ,           4       V P
                  PO                  RRV P:                  ,          ,           4       V P
                  PO                  RRV P>                  ,          ,           4       V P
                  PO                  RRV PF                  ,          ,           4       R# R# R# )z://ztdb://%sz	ldap://%szldap://zmodules:paged_searches)ÚurlÚcredentialsÚlpÚoptionsz	[Dd][Cc]=r   Ú,Ú.z
* Place-holders for %s:
z${DOMAIN_DN}      => %s
z${DOMAIN_NETBIOS} => %s
z${SERVER_NAME}     => %s
z${DOMAIN_NAME}    => %s
Nú    )(ÚosÚpathÚisfileÚlowerÚ
startswithÚoutfÚerrfr   ÚldbÚsearch_baseÚsearch_scopeÚtwo_domainsÚquietÚ
descriptorÚ	sort_acesÚviewÚverboseÚhostÚskip_missing_dnÚstrÚget_default_basednÚbase_dnÚget_root_basednÚroot_dnÚget_config_basednÚ	config_dnÚget_schema_basednÚ	schema_dnÚfind_netbiosÚdomain_netbiosÚfind_serversÚserver_namesÚreÚsubÚreplaceÚdomain_nameÚfind_domain_sidÚ
domain_sidÚget_sid_mapÚwrite)Úselfr+   Úcredsr   Útwor&   r'   r(   r*   r)   ÚbaseÚscoper    r!   r,   Úldb_optionsÚ	samdb_urls   &&&&&&&&&&&&&&&  Ú6/usr/lib/python3/dist-packages/samba/netcmd/ldapcmp.pyÚ__init__ÚLDAPBase.__init__-   sT  € ð ˆØˆ	Ø˜ÔÜ�w‰w�~‰~˜d×#Ò#Ø&¨Õ-‘	à'¨$Õ.�	à�?‰?Ó×'Ñ'¨	×2Ò2Ø3Ð4ˆKØŒ	ØŒ	Ü˜9Ø#(ØØ*ô,ˆŒð  ÔØ!ÔØÔØŒ
Ø$ŒØ"ŒØŒ	ØŒØŒ	Ø.ÔÜ˜4Ÿ8™8×6Ñ6Ó8Ó9ˆŒÜ˜4Ÿ8™8×3Ñ3Ó5Ó6ˆŒÜ˜TŸX™X×7Ñ7Ó9Ó:ˆŒÜ˜TŸX™X×7Ñ7Ó9Ó:ˆŒØ"×/Ñ/Ó1ˆÔØ ×-Ñ-Ó/ˆÔÜŸ6š6 +¨r°4·<±<Ó@×HÑHÈÈcÓRˆÔØ×.Ñ.Ó0ˆŒØ×ÑÔð ××Ñ D§J§J JØ�I‰I�O‰OÐ9¸D¿I¹IÕEÔFØ�I‰I�O‰O˜GÐ&AØ ŸL™Lõ')õ )ô *à�I‰I�O‰O˜GÐ&AØ ×/Ñ/õ'0õ 0ô 1à�I‰I�O‰O˜GÐ&BØ ×-Ñ-õ'.õ .ô /à�I‰I�O‰O˜GÐ&AØ ×,Ñ,õ'-õ -ö .ñ %/Ñó    c                ó¸   € V P                   P                  V P                  R \        R7      p\	        \
        P                  V^ ,          R,          ^ ,          4      # )z(objectClass=*))rE   Ú
expressionrF   Ú	objectSid)r"   Úsearchr/   r   r   r   Údom_sid©rB   Úress   & rI   r>   ÚLDAPBase.find_domain_sidb   sA   € Ø�h‰h�o‰o 4§<¡<Ð<MÔU_ˆoÓ`ˆÜœ(×*Ñ*¨C°­F°;Õ,?ÀÕ,BÓCÐCrL   c                óì   € V P                   P                  RV P                  ,          \        RR.R7      p\	        V4      ^ 8”  g   Q hV Uu. uF  p\        VR,          ^ ,          4      NK  	  up# u upi )z	
        zOU=Domain Controllers,%sz(objectClass=computer)Úcn)rE   rF   rN   Úattrs)r"   rP   r/   r   Úlenr-   )rB   rS   Úxs   &  rI   r8   ÚLDAPBase.find_serversf   sh   € ð �h‰h�o‰oÐ#=ÀÇÁÕ#LÜ$1Ð>VÐ_cÐ^dð ó fˆä�3‹x˜!Œ|Ðˆ|Ù),Ó-© A”�A�d•G˜A•J–©Ñ-Ð-ùÒ-s   Á"A1c                ób  €  V P                   P                  R V P                  ,          \        R.R7      p\        X4      ^ 8X  d   \        R4      hV F*  pRV9   g   K  VR,          ^ ,          P                  4       u # 	  R#   \         d!   pTw  r4TR9   d   \        YB4      h Rp?LsRp?ii ; i)zCN=Partitions,%sÚnETBIOSName©rE   rF   rW   NzCould not find netbios name)z,Operation unavailable without authentication)r"   rP   r3   r   r
   r   rX   Údecode)rB   rS   ÚeÚenumÚestrrY   s   &     rI   r6   ÚLDAPBase.find_netbiosn   s©   € ð	,Ø—(‘(—/‘/Ð'9¸D¿N¹NÕ'JÜ(5¸m¸_ð "ó NˆCô ˆs‹8�qŒ=ÜÐ<Ó=Ð=ãˆAØ Ö!Ø˜Õ'¨Õ*×1Ñ1Ó3Ò3ó øô ô 	,Ø‰JˆDØÐGÔGÜ" 4Ó+Ð+ô Hûð	,ús   ‚4B ÂB.ÂB)Â)B.c                óÌ   € R p V P                   P                  V\        R7      p\        T4      ^8H  #   \         d&   pTP                  w  rET\
        8X  d    R p?R# h R p?ii ; i)N)rE   rF   F)r"   rP   r   r
   Úargsr	   rX   )rB   Ú	object_dnrS   Úe2r`   ra   s   &&    rI   Úobject_existsÚLDAPBase.object_exists~   s^   € Øˆð	Ø—(‘(—/‘/ y¼
�/ÓCˆCô �3‹x˜1‰}Ðøô ô 	ØŸ7™7‰LˆTØÔ)Ô)ÝØûð		ús   „!3 ³A#¾AÁAÁA#c                ó¨   €  V P                   P                  V4       R#   \        P                   d   pR \	        T4      9   g   Q h Rp?R# Rp?ii ; i)zNo such objectN)r"   Údeleter   r
   r-   )rB   re   r_   s   && rI   Údelete_forceÚLDAPBase.delete_force‰   s=   € ð	.Ø�H‰H�O‰O˜IÖ&øÜ�|‰|ô 	.Ø#¤s¨1£vÔ-Ð-Ö-ûð	.ús   ‚ ŸA´AÁAc                óZ   € \         P                  V4      pVf   V# VP                  ^4      # )zTReturns the real attribute name
It resolved ranged results e.g. member;range=0-1499
)ÚRE_RANGED_RESULTÚmatchÚgroup)rB   ÚkeyÚms   && rI   Úget_attribute_nameÚLDAPBase.get_attribute_name�   s,   € ô
 ×"Ñ" 3Ó'ˆØŠ9ØˆJà�w‰w�q‹zÐrL   c                óØ  € \         P                  V4      pVf   V# VP                  ^4      p\        VP                  ^4      4      p RWV^,           3,          pV P                  P                  V\        V.R7      p\        V4      ^8X  g   Q h\        V^ ,          4      pVR Rp	Rp
V FI  p\         P                  V4      pVf   K  VP                  ^4      V8w  d   K6  Tp	\        W‚,          4      p
 M	  V	f    V# VP                  V
4       V	P                  ^4      R8X  d    V# \        V	P                  ^4      4      V^,           8X  g   Q h\        V	P                  ^4      4      pEK%  )z[Returns list with all attribute values
It resolved ranged results e.g. member;range=0-1499
Nz%s;range=%d-*r]   ÚdnÚ*)rn   ro   rp   Úintr"   rP   r   rX   ÚdictÚlistÚextend)rB   re   rq   Úvalsrr   ÚattrÚhiÚnrS   ÚfmÚfvalss   &&&&       rI   Úget_attribute_valuesÚLDAPBase.get_attribute_valuesš   sM  € ô
 ×"Ñ" 3Ó'ˆØŠ9àˆKà�w‰w�q‹zˆÜ�—‘˜“‹_ˆð à 4¨a­ .Õ0ˆAØ—(‘(—/‘/ y¼
È1È#�/ÓNˆCÜ�s“8˜q”=Ð �=Ü�s˜1•v“,ˆCØ�D�	àˆBØˆEã�Ü$×*Ñ*¨3Ó/�à’9Ùà—7‘7˜1“: Ô%Ùà�Ü˜S�X›�Ùñ ð ŠzØð ˆð �K‰K˜ÔØ�x‰x˜‹{˜cÔ!àð
 ˆô �r—x‘x “{Ó# r¨A¥vÔ-Ð-Ð-Ü�R—X‘X˜a“[Ó!‹BrL   c                ó0  € V P                   P                  V\        R.R7      p\        V4      ^8X  g   Q h\	        V^ ,          4      pVR / pVP                  4        F5  w  rEV P                  V4      p\        V4      pV P                  WV4      W6&   K7  	  V# )z9Returns dict with all default visible attributes
        rw   r]   rv   )	r"   rP   r   rX   ry   Úitemsrs   Úsortedr‚   )rB   re   rS   Ú
attributesrq   r|   Únames   &&     rI   Úget_attributesÚLDAPBase.get_attributesÎ   s�   € ð �h‰h�o‰o 9´JÀsÀeˆoÓLˆÜ�3‹x˜1Œ}Ðˆ}Ü�3�q•6‹lˆà�ˆIàˆ
ØŸ™ž‰IˆCØ×*Ñ*¨3Ó/ˆDä˜$“<ˆDØ#×8Ñ8¸ÈÓNˆJÓñ	 %ð ÐrL   c                óà   € V P                   P                  V\        R .R7      pV^ ,          R ,          ^ ,          p\        \        P
                  V4      pVP                  V P                  4      # )ÚnTSecurityDescriptorr]   )r"   rP   r   r   r   r'   Úas_sddlr?   )rB   re   rS   Údescs   &&  rI   Úget_descriptor_sddlÚLDAPBase.get_descriptor_sddlà   sW   € Ø�h‰h�o‰o 9´JÐG]ÐF^ˆoÓ_ˆØ�1�vÐ,Õ-¨aÕ0ˆÜœ(×-Ñ-¨tÓ4ˆØ�|‰|˜DŸO™OÓ,Ð,rL   c           	     óP  € / V n         V P                  P                  V P                  R\        RR.R7      pV FW  p \        VR,          ^ ,          4      V P                   R\        \        P                  VR,          ^ ,          4      ,          &   KY  	  R#   \         d     Kk  i ; i)z`Build dictionary that maps GUID to 'name' attribute found in Schema or Extended-Rights.
        z(objectSid=*)rO   ÚsAMAccountName)rE   rN   rF   rW   ú%sN)
Úsid_mapr"   rP   r/   r   r-   r   r   rQ   ÚKeyError)rB   rS   Úitems   &  rI   r@   ÚLDAPBase.get_sid_mapæ   s—   € ð ˆŒØ�h‰h�o‰o 4§<¡<Ø)8ÄÐVaÐcsÐUtð ó vˆãˆDðÜZ]Ð^bÐcsÕ^tÐuvÕ^wÓZx�—‘˜T¤J¬x×/?Ñ/?ÀÀkÕARÐSTÕAUÓ$VÕVÓWó øô ô Úðús   ½ABÂB%Â$B%)r/   r3   r'   r=   r7   r?   r!   r+   r"   r    r&   r1   r5   r#   r$   r9   r”   r,   r(   r%   r*   r)   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚsysÚstdoutÚstderrrJ   r>   r8   r6   rg   rk   rs   r‚   r‰   r�   r@   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @rI   r   r   +   sh   ø‡ € ð  %°EÀUÐTYØ b°Ø—j‘j s§z¡zÀ4ô3.òjDò.ò4ò 	ò.ò	ò2òhò$-÷
ð 
rL   r   c                   ón   a € ] tR t^ót o ]P
                  ]P                  3R ltR tR t	R t
R tRtV tR# )Ú
Descriptorc                ó$  € W0n         W@n        Wn        W n        V P                  P	                  V P                  4      V n        V P                  4       V n        V P                  P                  '       d   V P                  P                  4        R # R # ©N)
r    r!   Úconrv   r�   ÚsddlÚextract_daclÚ	dacl_listr(   Úsort)rB   Ú
connectionrv   r    r!   s   &&&&&rI   rJ   ÚDescriptor.__init__ô   se   € ØŒ	ØŒ	ØŒØŒØ—H‘H×0Ñ0°·±Ó9ˆŒ	Ø×*Ñ*Ó,ˆŒØ�8‰8××ÐØ�N‰N×ÑÖ!ñ rL   c                ó>  €  RV P                   9   d2   \        P                  ! RV P                   4      P                  ^4      pM1\        P                  ! RV P                   4      P                  ^4      p \        P
                  ! RV4      #   \         d    . u # i ; i)zGExtracts the DACL as a list of ACE string (with the brackets).
        zS:zD:(.*?)(\(.*?\))S:zD:(.*?)(\(.*\))z	(\(.*?\)))r¨   r:   rP   rp   ÚAttributeErrorÚfindallrR   s   & rI   r©   ÚDescriptor.extract_daclþ   s|   € ð	Ø�t—y‘yÔ Ü—i’iÐ 5°t·y±yÓA×GÑGÈÓJ‘ä—i’iÐ 2°D·I±IÓ>×DÑDÀQÓG‘ô �zŠz˜,¨Ó,Ð,øô ô 	ØŠIð	ús   ‚AB Á0B ÂBÂBc                óþ   € R V,          p\         P                  ! RV4      p\        V4      ^ 8X  d   V# V F2  p V P                  P                  V,          pVP                  WE4      pK4  	  V#   \         d     KF  i ; i)r“   z	S-[-0-9]+)r:   r°   rX   r§   r”   r<   r•   )rB   ÚacerS   ÚsidsÚsidrˆ   s   &&    rI   Úfix_sidÚDescriptor.fix_sid
  sw   € Ø�S�jˆÜ�zŠz˜+ sÓ+ˆäˆt‹9˜Œ>ØˆJÛˆCðØ—x‘x×'Ñ'¨Õ,�Ø—k‘k #Ó,’ñ ð ˆ
øô ô âðús   ¹.A-Á-A<Á;A<c                óø  € R p\        V P                  4      \        VP                  4      8w  d^   VR
,          pVRR\        V P                  4      ,          ,           ,          pVRR\        VP                  4      ,          ,           ,          p^ pRp RpRp RV P                  V,          ,          p RVP                  V,          ,          p\        V4      \        V4      ,           ^ 8X  d    WB3# RV P                  V4      ,          pRVP                  V4      ,          pWx8w  d   W':R RV: R2,          pRpMW':R R	V: R2,          pV^,          pKÅ    \         d    R p L´i ; i  \         d    R p L¬i ; i)r   ú=> %s
TNr“   z>60z * Ú
Fz | ú    Difference in ACE count:
ú        )rX   rª   Ú
IndexErrorr¶   )	rB   ÚotherrS   ÚiÚflagÚself_aceÚ	other_aceÚself_ace_fixedÚother_ace_fixeds	   &&       rI   Údiff_1ÚDescriptor.diff_1  sV  € ØˆÜˆt�~‰~Ó¤# e§o¡oÓ"6Ô6ØÐ9Õ9ˆCØ�7˜Y¬¨T¯^©^Ó)<Õ<Õ<Õ<ˆCØ�7˜Y¬¨U¯_©_Ó)=Õ=Õ=Õ=ˆCàˆØˆØØˆHØˆIðØ $§.¡.°Õ"3Õ3�ðØ  5§?¡?°1Õ#5Õ5�	ô �8‹}œs 9›~Õ-°Ô2Øð ˆ{Ðð " D§L¡L°Ó$:Õ:ˆNØ" U§]¡]°9Ó%=Õ=ˆOØÔ0Ø«»ÐHÕH�Ø‘à«»ÐHÕH�Ø��FŠAøô! ô Ø’ðûô
 ô Ø’	ðús$   ÂE Â2E) ÅE&Å%E&Å)E9Å8E9c                ó¢  € R p\        V P                  4      \        VP                  4      8w  d^   VR,          pVRR\        V P                  4      ,          ,           ,          pVRR\        VP                  4      ,          ,           ,          p. p. p. pV P                   Uu. uF  q`P                  V4      NK  	  ppVP                   Uu. uF  qaP                  V4      NK  	  ppV F&  p VP                  V4       VP	                  V4       K(  	  \        V4      p\        V4      ^ 8”  dL   VRRV P                  P                  ,          ,           ,          pV F  pVRV,           R,           ,          pK  	  V F&  p VP                  V4       VP	                  V4       K(  	  \        V4      p\        V4      ^ 8”  dL   VRRVP                  P                  ,          ,           ,          pV F  pVRV,           R,           ,          pK  	  \        \        \        V4      4      4      pV P                  P                  '       d*   VR,          pV F  pVRV,           R,           ,          pK  	  V. 8H  ;'       d    V. 8H  V3# u upi u upi   \
         d    TP	                  T4        EKÂ  i ; i  \
         d    TP	                  T4        EKT  i ; i)r   r¹   zACEs found only in %s:
rº   r   r»   r¼   z    ACEs found in both:
)rX   rª   r¶   ÚindexÚappendÚ
ValueErrorr†   r§   r+   rz   Úsetr*   )	rB   r¾   rS   Úcommon_acesÚ	self_acesÚ
other_acesr³   Úself_dacl_list_fixedÚother_dacl_list_fixeds	   &&       rI   Údiff_2ÚDescriptor.diff_2:  sl  € ØˆÜˆt�~‰~Ó¤# e§o¡oÓ"6Ô6ØÐ9Õ9ˆCØ�7˜Y¬¨T¯^©^Ó)<Õ<Õ<Õ<ˆCØ�7˜Y¬¨U¯_©_Ó)=Õ=Õ=Õ=ˆCàˆØˆ	Øˆ
Ø=A¿^º^ÓL¹^°c§¡¨SÖ 1¹^ÐÐLØ?D¿ºÓ O¹¸§¡¨sÖ!3¹ÐÐ OÛ'ˆCð(Ø%×+Ñ+¨CÔ0ð ×"Ñ" 3Ö'ñ (ô ˜9Ó%ˆ	Üˆy‹>˜AÔØ�7Ð7¸$¿(¹(¿-¹-ÕGÕGÕGˆCÛ �Ø�w •} tÕ+Õ+’ñ !ó )ˆCð(Ø$×*Ñ*¨3Ô/ð ×"Ñ" 3Ö'ñ )ô ˜JÓ'ˆ
Üˆz‹?˜QÔØ�7Ð7¸%¿)¹)¿.¹.ÕHÕHÕHˆCÛ!�Ø�w •} tÕ+Õ+’ñ "ô œT¤# kÓ"2Ó3Ó4ˆØ�8‰8××ÐØÐ4Õ4ˆCÛ"�Ø�w •} tÕ+Õ+’ñ #à˜R‘×4Ð4 J°"Ñ$4°cÐ:Ð:ùòC  MùÚ Oøô ô &Ø× Ñ  ×%Ð%ð&ûô ô 'Ø×!Ñ! #×&Ð&ð'ús0   Â!I?Ã
JÃ+J	Å=J-Ê	J*Ê)J*Ê-KËK)r§   rª   rv   r!   r    r¨   N)r˜   r™   rš   r›   rœ   r�   rž   rJ   r©   r¶   rÅ   rÑ   rŸ   r    r¡   s   @rI   r¤   r¤   ó   s1   ø‡ € Ø,/¯J©J¸S¿Z¹Zô "ò
-òò÷B+;ð +;rL   r¤   c                   ó†   a € ] tR tRt o ]P
                  ]P                  3R ltR tR t	R t
R tR tR tR	 tR
 tRtV tR# )Ú
LDAPObjectih  c                ó<  € WPn         W`n        Wn        V P                  P                  V n        V P                  P                  V n        V P                  P
                  V n        W0n        VP                  R V P                  P                  4      V n	        V P                  P                  RRV P                  P                  ,          4      V n	        V P                  P                   F+  pV P                  P                  RRV,          4      V n	        K-  	  V P                  P                  V P                  4      V n        . RNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NV n        V P                  V n        V ;P                  R$.,          un        V'       d   V ;P                  V,          un        . V n        . V n        . V n        . V n        . V n        V P                  '       Ed¿   V ;P                  . R%NR&NR'NR(NR#NR)NR!NR*NR
NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NRNR5NR6NR7NR8NR9NRNR:NR;NR<NR=NR>NR?NR@NRANRBNRCN,          un        . RDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR^NR_NR`NRaNRbNRcNRdNReNRfNRgNRhNRiNV n        V P                    Uu. uF  qwP+                  4       NK  	  upV n        . RmOV n        V P"                   Uu. uF  qwP+                  4       NK  	  upV n        . RnOV n        V P$                   Uu. uF  qwP+                  4       NK  	  upV n        . RoOV n        V P&                   Uu. uF  qwP+                  4       NK  	  upV n        RjRk.V n        V P(                   Uu. uF  qwP+                  4       NK  	  upV n        \-        V P                   Uu. uF  qwP+                  4       NK  	  up4      V n        Rl# u upi u upi u upi u upi u upi u upi )pú${DOMAIN_DN}úCN=${DOMAIN_NETBIOS}úCN=%súCN=${SERVER_NAME}ÚbadPasswordTimeÚbadPwdCountÚdSCorePropagationDataÚ
lastLogoffÚ	lastLogonÚ
logonCountÚmodifiedCountzmsDS-Cached-Membershipz!msDS-Cached-Membership-Time-StampzmsDS-EnabledFeatureBLzmsDS-ExecuteScriptPasswordzmsDS-NcTypezmsDS-ReplicationEpochzmsDS-RetiredReplNCSignatureszmsDS-USNLastSyncSuccessÚpartialAttributeDeletionListÚpartialAttributeSetÚpekListÚ	prefixMapÚreplPropertyMetaDataÚreplUpToDateVectorÚrepsFromÚrepsToÚ
rIDNextRIDÚrIDPreviousAllocationPoolÚschemaUpdateÚserverStateÚsubRefsÚ
uSNChangedÚ
uSNCreatedÚuSNLastObjRemÚwhenChangedÚmsExchServer1HighestUSNÚobjectCategoryÚ
objectGUIDrO   ÚwhenCreatedÚ
pwdLastSetÚcreationTimeÚpriorSetTimeÚrIDManagerReferenceÚgPLinkÚipsecNFAReferenceÚfRSPrimaryMemberÚfSMORoleOwnerÚ
masteredByÚipsecOwnersReferenceÚwellKnownObjectsÚotherWellKnownObjectsÚipsecISAKMPReferenceÚipsecFilterReferencezmsDs-masteredByÚlastSetTimeÚipsecNegotiationPolicyReferenceÚgPCFileSysPathÚaccountExpiresÚinvocationIdÚoperatingSystemÚoperatingSystemVersionÚoEMInformationÚ
schemaInfoÚtargetAddressÚmsExchMailboxGuidÚsiteFolderGUIDÚdistinguishedNameÚdefaultObjectCategoryÚmemberÚmemberOfÚsiteListÚnCNameÚhomeMDBÚhomeMTAÚinterSiteTopologyGeneratorÚserverReferencezmsDS-HasInstantiatedNCsÚhasMasterNCszmsDS-hasMasterNCszmsDS-HasDomainNCsÚdMDLocationúmsDS-IsDomainForÚrIDSetReferencesÚserverReferenceBLÚmsExchHomeRoutingGroupÚmsExchResponsibleMTAServerÚsiteFolderServerÚmsExchRoutingMasterDNÚmsExchRoutingGroupMembersBLÚ	homeMDBBLÚmsExchHomePublicMDBÚmsExchOwningServerÚtemplateRootsÚaddressBookRootsÚmsExchPolicyRootsÚglobalAddressListÚmsExchOwningPFTreeÚmsExchResponsibleMTAServerBLÚmsExchOwningPFTreeBLz$msDS-MembersOfResourcePropertyListBLzmsDS-ValueTypeReferencez"msDS-MembersOfResourcePropertyListzmsDS-ValueTypeReferenceBLzmsDS-ClaimTypeAppliesToClassrˆ   ÚDCN)ÚproxyAddressesÚmailÚuserPrincipalNameÚ"msExchSmtpFullyQualifiedDomainNameÚdnsHostNameÚnetworkAddressÚdnsRootÚservicePrincipalName)r  rˆ   ÚCNr’   ÚdNSHostNamer6  r  r  r  r  r  )r6  r7  r  r\   rˆ   )r    r!   r§   r%   r&   r*   Úsummaryr<   r/   rv   r7   r9   r‰   r‡   Únon_replicated_attributesÚignore_attributesÚdn_attributesÚdomain_attributesÚservername_attributesÚnetbios_attributesÚother_attributesÚupperrË   )rB   r¬   rv   r9  Úfilter_listr    r!   rY   s   &&&&&&& rI   rJ   ÚLDAPObject.__init__i  sÙ  € àŒ	ØŒ	ØŒØŸ8™8×/Ñ/ˆÔØ—X‘X—^‘^ˆŒ
Ø—x‘x×'Ñ'ˆŒØŒØ—*‘*˜^¨T¯X©X×-=Ñ-=Ó>ˆŒØ—'‘'—/‘/Ð"8¸'ÀDÇHÁH×D[ÑD[Õ:[Ó\ˆŒØ—‘×&Ô&ˆAØ—g‘g—o‘oÐ&9¸7ÀQ½;ÓGˆDŽGñ 'àŸ(™(×1Ñ1°$·'±'Ó:ˆŒð#*
Ø!ð#*
àð#*
ð (ð#*
ð ð	#*
ð
 ð#*
ð ð#*
ð  ð#*
ð )ð#*
ð 4ð#*
ð (ð#*
ð -ð#*
ð ð#*
ð (ð#*
ð /ð#*
ð *ð#*
ð$ /ð%#*
ð& &ð'#*
ð( ð)#*
ð* ð+#*
ð, 'ð-#*
ð. %ð/#*
ð0 ð1#*
ð2 ð3#*
ð4 ð5#*
ð6 ,ð7#*
ð8 ð9#*
ð: ð;#*
ð< ð=#*
ð> ð?#*
ð@ ðA#*
ðB  ðC#*
ðD ðE#*
ˆÔ&ðH "&×!?Ñ!?ˆÔØ×ÒÐ#<Ð"=Õ=ÕßØ×"Ò" kÕ1Õ"àˆÔØ!#ˆÔØ%'ˆÔ"Ø"$ˆÔØ "ˆÔð ××ÑØ×"Ò"ð 'HØ ð'HØ".ð'HØ0;ð'HØ=Jð'Hàð'Hà+ð'Hà-9ð'Hà;Ið'Hð  ð'Hð "0ð'Hð 2Gð'Hð ð	'Hð .ð	'Hð 0Bð	'Hð
  ð'Hð
 ".ð'Hð
 0Fð'Hð #ð'Hð %<ð'Hð >Kð'Hð 'ð'Hð )?ð'Hð "ð'Hð $1ð'Hð 2ð'Hð 4=ð'Hð ?Oð'Hð !ð'Hð #1ð'Hð "ð'Hð $<ð'Hð !ð'Hð #/ð'Hð  ð'Hð "5ð'Hð 7Gð'Hõ HÕ"ð""Ø#ð"Ø%<ð"Ø>Fð"ØHRð"ØT^ð"Ø`hð"àð"à$ð"à&Bð"àDUð"ð *ð"ð ,:ð"ð <Oð"ð Qdð"ð fsð"ð #ð	"ð %7ð	"ð 9Lð	"ð )ð"ð +Gð"ð I[ð"ð ]tð"ð .ð"ð 0;ð"ð =Rð"ð Thð"ð jyð"ð #ð"ð %8ð"ð :Mð"ð Ocð"ð /ð"ð 1Gð"ð 7ð"ð *ð"ð 5ð"ð ,ð"ð /ð"ˆDÔð" 6:×5GÒ5GÓ!HÑ5G°§'¡'¦)Ñ5GÑ!HˆDÔò&VˆDÔ"ð :>×9OÒ9OÓ%PÑ9O°A§g¡g¦iÑ9OÑ%PˆDÔ"ò*^ˆDÔ&ð >B×=WÒ=WÓ)XÑ=W¸¯'©'®)Ñ=WÑ)XˆDÔ&â&rˆDÔ#Ø:>×:QÒ:QÓ&RÑ:Q°Q§w¡w¦yÑ:QÑ&RˆDÔ#à%+¨TÐ$4ˆDÔ!Ø8<×8MÒ8MÓ$NÑ8M°1§W¡W¦YÑ8MÑ$NˆDÔ!ä!$¸×9OÒ9OÓ%PÑ9O°A§g¡g¦iÑ9OÑ%PÓ!QˆÖùò) "Iùò &Qùò *Yùò 'Sùò %Oùâ%Ps$   ËP ÌPÌ9P
Í0PÎ'PÏPc                ór   € V P                   '       g%   V P                  P                  VR,           4       R# R# ©z5
Log on the screen if there is no --quiet option set
rº   N©r&   r    rA   ©rB   Úmsgs   &&rI   ÚlogÚLDAPObject.logê  s&   € ð �z�zˆzØ�I‰I�O‰O˜C �IÖ&ñ rL   c                ó@  € R V,          pV P                   '       g   V# VP                  4       P                  V P                  P                  P                  4       4      '       d:   VR\        V4      \        V P                  P                  4      ,
           R,           pV# )r“   NrÖ   )r%   rA  Úendswithr§   r/   rX   ©rB   ÚsrS   s   && rI   Úfix_dnÚLDAPObject.fix_dnñ  su   € Ø�Q�hˆØ××ÐØˆJØ�9‰9‹;×Ñ §¡× 0Ñ 0× 6Ñ 6Ó 8×9Ò9ØÐ7”s˜3“x¤# d§h¡h×&6Ñ&6Ó"7Õ7Ð8¸>ÕIˆCØˆ
rL   c                óT  € R V,          pV P                   '       g   V# VP                  V P                  P                  P	                  4       V P                  P                  P                  4       4      pVP                  V P                  P                  P                  4       R4      pV# )r“   z${DOMAIN_NAME})r%   r<   r§   r=   r   rA  rM  s   && rI   Úfix_domain_nameÚLDAPObject.fix_domain_nameù  s{   € Ø�Q�hˆØ××ÐØˆJØ�k‰k˜$Ÿ(™(×.Ñ.×4Ñ4Ó6¸¿¹×8LÑ8L×8RÑ8RÓ8TÓUˆØ�k‰k˜$Ÿ(™(×.Ñ.×4Ñ4Ó6Ð8HÓIˆØˆ
rL   c                óT  € R V,          pV P                   '       g   V# VP                  V P                  P                  P	                  4       V P                  P                  P                  4       4      pVP                  V P                  P                  P                  4       R4      pV# )r“   z${DOMAIN_NETBIOS})r%   r<   r§   r7   r   rA  rM  s   && rI   Úfix_domain_netbiosÚLDAPObject.fix_domain_netbios  s{   € Ø�Q�hˆØ××ÐØˆJØ�k‰k˜$Ÿ(™(×1Ñ1×7Ñ7Ó9¸4¿8¹8×;RÑ;R×;XÑ;XÓ;ZÓ[ˆØ�k‰k˜$Ÿ(™(×1Ñ1×7Ñ7Ó9Ð;NÓOˆØˆ
rL   c                ó  € R V,          pV P                   '       d%   \        V P                  P                  4      ^8”  d   V# V P                  P                   F#  pVP	                  4       P                  VR4      pK%  	  V# )r“   z${SERVER_NAME})r%   rX   r§   r9   rA  r<   )rB   rN  rS   rY   s   &&  rI   Úfix_server_nameÚLDAPObject.fix_server_name	  sd   € Ø�Q�hˆØ××Ð¤3 t§x¡x×'<Ñ'<Ó#=ÀÔ#AØˆJØ—‘×&Ô&ˆAØ—)‘)“+×%Ñ% aÐ)9Ó:ŠCñ 'àˆ
rL   c                ó~   € V P                   P                  '       d   V P                  V4      # V P                  V4      # r¦   )r§   r'   Úcmp_descÚ	cmp_attrs)rB   r¾   s   &&rI   Ú__eq__ÚLDAPObject.__eq__  s0   € Ø�8‰8××ÐØ—=‘= Ó'Ð'Ø�~‰~˜eÓ$Ð$rL   c                ó   € \        V P                  V P                  V P                  V P                  R 7      p\        VP                  VP                  V P                  V P                  R 7      pV P                  P
                  R8X  d   VP                  V4      pMOV P                  P
                  R8X  d   VP                  V4      pM"\        RV P                  P
                   24      hV^,          V n	        V^,          Vn	        V^ ,          # ))r    r!   r   Ú	collisionzUnknown --view option value: )
r¤   r§   rv   r    r!   r)   rÑ   rÅ   rÊ   Úscreen_output)rB   r¾   Úd1Úd2rS   s   &&   rI   r[  ÚLDAPObject.cmp_desc  s¸   € Ü˜Ÿ™ $§'¡'°·	±	ÀÇ	Á	ÔJˆÜ˜Ÿ	™	 5§8¡8°$·)±)À$Ç)Á)ÔLˆØ�8‰8�=‰=˜IÔ%Ø—)‘)˜B“-‰CØ�X‰X�]‰]˜kÔ)Ø—)‘)˜B“-‰CäÐ<¸T¿X¹X¿]¹]¸OÐLÓMÐMà  �VˆÔØ! !�fˆÔà�1�vˆrL   c                óx  € R p. V n         \        V P                   Uu. uF  q3P                  4       NK  	  up4      p\        VP                   Uu. uF  q3P                  4       NK  	  up4      pWE,
          VP                  ,
          pV'       dL   VRRV P
                  P                  ,          ,           ,          pV F  pVR	V,           R,           ,          pK  	  WT,
          V P                  ,
          pV'       dL   VRRVP
                  P                  ,          ,           ,          pV F  pVR	V,           R,           ,          pK  	  Wh,          p	R
p
V P                   EFÜ  pVP                  4       V P                  9   g   VP                  4       V	9   d   K:  V P                  V,          pVP                  P                  V4      p\        V\        4      '       d-   \        V\        4      '       d   \        V4      p\        V4      pW¼8w  g   K²  RpRpRpRpVP                  4       V P                  9   d‡   V Uu. uF2  pV P
                  P                  P                  R4      ^ ,          V8H  NK4  	  ppV Uu. uF2  pVP
                  P                  P                  R4      ^ ,          V8H  NK4  	  ppWÞ8X  d   EK^  MlVP                  4       V P                  9   dN   TpTpV Uu. uF  pV P                  V4      NK  	  ppV Uu. uF  pVP                  V4      NK  	  ppWÞ8X  d   EKË  VP                  4       V P                   9   db   TpTpV'       g   V'       g   TpTpV Uu. uF  pV P#                  V4      NK  	  ppV Uu. uF  pVP#                  V4      NK  	  ppWÞ8X  d   EKK  VP                  4       V P$                  9   db   TpTpV'       g   V'       g   TpTpV Uu. uF  pV P'                  V4      NK  	  ppV Uu. uF  pVP'                  V4      NK  	  ppWÞ8X  d   EKË  VP                  4       V P(                  9   db   TpTpV'       g   V'       g   TpTpV Uu. uF  pV P+                  V4      NK  	  ppV Uu. uF  pVP+                  V4      NK  	  ppWÞ8X  d   EKK  V
'       d   W*R,           ,          pRp
V'       d0   V'       d(   VR	V,           RV: RV: 2,           R,           ,          pM&VR	V,           RV: RV: 2,           R,           ,          pV P                   P-                  V4       EKß  	  V	'       d	   Wh8w  g   Q hV P.                  R;;,          \        V4      ,          uu&   V P.                  R;;,          V P                   ,          uu&   VP.                  R;;,          \        V4      ,          uu&   VP.                  R;;,          V P                   ,          uu&   W n        W!n        VR 8H  # u upi u upi u upi u upi u upi u upi u upi u upi u upi u upi u upi u upi )r   zAttributes found only in %s:rº   Nr   z => 
Úunique_attrsÚdf_value_attrsr   r¼   z#    Difference in attribute values:)rg  rË   r‡   rA  r;  r§   r+   ÚgetÚ
isinstancerz   r†   r@  r=   Úsplitr<  rO  r=  rR  r>  rX  r?  rU  rÉ   r9  ra  )rB   r¾   rS   r}   Ú
self_attrsÚother_attrsÚself_unique_attrsrY   Úother_unique_attrsÚmissing_attrsÚtitleÚoursÚtheirsÚpÚqrr   r   Újs   &&                rI   r\  ÚLDAPObject.cmp_attrs%  s  € ØˆØ ˆÔä°4·?²?ÓC±?¨4Ÿ*™*ž,±?ÑCÓDˆ
Ü°E×4DÒ4DÓEÑ4D¨DŸ:™:ž<Ñ4DÑEÓFˆà&Õ4°u×7NÑ7NÕNÐßØ�7Ð;¸d¿h¹h¿m¹mÕKÕKÕKˆCÛ&�Ø�w •{ TÕ)Õ)’ñ 'ð )Õ5¸×8NÑ8NÕNÐßØ�7Ð;¸e¿i¹i¿n¹nÕLÕLÕLˆCÛ'�Ø�w •{ TÕ)Õ)’ñ (ð *Õ>ˆØ;ˆØ—•ˆAØ�w‰w‹y˜D×2Ñ2Ô2°a·g±g³iÀ=Ô6PÙØ—?‘? 1Õ%ˆDØ×%Ñ%×)Ñ)¨!Ó,ˆFä˜$¤×%Ò%¬*°V¼T×*BÒ*BÜ˜d“|�Ü ›�àŽ~Ø�Ø�Ø�Ø�ð —7‘7“9 × 5Ñ 5Ô5ÙJNÓOÉ$ÀQ˜Ÿ™×-Ñ-×3Ñ3°CÓ8¸Õ;¸qÔ@É$�AÐOÙKQÓRÉ6Àa˜Ÿ™×.Ñ.×4Ñ4°SÓ9¸!Õ<ÀÔAÉ6�AÐRØ”vÚ ð ð —W‘W“Y $×"4Ñ"4Ô4Ø�AØ�AÙ12Ó3±¨A˜Ÿ™ Qž±�AÐ3Ù23Ó4±!¨Q˜Ÿ™ až±!�AÐ4Ø”vÚ à—7‘7“9 × 6Ñ 6Ô6Ø�AØ�Aß§QØ ˜Ø"˜Ù:;Ó<¹!°Q˜×-Ñ-¨aÖ0¹!�AÐ<Ù;<Ó=¹1°a˜×.Ñ.¨qÖ1¹1�AÐ=Ø”vÚ à—7‘7“9 × :Ñ :Ô:à�AØ�Aß§QØ ˜Ø"˜Ù:;Ó<¹!°Q˜×-Ñ-¨aÖ0¹!�AÐ<Ù;<Ó=¹1°a˜×.Ñ.¨qÖ1¹1�AÐ=Ø”vÚ à—7‘7“9 × 7Ñ 7Ô7à�AØ�Aß§QØ ˜Ø"˜Ù=>Ó?¹Q¸˜×0Ñ0°Ö3¹Q�AÐ?Ù>?Ó@¹a¸˜×1Ñ1°!Ö4¹a�AÐ@Ø”vÚ çØ 4�<Õ'�CØ �EßŸØ˜7 Qž;»1ºaÐ)@Õ@À4ÕGÕG‘Cà˜7 Qž;»4ÂÐ)HÕHÈ4ÕOÕO�CØ×#Ñ#×*Ñ*¨1×-ñS !÷V Ø$Ô:Ð:Ð:Ø�‰�^×$¬Ð->Ó(?Õ?Ó$Ø�‰Ð%×&¨$×*=Ñ*=Õ=Ó&Ø�‰�n×%¬Ð.@Ó)AÕAÓ%Ø�‰Ð&×'¨4×+>Ñ+>Õ>Ó'à ÔØ!Ôà�b‰yÐùòM DùÚEùòD PùÚRùò 4ùÚ4ùò =ùÚ=ùò =ùÚ=ùò @ùÚ@sG   �X ÁXÈ98X
É78XË"XÌXÍ"XÎX#Ï"X(ÐX-Ñ"X2ÒX7)r‡   r§   rg  rv   r<  r=  r!   r;  r?  r:  r@  r    r&   ra  r>  r9  r%   r*   N)r˜   r™   rš   r›   rœ   r�   rž   rJ   rI  rO  rR  rU  rX  r]  r[  r\  rŸ   r    r¡   s   @rI   rÔ   rÔ   h  sI   ø‡ € à—j‘j s§z¡zôRòB'òòòòò%ò
÷jð jrL   rÔ   c                   óx   a € ] tR tRt o RR]P
                  ]P                  3R ltR tR t	R t
R tR tR	tV tR# )
Ú
LDAPBundlei’  Nc                óœ  € WPn         W`n        Wn        V P                  P                  V n        V P                  P                  V n        V P                  P
                  V n        V P                  P                  V n        V P                  P                  V n        V P                  P                  V n        / V n	        . V P                  R &   . V P                  R&   . V P                  R&   . V P                  R&   W@n
        V'       d   W0n        MLVP                  4       R
9   d-   VP                  4       V n        V P                  V4      V n        M\        R4      h^ pV\!        V P                  4      8  Ed    V P                  '       dî   V P                  V,          pVR\!        V4      \!        V P                  P"                  4      ,
           R,           pVP%                  RV P                  P&                  ,          R4      p\!        V P                  P(                  4      ^8X  d7   V P                  P(                   F  p	VP%                  RV	,          R	4      pK  	  W€P                  V&   V^,          pEK  \+        \-        V P                  4      4      V n        \/        V P                  4      V n        \!        V P                  4      V n        R# )rf  rg  Úknown_ignored_dnÚabnormal_ignored_dnz-Unknown initialization data for LDAPBundle().NrÖ   rØ   r×   rÙ   ©ÚDOMAINÚCONFIGURATIONÚSCHEMAÚ	DNSDOMAINÚ	DNSFOREST)r    r!   r§   r%   r&   r*   r#   r$   r,   r9  rB  Údn_listrA  ÚcontextÚget_dn_listÚ	ExceptionrX   r/   r<   r7   r9   rz   rË   r†   Úsize)
rB   r¬   rƒ  r‚  rB  r    r!   ÚcounterÚtmprY   s
   &&&&&&&   rI   rJ   ÚLDAPBundle.__init__”  s  € àŒ	ØŒ	ØŒØŸ8™8×/Ñ/ˆÔØ—X‘X—^‘^ˆŒ
Ø—x‘x×'Ñ'ˆŒØŸ8™8×/Ñ/ˆÔØ ŸH™H×1Ñ1ˆÔØ#Ÿx™x×7Ñ7ˆÔØˆŒØ')ˆ�‰�^Ñ$Ø)+ˆ�‰Ð%Ñ&Ø+-ˆ�‰Ð'Ñ(Ø.0ˆ�‰Ð*Ñ+Ø&ÔßØ"�LØ�]‰]‹_Ð _Ô_Ø"Ÿ=™=›?ˆDŒLØ×+Ñ+¨GÓ4ˆD�LäÐKÓLÐLØˆØœ˜DŸL™LÓ)Õ)¨d×.>×.>Ð.>à—,‘,˜wÕ'ˆCØÐ7”s˜3“x¤# d§h¡h×&6Ñ&6Ó"7Õ7Ð8¸>ÕIˆCØ—+‘+˜g¨¯©×(?Ñ(?Õ?ÐAWÓXˆCÜ�4—8‘8×(Ñ(Ó)¨QÔ.ØŸ™×.Ô.�AØŸ+™+ g°¥kÐ3FÓG’Cñ /à$'�L‰L˜Ñ!Ø�q�L‹GÜœC §¡Ó-Ó.ˆŒÜ˜dŸl™lÓ+ˆŒÜ˜Ÿ™Ó%ˆŽ	rL   c                ór   € V P                   '       g%   V P                  P                  VR,           4       R# R# rE  rF  rG  s   &&rI   rI  ÚLDAPBundle.log»  s&   € ð �z�zˆzØ�I‰I�O‰O˜C $�JÖ'ñ rL   c                ón   € \        V P                  4      V n        \        V P                  4      V n        R # r¦   )rX   r‚  r†  r†   )rB   s   &rI   Úupdate_sizeÚLDAPBundle.update_sizeÂ  s"   € Ü˜Ÿ™Ó%ˆŒ	Ü˜dŸl™lÓ+ˆŽrL   c           
     óÜ  € R pV P                   VP                   8w  dB   V P                  RV P                   : RVP                   : 24       V P                  '       g   Rp\        V P                   Uu. uF  q3P                  4       NK  	  up4      p\        VP                   Uu. uF  q3P                  4       NK  	  up4      pV P                  \        8w  dã   V P                  '       gÑ   WE,
          pV'       dY   RpV P                  RV P                  P                  ,          4       \        V4       F  pV P                  RV,           4       K  	  WT,
          pV'       dY   RpV P                  RVP                  P                  ,          4       \        V4       F  pV P                  RV,           4       K  	  WE,          p	V P                  R\        V	4      ,          4       V	 EF  p
 \        V P                  V
V P                  V P                  V P                  V P                   R7      p \        TP                  T
TP                  T P                  T P                  T P                   R7      pY½8X  d°   T P                  P$                  '       d“   T P                  R
4       T P                  RTP&                  : RTP                  P                  : R24       T P                  RTP&                  : RTP                  P                  : R24       T P                  R4       M¯T P                  R
4       T P                  RTP&                  : RTP                  P                  : R24       T P                  RTP&                  : RTP                  P                  : R24       T P                  TP(                  4       T P                  R4       RpTP                  T n        TP                  Tn        EK  	  V# u upi u upi   \"         d&   pT P                  RT
: RT: 24        R	p?EKN  R	p?ii ; i  \"         d&   pT P                  RT
: RT: 24        R	p?EK�  R	p?ii ; i)Tz!
* DN lists have different size: z != Fz
* DNs found only in %s:z
* Objects to be compared: %d)r¬   rv   r9  rB  r    r!   zLdbError for dn z: Nz
Comparing:Ú'z' [Ú]r   z    OKz
    FAILED)r†  rI  r,   rË   r‚  rA  r$   r   r§   r+   r†   rX   rÔ   r9  rB  r    r!   r
   r*   rv   ra  )rB   r¾   rS   rt  Úself_dnsÚ	other_dnsÚ	self_onlyrY   Ú
other_onlyÚ
common_dnsrv   Úobject1r_   Úobject2s   &&            rI   ÚdiffÚLDAPBundle.diffÆ  s  € ØˆØ�9‰9˜Ÿ
™
Ô"Ø�HŠHÀTÇYÄYÐPU×PZÓPZÐ[Ô\Ø×'×'Ð'Ø�ä¨4¯<ª<Ó8©< aŸ™ž	©<Ñ8Ó9ˆÜ¨E¯MªMÓ:©M qŸ™ž©MÑ:Ó;ˆ	ð ×Ñ¤
Ô*°4×3G×3GÐ3Gà Õ,ˆIßØ�Ø—‘Ð4°t·x±x·}±}ÕDÔEÜ 	Ö*�AØ—H‘H˜W q�[Ö)ñ +ð #Õ-ˆJßØ�Ø—‘Ð4°u·y±y·~±~ÕEÔFÜ 
Ö+�AØ—H‘H˜W q�[Ö)ñ ,ð Õ)ˆ
Ø�‰Ð1´C¸
³OÕCÔDäˆBðÜ$°·±Ø(*Ø-1¯\©\Ø15×1AÑ1AØ*.¯)©)¸$¿)¹)ô	E�ðÜ$°·	±	Ø(*Ø-2¯]©]Ø15×1AÑ1AØ*.¯)©)¸$¿)¹)ô	E�ð Ô!Ø—8‘8×#×#Ð#Ø—H‘H˜^Ô,Ø—H’H¨G¯J¬J¸¿¹×8HÔ8HÐIÔJØ—H’H¨G¯J¬J¸¿¹×8HÔ8HÐIÔJØ—H‘H˜^Ô,øà—‘˜Ô(Ø—’¨¯
¬
°G·K±K×4DÔ4DÐEÔFØ—’¨¯
¬
°G·K±K×4DÔ4DÐEÔFØ—‘˜×.Ñ.Ô/Ø—‘Ð+Ô,Ø�Ø"Ÿ?™?ˆDŒLØ#ŸO™OˆE�MñI ðL ˆ
ùòA 9ùÚ:øôB ô Ø—’³RºÐ;Ô<Þûðûô ô Ø—’³RºÐ;Ô<Þûðús>   Á2O>Â$PÇ*APÈ.AP;ÐP8ÐP3Ð3P8Ð;Q+ÑQ&Ñ&Q+c                ó†  € VP                  4       R8X  d   V P                  P                  pM½VP                  4       R8X  d   V P                  P                  pM‘VP                  4       R8X  d   V P                  P                  pMeVP                  4       R8X  d   RV P                  P                  ,          pM2VP                  4       R8X  d   RV P                  P
                  ,          p. pV P                  '       g   XV n        V P                  P                  4       V n        V P                  R8X  d   \        V n        MEV P                  R	8X  d   \        V n        M(V P                  R
8X  d   \        V n        M\        R4      h V P                  P                  P                  V P                  V P                  R.R7      pT F)  pTP%                  TR,          P'                  4       4       K+  	  T#   \         dA   pTP                  w  rgT P                   P#                  RT P                  ,          4       h Rp?ii ; i)zªQuery LDAP server about the DNs of certain naming self.con.ext Domain (or Default), Configuration, Schema.
Parse all DNs and filter those that are 'strange' or abnormal.
r}  r~  r  r€  zDC=DomainDnsZones,%sr�  zDC=ForestDnsZones,%sr   ÚBASEÚONEz0Wrong 'scope' given. Choose from: SUB, ONE, BASErv   r]   zFailed search of base=%s
N)rA  r§   r/   r3   r5   r1   r#   r$   r   r   r   rÊ   r"   rP   r
   rd   r    rA   rÉ   Úget_linearized)	rB   rƒ  r#   r‚  rS   Úe3r`   ra   rY   s	   &&       rI   r„  ÚLDAPBundle.get_dn_list  s·  € ð �=‰=‹?˜hÔ&ØŸ(™(×*Ñ*‰KØ�]‰]‹_ Ô/ØŸ(™(×,Ñ,‰KØ�]‰]‹_ Ô(ØŸ(™(×,Ñ,‰KØ�]‰]‹_ Ô+Ø0°4·8±8×3CÑ3CÕC‰KØ�]‰]‹_ Ô+Ø0°4·8±8×3CÑ3CÕCˆKàˆØ××ÐØ*ˆDÔØ ×-Ñ-×3Ñ3Ó5ˆÔØ×Ñ Ô%Ü -ˆDÕØ×Ñ &Ô(Ü *ˆDÕØ×Ñ %Ô'Ü .ˆDÕäÐOÓPÐPð	Ø—(‘(—,‘,×%Ñ%¨4×+;Ñ+;À4×CTÑCTÐ]aÐ\bÐ%ÓcˆCó
 ˆAØ�N‰N˜1˜T�7×1Ñ1Ó3Ö4ñ àˆøô ô 	ØŸ7™7‰LˆTØ�I‰I�O‰OÐ8¸4×;KÑ;KÕKÔLØûð	ús   Æ=G5 Ç5I È ;H;È;I c                ó&  € \        \        V P                  R ,          4      4      V P                  R &   \        \        V P                  R,          4      4      V P                  R&   V P                  R ,          '       d~   V P                  RV P                  P
                  ,          4       T P                  RP                  V P                  R ,           Uu. uF  p\        RV,           4      NK  	  up4      4       V P                  R,          '       dt   V P                  R4       T P                  RP                  V P                  R,           Uu. uF  p\        RV,           4      NK  	  up4      4       . V P                  R&   R# R# u upi u upi )rf  rg  z
Attributes found only in %s:r   z"
Attributes with different values:Nz
    )rz   rË   r9  rI  r§   r+   Újoinr-   )rB   rY   s   & rI   Úprint_summaryÚLDAPBundle.print_summary4  s  € Ü'+¬C°·±¸^Õ0LÓ,MÓ'Nˆ�‰�^Ñ$Ü)-¬c°$·,±,Ð?OÕ2PÓ.QÓ)Rˆ�‰Ð%Ñ&à�<‰<˜×'Ô'Ø�H‰HÐ5¸¿¹¿¹ÕEÔFØ�H‰H�R—W‘W¸t¿|¹|ÈNÖ?[Ó\Ñ?[¸!œc .°1Õ"4Ö5Ñ?[Ñ\Ó]Ô^à�<‰<Ð(×)Ô)Ø�H‰HÐ:Ô;Ø�H‰H�R—W‘W¸t¿|¹|ÐL\Ö?]Ó^Ñ?]¸!œc .°1Õ"4Ö5Ñ?]Ñ^Ó_Ô`Ø-/ˆD�L‰LÐ)Ó*ñ *ùò ]ùò _s   ÃF	ÅF)r§   rƒ  r‚  r!   rB  r    r&   r#   r$   r†  r,   r9  r%   r*   )r˜   r™   rš   r›   rœ   r�   rž   rJ   rI  r�  r™  r„  r£  rŸ   r    r¡   s   @rI   rx  rx  ’  s>   ø‡ € à48ÀdØ—j‘j s§z¡zô%&òN(ò,òGòR#÷J0ð 0rL   rx  c                   óš  a € ] tR tRt o RtRtR]P                  R]P                  R]P                  /t
. R7Ot]! RRR	R
RRR7      ]! RRRR
RRR7      ]! RRRR
RRR7      ]! RRR
RRR7      ]! RRR
RRR7      ]! RRRRR.R R!7      ]! R"R#R$R%R&7      ]! R'R(R$R)R&7      ]! R*R+R,. R8OR-R!7      ]! R.R/R$R0R&7      ]! R1R2R
RR3R7      .tR9R5 ltR6tV tR4# ):Úcmd_ldapcmpiB  zCompare two ldap databases.zO%prog <URL1> <URL2> (domain|configuration|schema|dnsdomain|dnsforest) [options]Ú	sambaoptsÚversionoptsÚcredoptsz-wz--tworD   Ú
store_trueFz"Hosts are in two different domains)ÚdestÚactionÚdefaultÚhelpz-qz--quietr&   z1Do not print anything but relay on just exit codez-vz	--verboser*   z*Print all DN pairs that have been comparedz--sdr'   z,Compare nTSecurityDescriptor attributes onlyz--sort-acesr(   z=Sort ACEs before comparison of nTSecurityDescriptor attributez--viewr)   r   r`  zUDisplay mode for nTSecurityDescriptor results. Possible values: section or collision.)r«  r­  Úchoicesr®  z--baserE   r   z:Pass search base that will build DN list for the first DC.)r«  r­  r®  z--base2Úbase2znPass search base that will build DN list for the second DC. Used when --two or when compare two different DNs.z--scoperF   r   z>Pass search scope that builds DN list. Options: SUB, ONE, BASEz--filterÚfilterz>List of comma separated attributes to ignore in the comparisonz--skip-missing-dnr,   zCSkip report and failure due to missing DNs in one server or anotherNc                ó¾  € VP                  4       pVP                  R 4      ;'       g    VP                  R 4      pV'       d   VP                  VRR7      pMRpVP                  VRR7      pVP	                  4       '       d   TpM"VP                  R4       VP                  R4       V'       d"   VP                  4       '       g   \        R4      h. pVf   V'       d   V'       d   R.pM]. ROpMXW4WVV3 FO  pVf   K	  VP                  4       R9   g   \        R	V,          4      hVP                  VP                  4       4       KQ  	  V
'       d   V	'       d   \        R
4      hV'       g	   V'       g   V'       d   V'       g   \        R4      h\        VVVW‰W¼W­VVV P                  V P                  VR7      p\        VP                  4      ^ 8”  g   Q h\        VVVW‰W¼W­VVV P                  V P                  VR7      p\        VP                  4      ^ 8”  g   Q hVP!                  R4      p^ pV EF‘  p V	'       g#   V P                  P#                  RV ,          4       \%        VV VV P                  V P                  R7      p!\%        VV VV P                  V P                  R7      p"V!P'                  V"4      '       d/   V	'       g%   V P                  P#                  RV ,          4       K¹  K»  V	'       gÍ   V P                  P#                  RV ,          4       V'       g£   \        V!P(                  R,          4      \        V"P(                  R,          4      8X  g   Q h. V"P(                  R&   V P                  P#                  R4       V P                  P#                  R4       V!P+                  4        V"P+                  4        RpEK”  	  V^ 8w  d   \        RV,          4      hR# )ÚldapT)Úfallback_machineNF)Úguessr   z3You must supply at least one username/password pairr}  zIncorrect argument: %sz-You cannot set --verbose and --quiet togetherz<You need to specify both --base and --base2 at the same time)rD   r&   r'   r(   r*   r)   rE   rF   r    r!   r,   r   z
* Comparing [%s] context...
)rƒ  rB  r    r!   z
* Result for [%s]: SUCCESS
z
* Result for [%s]: FAILURE
rg  z	
SUMMARY
z
---------
zCompare failed: %dr|  éÿÿÿÿ)Úget_loadparmr   Úget_credentialsÚget_credentials2Úis_anonymousÚ
set_domainÚset_workstationÚauthentication_requestedr   rA  rÉ   r   r    r!   rX   r/   rj  rA   rx  r™  r9  r£  )#rB   ÚURL1ÚURL2Úcontext1Úcontext2Úcontext3Úcontext4Úcontext5rD   r&   r*   r'   r(   r)   rE   r°  rF   r±  r©  r§  r¨  r,   r   Ú
using_ldaprC   Úcreds2ÚcontextsÚcÚcon1Úcon2rB  Ústatusrƒ  Úb1Úb2s#   &&&&&&&&&&&&&&&&&&&&&&             rI   ÚrunÚcmd_ldapcmp.rung  s(  € ð ×#Ñ#Ó%ˆà—_‘_ VÓ,×GÐG°·±ÀÓ0Gˆ
çØ×,Ñ,¨RÀ$Ð,ÓG‰EàˆEØ×*Ñ*¨2°UÐ*Ó;ˆØ×Ñ× Ò Ø‰Fà×Ñ˜bÔ!Ø×"Ñ" 2Ô&ß˜e×<Ñ<×>Ò>ÜÐTÓUÐUð ˆØÒßŸð %˜:‘ò [‘à¨(¸hÓG�Ø’9ÙØ—w‘w“yÐ$cÔcÜ&Ð'?À!Õ'CÓDÐDØ—‘ §¡£	Ö*ñ H÷ —uÜÐNÓOÐOßŸ§D·ÜÐ]Ó^Ð^ä˜˜e RØ¸Ø '¸ÀUØ!ŸY™Y¨T¯Y©YÈôYˆô �4—<‘<Ó  1Ô$Ð$Ð$ä˜˜f bØ¸Ø '¸ÀeØ!ŸY™Y¨T¯Y©YÈôYˆô �4—<‘<Ó  1Ô$Ð$Ð$à—l‘l 3Ó'ˆàˆÜˆGßØ—	‘	—‘Ð AÀGÕ KÔLä˜D¨'¸{Ø!%§¡°·±ô<ˆBä˜D¨'¸{Ø!%§¡°·±ô<ˆBð �w‰w�r�{Š{ßØ—I‘I—O‘OÐ$DØ$+õ%,ö -ñ ÷ Ø—I‘I—O‘OÐ$DÀwÕ$NÔOß%Ü" 2§:¡:Ð.>Õ#?Ó@ÄCÈÏ
É
ÐScÕHdÓDeÔeÐeÐeØ79˜Ÿ
™
Ð#3Ñ4ØŸ	™	Ÿ™¨Ô6ØŸ	™	Ÿ™¨Ô6Ø×(Ñ(Ô*Ø×(Ñ(Ô*à“ñ1  ð2 �QŒ;ÜÐ3°fÕ<Ó=Ð=ñ rL   © )r¾  r¿  z	context1?z	context2?z	context3?z	context4?z	context5?)r   r�  rœ  )NNNNNFFFFFr   r   r   r   r   NNNF)r˜   r™   rš   r›   Ú__doc__Úsynopsisr   ÚSambaOptionsÚVersionOptionsÚCredentialsOptionsDoubleÚtakes_optiongroupsÚ
takes_argsr   Útakes_optionsrÎ  rŸ   r    r¡   s   @rI   r¦  r¦  B  s<  ø‡ € Ù%Ø`€Hð 	�W×)Ñ)Ø�w×-Ñ-Ø�G×4Ñ4ðÐò c€Jñ 	ˆt�W 5°ÀuØ8ô	:áˆt�Y W°\È5ØGô	Iáˆt�[ y¸ÈuØ@ô	Báˆv˜L°ÀuØBô	Dáˆ} ;°|ÈUØSô	Uáˆx˜f¨iÀ)È[ÐAYØkô	máˆx˜f¨bØPô	Ráˆy˜w°ð Eô	Fáˆy˜w°Ò?UØTô	Váˆz °"ØTô	VáÐ"Ð):À<ÐY^ØYô	[ð+€M÷2W>ò W>rL   r¦  )r   r:   rœ   ÚsambaÚsamba.getoptÚgetoptr   r   Ú	samba.ndrr   Úsamba.dcerpcr   r"   r   r   r   r	   r
   Úsamba.netcmdr   r   r   Úcompilern   Úobjectr   r¤   rÔ   rx  r¦  rÐ  rL   rI   Ú<module>rá     s‹   ðó0 
Û 	Û 
ã Ý Ý Ý  Ý !ß WÕ W÷ñ ð —:’:Ð?Ó@Ð ôEˆvô EôPr;�ô r;ôjg�ô gôT	m0�ô m0ô`|>�'ö |>rL   