
    b                         d dl Z d dlZe j                            d d           dej        d<   d dlmZ d dlmZm	Z	m
Z
 d dlmc mc mZ dZdZ G d d	e          Zed
k    rdZdZd dlZ ej                     dS dS )    Nz
bin/python1PYTHONUNBUFFERED)RawKerberosTest)KU_AS_REP_ENC_PARTKU_PA_ENC_TIMESTAMPKU_TGS_REP_ENC_PART_SUB_KEYFc                   $     e Zd Z fdZd Z xZS )SimpleKerberosTestsc                     t          t          |                                            t          | _        t
          | _        d S )N)superr
   setUpglobal_asn1_printdo_asn1_printglobal_hexdump
do_hexdump)self	__class__s    ?/usr/lib/python3/dist-packages/samba/tests/krb5/simple_tests.pyr   zSimpleKerberosTests.setUp'   s3    !4((..000.(    c                 r
   |                                  }|                                }|                     d          }|                                }|                                }|                     d|g          }|                     d||g          }|                     d          }t          j        d          }	d }
d	}|                     |
t          |	          |||d |d d
|d d           }| 
                    |          }|                     |           |                     |d         d           |                     |d         d           |                     |d         t          j                              }|D ]}|d         dk    r
|d         } n|                     |t          j                              }|                     ||d                   }|                                 \  }}|                     ||          }|                     |t          j                              }|                     |t,          |          }|                     |t          j                              }|                     d|          }t          j        d          }	|g}
|                     |
t          |	          |||d |d d
|d d           }| 
                    |          }|                     |           |d         }|                     |d           |                    t4          |d         d                   }	 |                     |t          j                              }n8# t8          $ r+ |                     |t          j                              }Y nw xY w|                     d          }|                                }|                     dd|g          }t          j        d          }	|                     d          }|d         }|                     |d                   }g }
|                      |j!                  }|                                 \  }}| "                    |
|||t          |	          |||d |d d|d d d d ||          }| 
                    |          }|                     |           |d         }|                     |d            |                    tF          |d         d                   }|                     |t          j                              }d S )!NF)require_keys   )	name_typenames   i  )offsetforwardable)         i)padatakdc_optionscnamerealmsname	from_time	till_time
renew_timenonceetypes	addressesadditional_ticketszmsg-type   z
error-code   ze-data)asn1Speczpadata-type   zpadata-valuer      zenc-partcipherT)allow_missing_passwordhostticketkeyi)r!   cusecctimer5   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   EncAuthorizationDataEncAuthorizationData_keyr,   ticket_session_keyauthenticator_subkey   )$get_user_credsget_usernameget_krbtgt_creds	get_realmPrincipalName_createget_KerberosTime	krb5_asn1
KDCOptionsAS_REQ_createstrsend_recv_transactionassertIsNotNoneassertEqual
der_decodeMETHOD_DATAETYPE_INFO2PasswordKey_from_etype_info2get_KerberosTimeWithUsecPA_ENC_TS_ENC_create
der_encodePA_ENC_TS_ENCEncryptedData_creater   EncryptedDataPA_DATA_createdecryptr   EncASRepPart	ExceptionEncTGSRepPartget_service_credsEncryptionKey_import	RandomKeyetypeTGS_REQ_creater   )r   
user_credsuserkrbtgt_credskrbtgt_accountr$   r#   r%   tillr"   r!   r*   reqrep
rep_padatapaetype_info2r6   patimepausecpa_tsmsg_type	enc_part2service_credsservice_namer5   r;   subkeyr8   r7   s                                 r   test_simplezSimpleKerberosTests.test_simple,   s   ((**
&&((,,%,@@%2244&&(())AdV)DD))Ane=T)UU$$E$22*=99  -0-=-=',',',+/+/,0'1(.+/48 ! : : ((--S!!!Z"---\*B///__MI$9$;$; % = =
  	 	B- B&& 0 ' oo)"7"9"9 & ; ; //
KNKK88::))&&99	0G0I0IJJ))#/BEJJ	0G0I0IJJ##Au--*=99  -0-=-=',',',+/+/,0'1(.+/48 ! : : ((--S!!!z?2&&&KK 2C
OH4MNN		?I$:$<$< ( > >II 	? 	? 	?I$;$=$= ( ? ?III	?
 ..d.KK$1133))5 * 7 7*=99$$E$22X!66y7GHH 2 8996688!!(-(-)/.1+.>.>(-(-(-,0,0-1(2)/,07;;?595G7=% " ? ?& ((--S!!!z?2&&&NN'Z)BD D	OO	 7 9 9 $ ; ;	 	s   (M0 02N%$N%)__name__
__module____qualname__r   rq   __classcell__)r   s   @r   r
   r
   %   sN        ) ) ) ) )
F F F F F F Fr   r
   __main__)sysospathinsertenvironsamba.tests.krb5.raw_testcaser   "samba.tests.krb5.rfc4120_constantsr   r   r   samba.tests.krb5.rfc4120_pyasn1testskrb5rfc4120_pyasn1rD   r   r   r
   rr   unittestmain r   r   <module>r      s  & 


 				 <      !$
  9 9 9 9 9 9         
 4 3 3 3 3 3 3 3 3 3 3 3 M M M M M/ M M M` zNOOOHMOOOOO	 r   