
    Idg                     J    d dl mZmZ d dlmZ d dlmZmZ d dlZd dlm	Z	 d Z
y)    )lsadrsblobs)ndr_pack)arcfour_encryptstring_to_byte_arrayN)cryptoc                    dd}| j                   }	 | j                         rt        j                           ||||      }t        j                          | j                  ||||      S # t        j                          w xY w)Nc                    dgdz  }t        t        |            D ]  }t        j                  dd      ||<    t	        j
                         }||_        ||_        ||_        t        |      }t        | |      }t        j                         }t        |      |_        t        |      |_        t        j                          }	||	_        |	S )Nr   i      )rangelenrandomrandintr   trustDomainPasswords
confounderoutgoingincomingr   r   r   	DATA_BUF2sizer   dataTrustDomainInfoAuthInfoInternal	auth_blob)
session_keyr   r   r   i	trustpasstrustpass_blobencrypted_trustpassr   	auth_infos
             3/usr/lib/python3/dist-packages/samba/trust_utils.pygenerate_AuthInfoInternalz;CreateTrustedDomainRelax.<locals>.generate_AuthInfoInternal   s    S3Y
s:' 	3A"NN1c2JqM	3 113	)	%	%	!),-k>JMMO	01	-.AB	779	'	    )r   r   )NN)r   transport_encryptedr   set_relax_modeset_strict_modeCreateTrustedDomainEx2)	lsaconnpolicy
trust_infomaskin_blobout_blobr    r   r   s	            r   CreateTrustedDomainRelaxr,      sy    0 %%K!&&(!!#-k7>7?A	 	 ))&*iNN 	 s   /A) )A?)samba.dcerpcr   r   	samba.ndrr   sambar   r   r   r   r,    r!   r   <module>r1      s   & '  7  %Or!   