KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.41 (Ubuntu)
System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64
User : www-data ( 33)
PHP Version : 8.2.12
Disable Function : NONE
Directory :  /lib/python3/dist-packages/certbot/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/certbot/tests/__pycache__/ocsp_test.cpython-38.pyc
U

�]0A�	@s<dZddlZddlZddlmZmZddlmZddlmZddl	m
Z
mZddlm
Z
zddlmZeejd	�Wneefk
r�dZYnXddlZddlZdd
lmZddlmZdZGd
d�dej�Zejedd�Gdd�dej��Z ej!d dd��Z"dd�Z#dZ$dZ%dZ&dZ'dZ(dZ)dZ*e+dk�r8e�,�dS)!zTests for ocsp.py�N)�datetime�	timedelta)�default_backend)�hashes)�UnsupportedAlgorithm�InvalidSignature)�x509��ocspZsignature_hash_algorithm)�errors)�utilz;Missing = in header key=value
ocsp: Use -help for summary.
c@s�eZdZdZdd�Zdd�Ze�d�e�d�e�d�d	d
����Ze�d�e�d�d
d���Z	dd�Z
e�d�e�d�dd���ZdS)�OCSPTestOpenSSLz5
    OCSP revokation tests using OpenSSL binary.
    c
Csjddlm}t�d��J}t�d��4}t��}dtf|j_||_d|_|jdd�|_	W5QRXW5QRXdS)Nrr	�certbot.ocsp.Popen�certbot.util.exe_existsT�Zenforce_openssl_binary_usage)
�certbotr
�mock�patch�	MagicMock�out�communicate�return_value�RevocationChecker�checker)�selfr
�
mock_popen�mock_exists�mock_communicate�r�9/usr/lib/python3/dist-packages/certbot/tests/ocsp_test.py�setUp"szOCSPTestOpenSSL.setUpcCsdS�Nr)rrrr�tearDown,szOCSPTestOpenSSL.tearDownzcertbot.ocsp.logger.inforrcCs�t��}dtf|j_||_d|_ddlm}|jdd�}|�|j	d�|�|�
d�dg�dt�d�d	f|j_|jdd�}|�|�
d�d
dg�|�|jd�d|_d|_	|jdd�}|�|j	d�|�|j	d�|�|jd�dS)NTrr	r��xzHost=x�
�ZHostF)
rrrrrrr
r�assertEqual�
call_countZ	host_args�	partition�broken)rrr�mock_logrr
rrrr�	test_init/s$zOCSPTestOpenSSL.test_init�#certbot.ocsp._determine_ocsp_serverzcertbot.util.run_scriptcCstj�t���}t��}d|_d|_|t	dd�|_
d|j_d|_
|�|j�|�d�d|j_ttdd��|_
|�|j�|�d�|�|jd	�d
|_
|�|j�|�d�t�d�|_|�|j�|�d�|�|jd�||_
d|_
|j}|�|j�|�d�|�|j|�dS)Nr$�yr&�ZhoursT)�r0Fr#r)zhttp://x.cozx.coz#Unable to load certificate launcher)�pytz�UTC�fromutcr�utcnowrr�cert�chainr�
target_expiryrr*rr'�ocsp_revoked�tuple�
openssl_happyr(rZSubprocessError�side_effect)r�mock_run�mock_determine�now�cert_objZcount_beforerrr�test_ocsp_revokedIs,z!OCSPTestOpenSSL.test_ocsp_revokedcCs0t�d�}ddlm}|�|�}|�d|�dS)N�ocsp_certificate.pemrr	)zhttp://ocsp.test4.buypass.comzocsp.test4.buypass.com)�	test_util�vector_pathrr
Z_determine_ocsp_serverr')r�	cert_pathr
�resultrrr�test_determine_ocsp_serverhs

