
    5ii	                         d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ  G d d          Z	d Z
edk    r e
             dS dS )    N)logger)LDAPConnectionFactoryc                   (    e Zd Zd Zd ZddZd ZdS )MSLDAPCompDomainListc                 L    || _         d | _        d | _        d | _        d | _        d S )N)conn_url
connectionadinfoldapinfodomain_name)selfldap_urls     W/home/kali/Ninja/venv/lib/python3.11/site-packages/msldap/examples/msldapcompdnslist.py__init__zMSLDAPCompDomainList.__init__   s,    $-$/$+$-$    c                 v  K   	 t          j        | j                                                   t          j        | j                                                   | j                                        | _        | j                                         d{V \  }}||dS # t          $ r}d|fcY d}~S d}~ww xY w)zPerforms connection and loginNTNF)	r   debugr   get_credential
get_target
get_clientr	   connect	Exception)r   _erres       r   loginzMSLDAPCompDomainList.login   s      	<,,..///	<((**+++ ]--//4?/))++++++++61c	o
I
*	   
(??????s   BB   
B8*B3-B83B8Tc                 <  K   	 | j         ^| j        j        | _         | j         j                            dd                              dd                              dd          | _        |du rt          | j                    dS # t          $ r}d	|fcY d}~S d}~ww xY w)
z%Prints detailed Active Driectory infoNDC =,.Tr   F)r
   r	   	_ldapinfodistinguishedNamereplacer   printr   )r   showr   s      r   	do_adinfozMSLDAPCompDomainList.do_adinfo'   s      	
k/+DK{4<<T"EEMMcRTUU]]^abeffD
dll	$+
*	   
(??????s   A=B 
BBBBc                   K   	 |                                   d {V \  }}|||                     d           d {V \  }}||| j                            ddg          2 3 d {V \  }}|||j        }||j        d d         d| j        }t          t          |                     M6 d S #  t          j
                     Y d S xY w)NFsAMAccountNamedNSHostName)attrsr#   )r   r)   r	   get_all_machinesr,   r+   r   r'   str	traceback	print_exc)r   r   r   machinednss        r   runzMSLDAPCompDomainList.run4   s(     **,,61c	o
I..''''''''61c	o
I!_==EUWdDe=ff       \Wc
Y

C
{,SbS11143C3CDS	#c((OOOO gffs   A B4 $B1*AB4 4CN)T)__name__
__module____qualname__r   r   r)   r5    r   r   r   r      sU                    r   r   c                     dd l } |                     d          }|                    ddddd           |                    d	d
d           |                    dd           |                                }|j        dk    r t          j        t
          j                   n[t          j	        t
          j
                   t          j	        t
          j
                   t          j        t
          j
                   t          j        |j                  }t          |          }t!          j        |                                           d S )Nr   zMS LDAP library)descriptionz-vz	--verbosecountzVerbosity, can be stacked)actiondefaulthelpz-nz--no-interactive
store_true)r=   urlz Connection string in URL format.)r?   )level)argparseArgumentParseradd_argument
parse_argsverboseloggingbasicConfigINFOsocksloggersetLevelDEBUGr   r   from_urlrA   r   asyncior5   )rC   parserargsr   compdomlists        r   mainrS   J   s-   

!
!.?
!
@
@T;wHcdddT-lCCCU!CDDD 	LA	GL)))))w}%%%/'-   	GM****!*4844#H-- 	[__r   __main__)rO   r1   rH   msldapr   asysocksrK   msldap.commons.factoryr   r   rS   r6   r9   r   r   <module>rX      s                * * * * * * 8 8 8 8 8 88 8 8 8 8 8 8 8v     0 z r   