+
    $i<(  c                   sT    ^ RI t ^ RIt^ RIHtHt ^ RIHt ^RIHt  ! R R]4      t	R# )i    N)CalledProcessErrorcall)mkstemp)ConfigGeneratorc                   s  a  ] tR t^t o RtRRRRRRRRR	RR
R/tRRRRRRRRRRRRRRRRRRRRRRRRRR/tRRRRRRRR R!R"R#R$R%R&R'R(R)R*R+R,R-R.R/R0R1R2/tRRRRR3R3RRRRR!R!/tR4R5R6R7/t	/ R8R8.bR9R9.bR:R:.bR;R;.bR<R=.bR>R?.bR@RA.bRBRC.bRDRE.bRFRGRH.bRIRJ.bRKRL.bRMRNRO.bRPRQ.bRRRS.bRTRURV.bRWRX.b/ RYRZ.bR[R\.bR]R^.bR_R`.bRaRb.bRcRc.bRdRd.bReRe.bRfRf.bRgRg.bRhRh.bRiRi.bRjRj.bRkRk.bRlRl.bRmRm.bRnRn.bCR4Ro.R6Rp.RqRr.RsRt.RuRv./Ct
RwRxRyRxRzRzR{R{R|R|R}R}R~R~RRRRRRRRRRRRRRRR/tRRRRRRRR/tRRRRRRRRRRRRRRRR/t]R 4       t]R 4       tRtV tR# )GnuTLSGeneratorgnutlsZAEADz	HMAC-SHA1ZSHA1zHMAC-MD5ZMD5zHMAC-SHA2-256NzHMAC-SHA2-384zHMAC-SHA2-512ZSHA512zSHA2-224ZSHA224zSHA2-256ZSHA256zSHA2-384ZSHA384zSHA2-512zSHA3-224zSHA3-256zSHA3-384zSHA3-512z	SHAKE-128z	SHAKE-256ZX448z
GROUP-X448ZX25519zGROUP-X25519Z	SECP256R1zGROUP-SECP256R1Z	SECP384R1zGROUP-SECP384R1Z	SECP521R1zGROUP-SECP521R1z
FFDHE-6144zGROUP-FFDHE6144z
FFDHE-2048zGROUP-FFDHE2048z
FFDHE-3072zGROUP-FFDHE3072z
FFDHE-4096zGROUP-FFDHE4096z
FFDHE-8192zGROUP-FFDHE8192zMLKEM768-X25519zGROUP-X25519-MLKEM768zP256-MLKEM768zGROUP-SECP256R1-MLKEM768zP384-MLKEM1024zGROUP-SECP384R1-MLKEM1024Z	SECP224R1zEDDSA-ED448ZEd448zEDDSA-ED25519ZEd25519zRSA-MD5zRSA-SHA1zDSA-SHA1z
ECDSA-SHA1zRSA-SHA2-224z
RSA-SHA224zDSA-SHA2-224z
DSA-SHA224zECDSA-SHA2-224zECDSA-SHA224zRSA-SHA2-256z
RSA-SHA256zDSA-SHA2-256z
DSA-SHA256zECDSA-SHA2-256zECDSA-SHA256zECDSA-SECP256R1-SHA256zRSA-SHA2-384z
RSA-SHA384zDSA-SHA2-384z
DSA-SHA384zECDSA-SHA2-384zECDSA-SHA384zECDSA-SECP384R1-SHA384zRSA-SHA2-512z
RSA-SHA512zDSA-SHA2-512z
DSA-SHA512zECDSA-SHA2-512zECDSA-SHA512zECDSA-SECP521R1-SHA512zRSA-PSS-SHA2-256zRSA-PSS-SHA256zRSA-PSS-SHA2-384zRSA-PSS-SHA384zRSA-PSS-SHA2-512zRSA-PSS-SHA512zRSA-PSS-RSAE-SHA2-256zRSA-PSS-RSAE-SHA256zRSA-PSS-RSAE-SHA2-384zRSA-PSS-RSAE-SHA384zRSA-PSS-RSAE-SHA2-512zRSA-PSS-RSAE-SHA512zRSA-SHA3-224zDSA-SHA3-224zECDSA-SHA3-224zRSA-SHA3-256zDSA-SHA3-256zECDSA-SHA3-256zRSA-SHA3-384zDSA-SHA3-384zECDSA-SHA3-384zRSA-SHA3-512zDSA-SHA3-512zECDSA-SHA3-512zEdDSA-Ed448zEdDSA-Ed25519ZMLDSA44z	ML-DSA-44ZMLDSA65z	ML-DSA-65ZMLDSA87z	ML-DSA-87zAES-256-CTRZ zAES-128-CTRzAES-256-GCMzAES-128-GCMzAES-256-CCMzAES-128-CCMzAES-256-CBCzAES-128-CBCzCAMELLIA-256-GCMzCAMELLIA-128-GCMzCAMELLIA-256-CBCzCAMELLIA-128-CBCzCHACHA20-POLY1305z3DES-CBCzRC4-128zARCFOUR-128ZECDHERSADHE-RSADHE-DSSzSSL3.0zTLS1.0zTLS1.1zTLS1.2zTLS1.3zDTLS0.9zDTLS1.0zDTLS1.2c                sr	   VP                  0 R+m4      pVP                  p\        P                  ! R4      P	                  4       pVR,          '       dX   VR,           FJ  p V P
                  V,          '       d.   VR,          pW@P
                  V,          ,          pVR,          pKJ  KL  	  VR,          '       dX   VR,           FJ  p V P                  V,          '       d.   VR,          pW@P                  V,          ,          pVR,          pKJ  KL  	  VR,           F3  pWPP                  9   g   K  VRV P                  V,           R2,          pK5  	  VR	,           Uu. uF(  qUV P                  9   g   K  V P                  V,          NK*  	  ppV F  pV F  pVR
V R2,          pK  	  K  	  V F  pV F  pVRV R2,          pK  	  K  	  VP                  R,          '       d   VR,          pVR,          pVR,          pVR,           F3  pWPP                  9   g   K  VRV P                  V,           R2,          pK5  	  VR	,           F3  pWPP                  9   g   K  VRV P                  V,           R2,          pK5  	  VR,          '       dX   VR,           FJ  p V P                  V,          '       d.   VR,          pW@P                  V,          ,          pVR,          pKJ  KL  	  VR,           F<  pWPP                  9   g   K  V P                  V,           F  pVRV R2,          pK  	  K>  	  VR,           F3  pWPP                  9   g   K  VRV P                  V,           R2,          pK5  	  VP                   R,          R8X  d   VR,          pM;VP                   R,          R8X  d   VR,          pMVP                   R,          R8X  d    VP                  R,          p	VP                  R,          p
V	R8:  g   V
R8:  d   VR ,          pMiV	R!8:  g   V
R!8:  d   VR",          pMQV	R#8:  g   V
R#8:  d   VR$,          pM9V	R%8:  g   V
R%8:  d   VR&,          pM!V	R'8:  g   V
R'8:  d   VR(,          pM	VR),          pVR*,          pV#   \         d     EK.  i ; i  \         d     EK  i ; iu upi   \         d     EK   i ; i),tlsz]
            [global]
            override-mode = allowlist

            [overrides]
        Zhashzsecure-hash = Z
Zmacztls-enabled-mac = Zgroupztls-enabled-group = Zsignzsecure-sig = zsecure-sig-for-cert = Zsha1_in_certszsecure-sig-for-cert = rsa-sha1
zsecure-sig-for-cert = dsa-sha1
z!secure-sig-for-cert = ecdsa-sha1
zenabled-curve = Zcipherztls-enabled-cipher = Zkey_exchangeztls-enabled-kx = Zprotocolzenabled-version = Z__emsZENFORCEztls-session-hash = require
ZRELAXztls-session-hash = request
ZDEFAULTmin_dh_sizemin_rsa_sizei   z$min-verification-profile = very_weaki   zmin-verification-profile = lowi   z!min-verification-profile = mediumi   zmin-verification-profile = highi    z min-verification-profile = ultraz!min-verification-profile = futurez

[priorities]
SYSTEM=NONE
>   Zsslr	   r   )ZscopedZenabledtextwrapZdedentZlstriphash_mapZKeyErrormac_map	group_mapsign_mapZintegersgroup_curve_mapsign_curve_map
cipher_mapkey_exchange_mapprotocol_mapZenums)clsZunscoped_policyZpolicyZpZsZiZsigsZjZkxr
   r   s   &&         </usr/share/crypto-policies/python/policygenerators/gnutls.pygenerate_configZGnuTLSGenerator.generate_config   s|    ''(@ANNOO  
 VX 	
 V99vYY||A--\\!_,T	 '  U88uXX{{1~~11[[^+T	 &  7AMM!+CMM!,<+=R@@  *+6HA3<<6GQHA}QCr**   A-aS33   ???++33A33A55A 7A''''(;(;A(>'?rBB  6A&&&'(:(:1(='>bAA  X;;x[[~~a((44^^A..T	 ) ! >""A(((..q11B,RD33A 2 #
 :A$$$)#*:*:1*=)>bAA 
 << I-//A\\'"g-//A\\'"i/ oom4~6#!477AD LD$811AD LD$844AD LD$822AD LD$833A44A	..g       I8   sE    AQ;ARR!2R!AR&;R
RRR&R65R6c                s   \         P                  ! R 4      R8X  d   R# \         P                  ! R\         P                  4      '       g   R# \	        4       w  r#^p \         P
                  ! VR4      ;_uu_ 4       pVP                  V4       RRR4        V\         P                  R&   R\         P                  R&   R\         P                  R	&   \        R
RR7      p\         P                  R \         P                  R \         P                  R	 \         P                  ! V4       V'       d(   V P                  R4       V P                  RV 24       R# R#   + '       g   i     L; i  \         d    T P                  R4        Li ; i  \         P                  R \         P                  R \         P                  R	 \         P                  ! T4       i ; i)Z
OLD_GNUTLSZ1Tz/usr/bin/gnutls-cliZwNZGNUTLS_SYSTEM_PRIORITY_FILEZ3ZGNUTLS_DEBUG_LEVELZ&GNUTLS_SYSTEM_PRIORITY_FAIL_ON_INVALIDz!/usr/bin/gnutls-cli -l >/dev/null)Zshellz%/usr/bin/gnutls-cli: Execution failedz,There is an error in gnutls generated policyzPolicy:
F)osZgetenvZaccessZX_OKr   ZfdopenZwriteZenvironr   r    ZeprintZunlink)r   ZconfigZfdZpathZretZfs   &&    r   test_configZGnuTLSGenerator.test_config  sb   99\"c)yy.889	2s##q $D<@

8936

/0GJ

CD>!%'
 

89

/0

CDIIdOJJEFJJ6(+,) $# & D

BCD 

89

/0

CDIIdOsD   F	 9EF	 AE' E$	F	 'FF	 FF	 	AG )z	ECDHE-RSAzECDHE-ECDSA)r   )r   )r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__ZCONFIG_NAMEr   r   r   r   r   r   r   r   r   Zclassmethodr   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r      s     K 	VEG 	uHHHHJJJJ[[H" 	.&&&'''''235I" 	([[[[O 	wN
-I;-ZL- 	ZL- 	|n	-
 	- 	- 	>*- 	- 	- 	>+CD- 	- 	- 	>+CD- 	- 	-  	>+CD!-& 	-.'-( 	-.)-* 	-.+-, 	 "7!8--. 	 "7!8/-0 	 "7!81-4 	(5-6 	(7-8 	+,9-: 	(;-< 	(=-> 	+,?-@ 	(A-B 	(C-D 	+,E-F 	(G-H 	(I-J 	+,K-N 	/*K=K=K=Y-H` 	rr}}}}}}....0J=J* 	-x<<& 	(((((999	L e eN      r   )
r   r   Z
subprocessr    r   Ztempfiler   Zconfiggeneratorr   r   r   r   r   <module>r      s$    
  /  ,`o `r   