
    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 dl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_PA_ENC_TIMESTAMPKU_AS_REP_ENC_PARTKU_TGS_REP_ENC_PART_SUB_KEYFc                   $     e Zd Z fdZd Z xZS )XrealmKerberosTestsc                     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/xrealm_tests.pyr   zXrealmKerberosTests.setUp(   s3    !4((..000.(    c                 
   |                                  }|                                }|                                }|                     d|g          }|                     d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           |                    t2          |d         d                   }	 |                     |t          j                              }n8# t6          $ r+ |                     |t          j                              }Y nw xY wt:          j                            d          }|                     dd|g          }t          j        d          }|                     d          }|d         }|                      |d                   }g }| !                    |j"                  }|                                 \  }}| #                    ||||t          |          |||d |d d|	d d d d ||          }
| 	                    |
          }| 
                    |           |d         }|                     |d           |                    tH          |d         d                   }|                     |t          j                              }tK          tM          t          j'        d                              dz
  }t          j'        |d                   |         sJ d S )N   )	name_typenames   krbtgti  )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cipherTRUST_REALMticketkeyi)r!   cusecctimer4   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   EncAuthorizationDataEncAuthorizationData_keyr,   ticket_session_keyauthenticator_subkey   flags)(get_user_credsget_username	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sambatestsenv_get_var_valueEncryptionKey_import	RandomKeyetypeTGS_REQ_creater   lentupleTicketFlags)r   
user_credsuserr$   r#   r%   tillr"   r!   r*   reqrep
rep_padatapaetype_info2r5   patimepausecpa_tsmsg_type	enc_part2trust_realmr4   r:   subkeyr7   r6   fwd_poss                               r   test_xrealmzXrealmKerberosTests.test_xrealm-   s   ((**
&&(($$&&))AdV)DD))Ah=N)OO$$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	?
 k33MBB))+6 * 8 8  *=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 $ ; ;	 eI1-@@AABBQF$Yw%788ABBBs   (M 2M;:M;)__name__
__module____qualname__r   rs   __classcell__)r   s   @r   r
   r
   &   sN        ) ) ) ) )
G G G G G G Gr   r
   __main__)sysospathinsertenvironsamba.tests.krb5.raw_testcaser   "samba.tests.krb5.rfc4120_constantsr   r   r   samba.tests.krb5.rfc4120_pyasn1rZ   krb5rfc4120_pyasn1rC   samba.testsrY   r   r   r
   rt   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     N N N N N/ N N Nb zNOOOHMOOOOO	 r   