+
    4Ssi@  ã                   óŒ   € ^ RI t ^ RIHt ^ RIHt ^ RIHt ^ RIt]! R4      t	RR lt
R tRR ltRR ltR	 tR
 tR tR tR tR# )é    N)Únbt)ÚNet)ÚCommandErrorc                óè  € T p\         P                  ! RV 4      pV'       d�   VP                  ^4      pVP                  ^4      pVeF   VP                  4       pVP	                  4       VP	                  4       8w  d   \        RV RV R24      hVP	                  4       RVP                  4       3# Rp\         P                  ! RV 4      pV'       d…   VP                  ^4      pVP                  ^4      pVe_   VP                  4       pVP                  R^4      ^ ,          pVP	                  4       VP	                  4       8w  d   \        RV R	V R24      hVP	                  4       VP                  4       R3# )
zËget the realm or the domain and the base user
from user like:
* username
* DOMAIN\username
* username@REALM

 A SamDB object can also be passed in to check
our domain or realm against the obtained ones.
z(\w+)\\(\w+$)zGiven domain 'z' does not match our domain 'z'!Ú z(\w+)@(\w+)Ú.zGiven realm 'z' does not match our realm ')	ÚreÚmatchÚgroupÚdomain_netbios_nameÚlowerr   ÚupperÚdomain_dns_nameÚsplit)	ÚuserÚsamÚbaseuserÚmÚdomainÚ
our_domainÚrealmÚ	our_realmÚour_realm_initials	   &&       Ú5/usr/lib/python3/dist-packages/samba/netcmd/common.pyÚ_get_user_realm_domainr      sW  € ð €HÜ
�ŠÐ! 4Ó(€AßØ—‘˜“ˆØ—7‘7˜1“:ˆàŠ?Ø×0Ñ0Ó2ˆJØ�|‰|‹~ ×!1Ñ!1Ó!3Ô3Ü" ^°F°8ð <2Ø2<°¸Rð$Aó Bð Bð —‘Ó  " f§l¡l£nÐ5Ð5à€EÜ
�Š� Ó&€AßØ—7‘7˜1“:ˆØ—‘˜“
ˆàŠ?Ø×+Ñ+Ó-ˆIØ )§¡°°QÓ 7¸Õ :ÐØ�{‰{‹}Ð 1× 7Ñ 7Ó 9Ô9Ü" ]°5°'ð :-Ø-6¨K°rð$;ó <ð <ð �N‰NÓ˜eŸk™k›m¨RÐ0Ð0ó    c                ó–   € V P                  R4      P                  4       R,           V P                  R4      P                  4       ,           # )zdreturn the full DNS name of our own host. Used as a default
for hostname when running status queriesznetbios namer   r   )Úgetr   )Úlps   &r   Únetcmd_dnsnamer    G   s7   € ð �6‰6�.Ó!×'Ñ'Ó)¨CÕ/°"·&±&¸³/×2GÑ2GÓ2IÕIÐIr   c                óò   € \        WR7      pVf   V P                  R4      pVP                  V\        P                  \        P
                  ,          \        P                  ,          R7      pVP                  # )z›Return domain-name of a writable/ldap-capable DC for the default
domain (parameter "realm" in smb.conf) unless another realm has been
specified as argument©Úcredsr   r   )r   Úflags)r   r   Úfinddcr   ÚNBT_SERVER_LDAPÚNBT_SERVER_DSÚNBT_SERVER_WRITABLEÚpdc_dns_name)r   r#   r   ÚnetÚ	cldap_rets   &&&  r   Únetcmd_finddcr,   M   sa   € ô �EÔ
!€CØ‚}Ø—‘�w“ˆØ—
‘
 %Ü!$×!4Ñ!4´s×7HÑ7HÕ!HÌ3×KbÑKbÕ!bð ó d€Ià×!Ñ!Ð!r   c                óŠ   € \        WR7      pVP                  V\        P                  \        P                  ,          R7      pV# )zZReturn domain information (CLDAP record) of the ldap-capable
DC with the specified addressr"   )Úaddressr$   )r   r%   r   r&   r'   )r   r#   r.   r*   r+   s   &&&  r   Ú!netcmd_get_domain_infos_via_cldapr/   Y   s>   € ô �EÔ
!€CØ—
‘
 7Ü!$×!4Ñ!4´s×7HÑ7HÕ!Hð ó J€IàÐr   c                 óˆ   € ^ RI p \        V 4      pT F#  pTP                  T4      ^ ,          R8X  g   K"   R# 	  R#     R# ; i)r   NFÚCT)ÚunicodedataÚstrÚcategory)Úvalr2   Ústr_valÚcs   &   r   Úis_printable_attr_valr8   a   sI   € ÛðÜ�c“(ˆó ˆØ×Ñ Ó" 1Õ%¨Ö,Úñ ñ øðÚús	   †< ¼Ac                 óˆ  € \         P                  ! 4       pVP                  Vn        VP                  4        Fg  pVR 8X  d   K  W,          pWBV&   RpV F  p\	        V4      '       d   K  Rp M	  V'       d   KB  W#,          P                  \         P                  4       Ki  	  V P                  V\         P                  4      pV# )ÚdnFT)	ÚldbÚMessager:   Úkeysr8   Ú	set_flagsÚFLAG_FORCE_NO_BASE64_LDIFÚ
write_ldifÚCHANGETYPE_NONE)ÚsamdbÚmsgr   ÚkÚvalsÚneed_base64ÚvÚresult_ldifs   &&      r   Úget_ldif_for_editorrI   s   s¢   € ô 	�Š‹€AØ�6‰6€A„Dà�X‰XŽZˆØ�Œ9ÙØ�vˆØˆ!‰ØˆÛˆAÜ$ Q×'Ò'ÙØˆKÙñ	 ÷
 ‰{Ø�D�N‰Nœ3×8Ñ8Ö9ñ ð ×"Ñ" 1¤c×&9Ñ&9Ó:€KàÐr   c                ód   € \        V 4      \        8X  d   ^ # \        \        V 4      4      R,          # )z8Converts a timestamp in -100 nanosecond units to minutesg    £áÁA)ÚintÚNEVER_TIMESTAMPÚabs©Útimestamp_strs   &r   Útimestamp_to_minsrP   �   s)   € ô
 ˆ=Óœ_Ô,Ùä”3�}Ó%Ó&¨(Õ3Ð3r   c                ó&   € \        V 4      R,          # )z5Converts a timestamp in -100 nanosecond units to daysi   )rP   rN   s   &r   Útimestamp_to_daysrR   ˜   s   € ä˜]Ó+¨wÕ7Ð7r   c                ó0   € W9   d   W,          ^ ,          # V# )z/get an attribute from a ldap msg with a default© )rC   ÚattrnameÚdefaults   &&&r   Úattr_defaultrW   �   s   € à„Ø�}˜QÕÐØ€Nr   lûÿÿÿ         )N)r	   Úsamba.dcerpcr   Ú	samba.netr   Úsamba.netcmdr   r;   rK   rL   r   r    r,   r/   r8   rI   rP   rR   rW   rT   r   r   Ú<module>r[      sR   ðó( 
Ý Ý Ý %Û 
ñ Ð)Ó*€ô%1òPJô	"ôòò$ò44ò8ô
r   