HEX
Server: LiteSpeed
System: Linux shams.tasjeel.ae 5.14.0-611.5.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 08:09:09 EST 2025 x86_64
User: infowars (1469)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/ipapython/__pycache__/session_storage.cpython-39.opt-1.pyc
a

}�f�3�
@s�ddlZddlZdZejdkr$dZndZze�e�ZWn0eyfZze	e
e���WYdZ[n
dZ[00ejZeZ
e
ZeZejZeZGdd�dej�ZGdd	�d	ej�ZGd
d�dej�ZGdd
�d
ej�ZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd�dej�Ze�e�ZeZeZej Z!eZ"eZ#e�e�Z$e�e�Z%Gdd�dej�Z&Gdd�de'�Z(dd�Z)e�e�Z*e�e�Z+e�e�Z,e&Z-ej.Z/e/Z0ej1Z1e�e*�fe1_2e
e1_3e)e1_4ej5Z5e*fe5_2de5_3ej6Z6e*efe6_2de6_3ej7Z7e*e,fe7_2de7_3ej8Z8e*e�e+�fe8_2e
e8_3e)e8_4ej9Z9e*e+fe9_2e
e9_3e)e9_4ej:Z:e*ej;e�e�fe:_2e
e:_3e)e:_4ej<Z<e*e+eej;e,fe<_2e
e<_3e)e<_4ej=Z=e*e+e�e�fe=_2e
e=_3e)e=_4ej>Z>e*e�e�ej ej;ej;ej;ej;ej;fe>_2e
e>_3e)e>_4ej?Z?e*e+e�e0�fe?_2e
e?_3e)e?_4ej@Z@e*e+e�e0�e�e-�fe@_2e
e@_3e)e@_4ejAZAe*e+e�e0�feA_2e
eA_3e)eA_4ejBZBe*e�e-�feB_2deB_3ejCZCe*eefeC_2e!eC_3ejDZDe*ee�ej;�feD_2e
eD_3e)eD_4ejEZEe*ej;feE_2deE_3dZFdZGdd�ZHd d!�ZId"d#�ZJdS)$�Ni�:ǖ�darwinz
libkrb5.dylibzlibkrb5.so.3c@seZdZdZgZdS)�
_krb5_contextz krb5/krb5.h struct _krb5_contextN��__name__�
__module__�__qualname__�__doc__�_fields_�r
r
�=/usr/lib/python3.9/site-packages/ipapython/session_storage.pyrsrc@seZdZdZgZdS)�_krb5_ccachezkrb5/krb5.h struct _krb5_ccacheNrr
r
r
rr!src@s*eZdZdZdefdejfdejfgZdS)�
_krb5_datazkrb5/krb5.h struct _krb5_data�magic�length�dataN)	rrrr�
krb5_magic�ctypes�c_uint�c_char_pr	r
r
r
rr
&s
�r
c@seZdZdZgZdS)�krb5_principal_dataz&krb5/krb5.h struct krb5_principal_dataNrr
r
r
rr/src@s4eZdZdZdefdefdejfde�e	�fgZ
dS)�_krb5_keyblockz!krb5/krb5.h struct _krb5_keyblockrZenctyper�contentsN)rrrrr�krb5_enctyperr�POINTER�
krb5_octetr	r
r
r
rr4s�rc@s,eZdZdZdefdefdefdefgZdS)�_krb5_ticket_timesz%krb5/krb5.h struct _krb5_ticket_timesZauthtimeZ	starttime�endtimeZ
renew_tillN)rrrr�krb5_timestampr	r
r
r
rr>s�rc@seZdZdZgZdS)�
_krb5_addressz krb5/krb5.h struct _krb5_addressNrr
r
r
rrHsrc@seZdZdZgZdS)�_krb5_authdataz!krb5/krb5.h struct _krb5_authdataNrr
r
r
rrMsrc@sbeZdZdZdefdefdefdefdefdefde	fd	e
�e�fd
e
fde
fde
�e�fgZd
S)�_krb5_credszkrb5/krb5.h struct _krb5_credsr�client�serverZkeyblock�timesZis_skeyZticket_flags�	addresses�ticketZ
second_ticketZauthdataN)rrrrr�krb5_principal�
krb5_keyblock�krb5_ticket_times�krb5_boolean�
krb5_flagsrr�krb5_address_p�	krb5_data�krb5_authdata_pr	r
r
r
rr \s�r c@seZdZdS)�	KRB5ErrorN)rrrr
r
r
rr.msr.cCs|dkrt||j|��dS)z.Error checker for krb5_error_code return valuerN)r.r)�result�funcZ	argumentsr
r
r�
krb5_errcheckqsr1sX-CACHECONF:skrb5_ccache_conf_datac		Cs4t|t�s|�d�}t|t�s(|�d�}t|t�s<|�d�}t||�}||krRdSt�}t�}t�}z�tt�	|��t
|t�|�t�	|��t|t�	|��t�
|�}t�}|j|_t|�|_t||||t�	|��W|r�t||�|r�t||�|r�t|�n0|�rt||�|�r t||�|�r.t|�0dS)z=
    Stores the session cookie in a hidden ccache entry.
    �utf-8�asciiN)�
isinstance�bytes�encode�get_data�krb5_contextr&�krb5_ccache�krb5_init_contextr�byref�krb5_parse_namer�krb5_cc_defaultZcreate_string_bufferr
�valuer�lenr�krb5_cc_set_config�krb5_free_principal�
krb5_cc_close�krb5_free_context)	�
princ_name�keyr>Zoldvalue�context�	principal�ccache�bufrr
r
r�
store_data�sJ






�


�


�

rJc
Cst|t�s|�d�}t|t�s(|�d�}t�}t�}t�}t�}t�}t��}�z`tt�	|��t
|t�	|��t||t�	|��t|t�|�t�	|��t
||t�	|��t|t�	|�tt�t�t�t�t�t�|�|t�d��t�}t�}	d}
t||t�	|��z�t�}zt||t�	|�t�	|��Wnt�yFY�q�Yn0t|||j�dk�r�t|||j�dk�r�|
�r�t|t�	|	��|}	d}
nt|t�	|���qWt||t�	|��nt||t�	|��0|
�rP|	jj}t|t�	|	��|W|�rt||�|�rt||�|�r t||�|�r0t||�|�r@t ||�|�rNt!|�SW|�rbt||�|�rrt||�|�r�t||�|�r�t||�|�r�t ||�|�rt!|�n`|�r�t||�|�r�t||�|�r�t||�|�r�t||�|�rt ||�|�rt!|�0dS)z;
    Gets the session cookie in a hidden ccache entry.
    r2NF�T)"r4r5r6r8r&r9rrr:r;r=�krb5_cc_get_principalr<�krb5_unparse_name�krb5_build_principalr?�
CONF_REALM�	CONF_NAME�krb5_cc_cursor�
krb5_creds�krb5_cc_start_seq_get�krb5_cc_next_credr.�krb5_principal_comparer!r"�krb5_free_cred_contents�krb5_cc_end_seq_getr%rrA�krb5_free_unparsed_namerBrC)
rDrErFrGZ	srv_princrHZpname_princZpnameZcursorZcredsZ	got_credsZ
checkcredsrr
r
rr7
s�



�
�	�������
(




�





�





r7c
Cst|t�s|�d�}t|t�s(|�d�}t�}t�}t�}z�tt�|��t	|t�
|�t�|��t|t�|��zt||||d�Wn2t
y�}z|jdtkr�WYd}~n
d}~00W|r�t||�|r�t||�|r�t|�n.|r�t||�|�rt||�|�rt|�0dS)zB
    Removes the hidden ccache entry with the session cookie.
    r2Nr)r4r5r6r8r&r9r:rr;r<rr=r@r.�args�KRB5_CC_NOSUPPrArBrC)rDrErFrGrH�er
r
r�remove_datags<



�


�

r\)Kr�sysrZ�platformZLIBKRB5_FILENAMEZCDLLZLIBKRB5�OSErrorr[�ImportError�strZc_int32Z
krb5_int32Zkrb5_error_coderrZc_uint8rrZ	Structurerrr
rrrrrrr&r'r(rr)r*r,r+r-r �	Exceptionr.r1r8r9Zkrb5_data_prRZc_void_pZkrb5_pointerrQr:�argtypesZrestypeZerrcheckrCrAZkrb5_free_data_contentsr=rBr<rr@rLrNrSrTrWrVrUrMrXrOrPrJr7r\r
r
r
r�<module>s
"	










���
�����
�-Z