z*OCSPTestOpenSSL.test_determine_ocsp_serverzcertbot.ocsp.loggercCs$t|_ddlm}|�|jt�d�|�|jt�d�|�|jjd�|�|j	jd�d|j_|�|jt
�d�|�|jjd�|�|j	jd�|�|jt�d�|�|jjd�|�|jt�d�|�|j	jd�d|j
_|�|jt�d�|�|j
jd�|�|jt�d�|�|j
jd�dS)Nrr	Fr#r&T)�openssl_confusedrrr
r'Z_translate_ocsp_queryr:�debugr(Zwarning�openssl_unknown�openssl_expired_ocsp�openssl_broken�info�openssl_revoked�openssl_expired_ocsp_revoked)rr<r+r
rrr�test_translate_ocspos&z#OCSPTestOpenSSL.test_translate_ocspN)�__name__�
__module__�__qualname__�__doc__r r"rrr,r@rFrOrrrrr
s
r
zFThis class tests functionalities available only on cryptography>=2.5.0)�reasonc@sTeZdZdZdd�Ze�d�e�d�dd���Zdd	�Zd
d�Z	dd
�Z
dd�ZdS)�OSCPTestCryptographyz;
    OCSP revokation tests using Cryptography >= 2.4.0
    cCsrddlm}|��|_t�d�|_t�d�|_t�	�|_
|j|j
_|j|j
_t
j�t���}|tdd�|j
_dS)Nrr	rA�ocsp_issuer_certificate.pemr&r/)rr
rrrBrCrD�
chain_pathrrr?r5r6r1r2r3rr4rr7)rr
r>rrrr �s



zOSCPTestCryptography.setUpr-z%certbot.ocsp._check_ocsp_cryptographycCs*d|_|j�|j�|�|j|jd�dS)N)�http://example.com�example.comrX)rrr8r?Zassert_called_once_withrDrW)rZmock_revoker=rrr� test_ensure_cryptography_toggled�sz5OSCPTestCryptography.test_ensure_cryptography_toggledc	Cs:ttjjtjj��|j�|j�}W5QRX|�	|�dSr!)
�
_ocsp_mock�ocsp_lib�OCSPCertStatus�REVOKED�OCSPResponseStatus�
SUCCESSFULrr8r?Z
assertTrue)r�revokedrrr�test_revoke�sz OSCPTestCryptography.test_revokec	Cs�t�t�d�t��}ttjjtj	j
��"}|j|dj_
|j�|j�W5QRX|�|djd�|�|djdd��|�����dS)NrV�
mock_response�
mock_checkr#r)r�load_pem_x509_certificaterB�load_vectorrr[r\r]r^r_r`�subjectr�responder_namerr8r?r'r(Z	call_args�public_numbers�
public_key)r�issuer�mocksrrr�test_responder_is_issuer�s��
�z-OSCPTestCryptography.test_responder_is_issuerc	Cs�t�t�d�t��}t�t�d�t��}ttjjtj	j
��}|j�|j
�W5QRX|�|djd�|�|djddd��|�����|�|djddd��|�����dS)NrV�ocsp_responder_certificate.pemrdr&rr#)rrerBrfrr[r\r]r^r_r`rr8r?r'r(Zcall_args_listrirj)rrk�	responderrlrrr�%test_responder_is_authorized_delegate�s(���
�
�z:OSCPTestCryptography.test_responder_is_authorized_delegatecCs�ttjjtjjdd��|j�|j�}W5QRX|�	|�ttjjtjj
��|j�|j�}W5QRX|�	|�ttjjtjj��|j�|j�}W5QRX|�	|�ttjjtjj��:tj
dt�dtjj�d��|j�|j�}W5QRXW5QRX|�	|�ttjjtjjtd�d��|j�|j�}W5QRX|�	|�ttjjtjjtd�d��|j�|j�}W5QRX|�	|�ttjjtjjtd�d��|j�|j�}W5QRX|�	|�ttjjtjj�� }g|dj_|j�|j�}W5QRX|�	|�ttjjtjj��@}|djjd	}tjd
|jd�|djjd	<|j�|j�}W5QRX|�	|�ttjjtjj��Vt�
d��@}d
|_tj
dt�dtjj�d��|j�|j�}W5QRXW5QRXW5QRX|�	|�dS)Ni�)�http_status_codez4cryptography.x509.Extensions.get_extension_for_classz	Not found)r;Zfoo)�check_signature_side_effectrcrZfake)rkrgr-)zhttps://example.comrY)r[r\r]ZUNKNOWNr_r`rr8r?ZassertFalseZUNAUTHORIZEDr^rrrZExtensionNotFoundZAuthorityInformationAccessOIDZOCSPrr�AssertionErrorr�certificates�Mockrg)rrarlr5Zmock_serverrrr�test_revoke_resiliency�s��


��"
�
�
�
�
��
��,z+OSCPTestCryptography.test_revoke_resiliencyN)rPrQrRrSr rrrZrbrmrprvrrrrrU�srU��ccsxt�d��d}t||�|_t�d��B}tj|d�|_t�d��}|rH||_|||d�VW5QRXW5QRXW5QRXdS)Nz(certbot.ocsp.ocsp.load_der_ocsp_responsezcertbot.ocsp.requests.post)Zstatus_codez.certbot.ocsp.crypto_util.verify_signed_payload)rc�	mock_postrd)rr�_construct_mock_ocsp_responserrur;)�certificate_status�response_statusrqrrrcrxrdrrrr[s��r[cCs�t�t�d�t��}t�t�d�t��}t�t�d�t��}t��}|�||t�	��}|�
�}tj|||j
|j|j|j|gt�	�t��tdd�t��tdd�tjjjd�S)NrArVrnr#)Zdays)r{rz�
serial_number�issuer_key_hash�issuer_name_hashrhrtZhash_algorithmZnext_updateZthis_updateZsignature_algorithm_oid)rrerBrfrr\ZOCSPRequestBuilderZadd_certificaterZSHA1Zbuildrrur|r}r~rgrr>rZoidZSignatureAlgorithmOIDZ
RSA_WITH_SHA1)rzr{r5rkroZbuilderZrequestrrrry!s8����ry)r0z�
/etc/letsencrypt/live/example.org/cert.pem: good
	This Update: Dec 17 00:00:00 2016 GMT
	Next Update: Dec 24 00:00:00 2016 GMT
z�
Response Verify Failure
139903674214048:error:27069065:OCSP routines:OCSP_basic_verify:certificate verify error:ocsp_vfy.c:138:Verify error:unable to get local issuer certificate
)�blah.pemz^
blah.pem: good
	This Update: Dec 20 18:00:00 2016 GMT
	Next Update: Dec 27 18:00:00 2016 GMT
�Response verify OK)rz�
blah.pem: revoked
	This Update: Dec 20 01:00:00 2016 GMT
	Next Update: Dec 27 01:00:00 2016 GMT
	Revocation Time: Dec 20 01:46:34 2016 GMT
r�)rza
blah.pem: unknown
	This Update: Dec 20 18:00:00 2016 GMT
	Next Update: Dec 27 18:00:00 2016 GMT
r�)r0Z	tentaclesr�)rz�
blah.pem: WARNING: Status times invalid.
140659132298912:error:2707307D:OCSP routines:OCSP_check_validity:status expired:ocsp_cl.c:372:
good
	This Update: Apr  6 00:00:00 2016 GMT
	Next Update: Apr 13 00:00:00 2016 GMT
r�)rz�
blah.pem: WARNING: Status times invalid.
140659132298912:error:2707307D:OCSP routines:OCSP_check_validity:status expired:ocsp_cl.c:372:
revoked
	This Update: Apr  6 00:00:00 2016 GMT
	Next Update: Apr 13 00:00:00 2016 GMT
r��__main__)rwN)-rS�
contextlibZunittestrrZcryptography.hazmat.backendsrZcryptography.hazmat.primitivesrZcryptography.exceptionsrrZcryptographyrZcryptography.x509r
r\�getattrZOCSPResponse�ImportError�AttributeErrorrr1rrZ
certbot.testsrrBrZTestCaser
ZskipIfrU�contextmanagerr[ryrGr:rMrIrKrJrNrP�mainrrrr�<module>sJ
k��
	



Anon7 - 2021