Xj0XddlmZddlZddlZddlZddlZddlZddlmZm Z ddl m Z ddl m Z ddl mZddlmZmZddlmZdd lmZdd lmZmZdd lmZdd lmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%dd l&m'Z'm(Z(ddl)m*Z*m+Z+m,Z,m-Z-ej\dddZ/ ddZ0ddZ1Gdde2Z3Gdde2Z4GddejjZ6GddZ7Gdde6Z8Gdd e6Z9Gd!d"e6Z:Gd#d$e6Z;Gd%d&e6Z<Gd'd(Z=Gd)d*e6Z>Gd+d,e6Z?Gd-d.e6Z@Gd/d0e6ZAGd1d2ZBGd3d4e jZDeDjeDjeDjeDjeDjeDjeDjeDjd5ZMeDjd6eDjd7eDjd8eDjd9eDjd:eDjd;eDjdeDjd?i ZQGd@dAe6ZRGdBdCe6ZSGdDdEZTGdFdGZUGdHdIZVGdJdKe6ZWGdLdMe6ZXGdNdOe6ZYGdPdQe6ZZGdRdSe jZ[e[Dcic]}|j|c}Z]GdTdUe6Z^GdVdWe6Z_GdXdYe6Z`GdZd[e6ZaGd\d]eje/ZcGd^d_ZdGd`dae6ZeGdbdce6ZfGdddee6ZgGdfdge6ZhGdhdie6ZiGdjdke6ZjGdldme6ZkGdndoe6ZlGdpdqe6ZmGdrdse6ZnGdtdue6ZoGdvdwZpGdxdyZqGdzd{ZrGd|d}e6ZsGd~de6Ztycc}w)) annotationsN)IterableIterator)utils)asn1)x509) constant_time serialization)EllipticCurvePublicKey) RSAPublicKey)CertificateIssuerPublicKeyTypesCertificatePublicKeyTypes)SignedCertificateTimestamp) DirectoryNameDNSName GeneralName IPAddress OtherName RegisteredID RFC822NameUniformResourceIdentifier_IPAddressTypes)NameRelativeDistinguishedName)CRLEntryExtensionOID ExtensionOIDObjectIdentifierOCSPExtensionOIDExtensionTypeVar ExtensionTypeT)bound covariantcBt|trC|jtjj tj j}nt|trC|jtjjtj j}nW|jtjj tj j}tj|}tj|j!SN) isinstancer public_bytesr EncodingDER PublicFormatPKCS1r X962UncompressedPointSubjectPublicKeyInforparse_spki_for_datahashlibsha1digest) public_keydata serializeds p/mnt/ssd/data/Dropbox/adrian/vault-secondbrain/venv/lib/python3.12/site-packages/cryptography/x509/extensions.py_key_identifier_from_public_keyr63s*l+&&  " " & &  & & , ,  J 6 7&&  " " ' '  & & 8 8   ,,  " " & &  & & ; ; '' 3 <<  $ $ &&c.dfd }fd}fd}|||fS)Nc.tt|Sr$)lengetattrself field_names r5 len_methodz*_make_sequence_methods..len_methodLs74,--r7c.tt|Sr$)iterr;r<s r5 iter_methodz+_make_sequence_methods..iter_methodOsGD*-..r7c"t||Sr$)r;)r=idxr>s r5getitem_methodz._make_sequence_methods..getitem_methodRstZ(--r7returnint)r>r?rBrEs` r5_make_sequence_methodsrJKs!./. {N 22r7c eZdZdfd ZxZS)DuplicateExtensionc2t||||_yr$super__init__oidr=msgrQ __class__s r5rPzDuplicateExtension.__init__Y r7rSstrrQrrGNone__name__ __module__ __qualname__rP __classcell__rTs@r5rLrLX r7rLc eZdZdfd ZxZS)ExtensionNotFoundc2t||||_yr$rNrRs r5rPzExtensionNotFound.__init___rUr7rVrYr^s@r5rara^r_r7rac eZdZUded<ddZy)r z!typing.ClassVar[ObjectIdentifier]rQctd|)z7 Serializes the extension type to DER. z3public_bytes is not implemented for extension type )NotImplementedErrorr=s r5r&zExtensionType.public_bytesgs"A$ J  r7NrGbytes)rZr[r\__annotations__r&rIr7r5r r ds ** r7) metaclasscTeZdZddZ ddZ d dZed\ZZZ d dZ y) Extensionsc$t||_yr$)list _extensions)r= extensionss r5rPzExtensions.__init__qs +r7cV|D]}|j|k(s|cStd|d|)NNo  extension was found)rQra)r=rQexts r5get_extension_for_oidz Extensions.get_extension_for_oidts< Cww#~   #cU*> ?EEr7c|tur td|D]}t|j|s|cSt d|d|j )Nz|UnrecognizedExtension can't be used with get_extension_for_class because more than one instance of the class may be present.rrrs)UnrecognizedExtension TypeErrorr%valuerarQ)r=extclassrts r5get_extension_for_classz"Extensions.get_extension_for_class}se , ,)   C#))X.   (/ 0(,,  r7roc"d|jdS)Nz )rorfs r5__repr__zExtensions.__repr__sd../r22r7N)rpz"Iterable[Extension[ExtensionType]]rGrX)rQrrGzExtension[ExtensionType])rzztype[ExtensionTypeVar]rGzExtension[ExtensionTypeVar]rGrW) rZr[r\rPrur{rJ__len____iter__ __getitem__r~rIr7r5rlrlpsL,F#F !F . $ $&z2AuthorityKeyIdentifier.__init__..s/0 1k*z;authority_cert_issuer must be a list of GeneralName objectsz/authority_cert_serial_number must be an integer) ValueErrorrnallrxr%rH_key_identifier_authority_cert_issuer_authority_cert_serial_number)r=key_identifierauthority_cert_issuerauthority_cert_serial_numbers r5rPzAuthorityKeyIdentifier.__init__s "T ) (D 0 4  ! ,$()>$? !4I  ( 3J (#= MN N-&;#-I*r7c.t|}||ddSNrrrr6)clsr2r1s r5from_issuer_public_keyz-AuthorityKeyIdentifier.from_issuer_public_keys$1<!"&)-  r7c,||jddSrr1)rskis r5"from_issuer_subject_key_identifierz9AuthorityKeyIdentifier.from_issuer_subject_key_identifiers::"&)-  r7cVd|jd|jd|jdS)Nz'??r7c|jSr$rrfs r5r1zSubjectKeyIdentifier.digest* ||r7c|jSr$rrfs r5rz#SubjectKeyIdentifier.key_identifier.rr7c"d|jdS)Nzrr7N)r1rhrGrX)r2rrGrrgrrrF)rZr[r\rSUBJECT_KEY_IDENTIFIERrQrPrrrr1rr~rrr&rIr7r5rrsx  - -C@2@ @@ AA !6r7rcdeZdZejZddZed\ZZ Z d dZ d dZ d dZ d dZy) AuthorityInformationAccesscbt|}td|Ds td||_y)Nc3<K|]}t|tywr$r%AccessDescriptionrs r5rz6AuthorityInformationAccess.__init__..GJ:a!23Jr@Every item in the descriptions list must be an AccessDescriptionrnrrx _descriptionsr= descriptionss r5rPz#AuthorityInformationAccess.__init__E6L) J\JJ$  *r7rc"d|jdS)Nztt|jSr$rrrrfs r5rz#AuthorityInformationAccess.__hash__ZE$,,-..r7c,tj|Sr$rrfs r5r&z'AuthorityInformationAccess.public_bytes]rr7NrzIterable[AccessDescription]rGrXrrrFrg)rZr[r\rAUTHORITY_INFORMATION_ACCESSrQrPrJrrrr~rrr&rIr7r5rrBs:  3 3C*&.frrrrrs r5rPz!SubjectInformationAccess.__init__drr7rc"d|jdS)Nz,>+?rBBr7c`t|tstS|j|jk(Sr$)r%rrrrs r5rzSubjectInformationAccess.__eq__ss*%!9:! !!!U%8%888r7c>tt|jSr$rrfs r5rz!SubjectInformationAccess.__hash__yrr7c,tj|Sr$rrfs r5r&z%SubjectInformationAccess.public_bytes|rr7NrrrrFrg)rZr[r\rSUBJECT_INFORMATION_ACCESSrQrPrJrrrr~rrr&rIr7r5rras:  1 1C*&$$(=(== r7cDt|j|jfSr$)rrr rfs r5rzAccessDescription.__hash__sT'')=)=>??r7c|jSr$)rrfs r5rzAccessDescription.access_method"""r7c|jSr$)rrfs r5r z!AccessDescription.access_location$$$r7N)rrr rrGrXrrrFrGr)rGr) rZr[r\rPr~rrrrr rIr7r5rrsW 0- 0@K 0  0  @##%%r7rcpeZdZejZd dZed dZed dZ d dZ d dZ ddZ ddZ y)BasicConstraintsct|ts td| |s td| t|tr|dkr td||_||_y)Nzca must be a boolean valuez)path_length must be None when ca is Falserz2path_length must be a non-negative integer or None)r%rrxrrH_ca _path_length)r=ca path_lengths r5rPzBasicConstraints.__init__sc"d#89 9  "2HI I  ";, aD 'r7c|jSr$)rrfs r5rzBasicConstraints.ca xxr7c|jSr$)rrfs r5rzBasicConstraints.path_length   r7c<d|jd|jdS)Nz. 12Jq+ , r?distribution_points must be a list of DistributionPoint objectsrnrrx_distribution_pointsr=distribution_pointss r5rPzCRLDistributionPoints.__init__C##67 6I    %8!r7r5c"d|jdS)Nztt|jSr$rrr5rfs r5rzCRLDistributionPoints.__hash__E$33455r7c,tj|Sr$rrfs r5r&z"CRLDistributionPoints.public_bytesrr7Nr7zIterable[DistributionPoint]rGrXrrrFrg)rZr[r\rCRL_DISTRIBUTION_POINTSrQrPrJrrrr~rrr&rIr7r5r-r-sN  . .C 8#> 8  8&<&"GX{GG 66r7r-cleZdZejZ ddZed\ZZ Z d dZ d dZ d dZ d dZy) FreshestCRLcbt|}td|Ds td||_y)Nc3<K|]}t|tywr$r0rs r5rz'FreshestCRL.__init__..r2rr3r4r6s r5rPzFreshestCRL.__init__r8r7r5c"d|jdS)Nz tt|jSr$r=rfs r5rzFreshestCRL.__hash__6r>r7c,tj|Sr$rrfs r5r&zFreshestCRL.public_bytes9rr7Nr@rrrFrg)rZr[r\r FRESHEST_CRLrQrPrJrrrr~rrr&rIr7r5rCrCsM  # #C 8#> 8  8&<&"GX{=G 66r7rCceZdZ d dZd dZd dZd dZeddZeddZ eddZ eddZ y )r1c|r |r td|s|s |s td|(t|}td|Ds td|rt |t s td|(t|}td|Ds td|r-t |t rtd|Ds td |r/tj|vstj|vr td ||_ ||_ ||_ ||_ y) NzOYou cannot provide both full_name and relative_name, at least one must be None.z?Either full_name, relative_name or crl_issuer must be provided.c3<K|]}t|tywr$rrs r5rz-DistributionPoint.__init__..RsEaz![1Erz/full_name must be a list of GeneralName objectsz1relative_name must be a RelativeDistinguishedNamec3<K|]}t|tywr$rrs r5rz-DistributionPoint.__init__.._sFaz![1Frz2crl_issuer must be None or a list of general namesc3<K|]}t|tywr$r% ReasonFlagsrs r5rz-DistributionPoint.__init__..fsCaz![1Crz0reasons must be None or frozenset of ReasonFlagszLunspecified and remove_from_crl are not valid reasons in a DistributionPoint)rrnrrxr%r frozensetrQ unspecifiedremove_from_crl _full_name_relative_name_reasons _crl_issuer)r= full_name relative_namereasons crl_issuers r5rPzDistributionPoint.__init__>s/ * z   YIE9EEE m-FGG  !j)JF:FFH 7I.C7CCNO O   # #w .**g5$  $+ %r7c$dj|S)Nz}formatrfs r5r~zDistributionPoint.__repr__xs **0&, r7ct|tstS|j|jk(xrO|j|jk(xr4|j |j k(xr|j |j k(Sr$)r%r1rrYrZr[r\rs r5rzDistributionPoint.__eq__sq%!23! ! NNeoo - 4""e&9&99 4  - 45#3#33  r7c|jt|j}nd}|jt|j}nd}t||j|j |fSr$)rYrr\rrZr[)r=fnr\s r5rzDistributionPoint.__hash__sZ >> %16t~~1FBB ?? &9>t9OJJR++T\\:FGGr7c|jSr$rUrfs r5rYzDistributionPoint.full_name r7c|jSr$rVrfs r5rZzDistributionPoint.relative_namerr7c|jSr$)rWrfs r5r[zDistributionPoint.reasonss }}r7c|jSr$)rXrfs r5r\zDistributionPoint.crl_issuerrr7N) rYrrZ RelativeDistinguishedName | Noner[frozenset[ReasonFlags] | Noner\rrGrXrrrFrrGrjrGrk) rZr[r\rPr~rrrrYrZr[r\rIr7r5r1r1=s8&/8&88&/ 8& 1 8&  8&t    H##  r7r1c4eZdZdZdZdZdZdZdZdZ dZ d Z d Z y ) rQrS keyCompromise cACompromiseaffiliationChanged supersededcessationOfOperationcertificateHoldprivilegeWithdrawn aACompromise removeFromCRLN) rZr[r\rSkey_compromise ca_compromiseaffiliation_changedrrcessation_of_operationcertificate_holdprivilege_withdrawn aa_compromiserTrIr7r5rQrQs8K$N"M.J3(."M%Or7rQ)rrrrrrrr c|eZdZejZ d dZd dZd dZd dZ e d dZ e d dZ ddZ y)PolicyConstraintsc|t|ts td|t|ts td| | td||_||_y)Nz>require_explicit_policy must be a non-negative integer or Nonez=inhibit_policy_mapping must be a non-negative integer or NonezSAt least one of require_explicit_policy and inhibit_policy_mapping must not be None)r%rHrxr_require_explicit_policy_inhibit_policy_mapping)r=require_explicit_policyinhibit_policy_mappings r5rPzPolicyConstraints.__init__s # .z #S8   " -j "C7 O  " ).E.M:  )@%'=$r7c$dj|S)Nz{r^rfs r5r~zPolicyConstraints.__repr__s  r7ct|tstS|j|jk(xr|j|jk(Sr$)r%rrrrrs r5rzPolicyConstraints.__eq__sH%!23! !  ( (E,I,I I L++u/K/KK r7cDt|j|jfSr$)rrrrfs r5rzPolicyConstraints.__hash__!s#  ) )4+F+F G  r7c|jSr$)rrfs r5rz)PolicyConstraints.require_explicit_policy&s,,,r7c|jSr$)rrfs r5rz(PolicyConstraints.inhibit_policy_mapping*+++r7c,tj|Sr$rrfs r5r&zPolicyConstraints.public_bytes.rr7N)rrrrrGrXrrrFrrg)rZr[r\rPOLICY_CONSTRAINTSrQrPr~rrrrrr&rIr7r5rrsj  ) )C>!+>!+>  >:   --,,6r7rcdeZdZejZddZed\ZZ Z d dZ d dZ d dZ d dZy) CertificatePoliciescbt|}td|Ds td||_y)Nc3<K|]}t|tywr$)r%PolicyInformationrs r5rz/CertificatePolicies.__init__..7sF:a!23Frz;Every item in the policies list must be a PolicyInformation)rnrrx _policies)r=policiess r5rPzCertificatePolicies.__init__5s2>FXFFM "r7rc"d|jdS)Nztt|jSr$)rrrrfs r5rzCertificatePolicies.__hash__IE$..)**r7c,tj|Sr$rrfs r5r&z CertificatePolicies.public_bytesLrr7N)rzIterable[PolicyInformation]rGrXrrrFrg)rZr[r\rCERTIFICATE_POLICIESrQrPrJrrrr~rrr&rIr7r5rr2s9  + +C"&.]s!56 1sJ/0s "zMpolicy_qualifiers must be a list of strings and/or UserNotice objects or None)r%rrx_policy_identifierrnr_policy_qualifiers)r=policy_identifierpolicy_qualifierss r5rPzPolicyInformation.__init__Qsi +-=>KL L"3  ( $%6 7 :K 1 #4r7c<d|jd|jdS)Nz%,>?@@r7c|jSr$)rrfs r5rzUserNotice.notice_reference%%%r7c|jSr$)rrfs r5rzUserNotice.explicit_textrr7N)rNoticeReference | Noner str | NonerGrXrrrF)rGrrGr) rZr[r\rPr~rrrrrrIr7r5rrs[ ,0 ," ,  ,  A&&##r7rc\eZdZ ddZd dZd dZd dZed dZed dZ y)rcp||_t|}td|Ds td||_y)Nc3<K|]}t|tywr$)r%rHrs r5rz+NoticeReference.__init__..s>!:a%>rz)notice_numbers must be a list of integers) _organizationrnrrx_notice_numbers)r= organizationnotice_numberss r5rPzNoticeReference.__init__s8 *n->~>>GH H-r7c<d|jd|jdS)Nz->,AB"112" 6 r7ct|tstS|j|jk(xr|j|jk(Sr$)r%rrrrrs r5rzNoticeReference.__eq__sF%1! !   !3!3 3 <##u';';; r7cVt|jt|jfSr$)rrrrrfs r5rzNoticeReference.__hash__s#T&&d.A.A(BCDDr7c|jSr$)rrfs r5rzNoticeReference.organization!!!r7c|jSr$)rrfs r5rzNoticeReference.notice_numbersrr7N)rrrz Iterable[int]rGrXrrrFr)rGz list[int]) rZr[r\rPr~rrrrrrIr7r5rrs[ .  .& .  .  E""$$r7rcdeZdZejZddZed\ZZ Z d dZ d dZ d dZ d dZy) ExtendedKeyUsagecbt|}td|Ds td||_y)Nc3<K|]}t|tywr$r%rrs r5rz,ExtendedKeyUsage.__init__..sCq:a!12Crz9Every item in the usages list must be an ObjectIdentifier)rnrrx_usages)r=usagess r5rPzExtendedKeyUsage.__init__s2fCFCCK  r7rc"d|jdS)Nz44r7c`t|tstS|j|jk(Sr$)r%rrrrs r5rzExtendedKeyUsage.__eq__s&%!12! !||u}},,r7c>tt|jSr$)rrrrfs r5rzExtendedKeyUsage.__hash__sE$,,'((r7c,tj|Sr$rrfs r5r&zExtendedKeyUsage.public_bytesrr7N)rIterable[ObjectIdentifier]rGrXrrrFrg)rZr[r\rEXTENDED_KEY_USAGErQrPrJrrrr~rrr&rIr7r5rrs9  ) )C&rIrfs r5r~zOCSPNoCheck.__repr__s r7c,tj|Sr$rrfs r5r&zOCSPNoCheck.public_bytes rr7NrrFrrg) rZr[r\r OCSP_NO_CHECKrQrrr~r&rIr7r5rrs!  $ $C !!6r7rcDeZdZejZddZddZddZd dZ y) PrecertPoisonc0t|tstSyr)r%rrrs r5rzPrecertPoison.__eq__s%/! !r7c ttSr$)rrrfs r5rzPrecertPoison.__hash__s M""r7cy)NzrIrfs r5r~zPrecertPoison.__repr__s"r7c,tj|Sr$rrfs r5r&zPrecertPoison.public_bytesrr7NrrFrrg) rZr[r\rPRECERT_POISONrQrrr~r&rIr7r5rr s!  % %C ##6r7rcdeZdZejZddZed\ZZ Z d dZ d dZ d dZ d dZy) TLSFeaturec~t|}td|Drt|dk(r td||_y)Nc3<K|]}t|tywr$)r%TLSFeatureTypers r5rz&TLSFeature.__init__..&sDaJq.1Drrz@features must be a list of elements from the TLSFeatureType enum)rnrr:rx _features)r=featuress r5rPzTLSFeature.__init__#s@>D8DD8}!  "r7rc"d|jdS)Nztt|jSr$)rrrrfs r5rzTLSFeature.__hash__;rr7c,tj|Sr$rrfs r5r&zTLSFeature.public_bytes>rr7N)rzIterable[TLSFeatureType]rGrXrrrFrg)rZr[r\r TLS_FEATURErQrPrJrrrr~rrr&rIr7r5rr s9  " "C "&HI I%r7c"d|jdS)Nz> B Bct|tstS|j|jk(xr|j|jk(xr|j |j k(xr|j |j k(xr|j|jk(xrj|j|jk(xrO|j|jk(xr4|j|jk(xr|j|jk(Sr$) r%r rrrrrrrrrrrs r5rzKeyUsage.__eq__s%*! !  " "e&=&= = <''5+C+CC <%%)?)?? <&&%*A*AA <""e&9&99  < ""e&9&99  <  /  <##u';';; <##u';';; r7c t|j|j|j|j|j |j |j|j|jf Sr$) rrrrrrrrrrrfs r5rzKeyUsage.__hash__sc&&''%%&&"""" ####   r7c,tj|Sr$rrfs r5r&zKeyUsage.public_bytesrr7N)rrrrrrrrrrrrrrrrrrrGrXr!rrrFrg)rZr[r\r KEY_USAGErQrPrrrrrrrrrrr~rrr&rIr7r5r r ps<  C,,!, ,  ,  ,,,,, ,8''((&&''####'''' *  6r7r c|eZdZejZ d dZed dZed dZ d dZ d dZ d dZ ddZ y)PrivateKeyUsagePeriodct|tjs | tdt|tjs | td| | td||||kDr td||_||_y)Nz.not_before must be a datetime.datetime or Nonez-not_after must be a datetime.datetime or Nonez9At least one of not_before and not_after must not be Nonez#not_before must be before not_after)r%datetimerxr _not_before _not_after)r= not_before not_afters r5rPzPrivateKeyUsagePeriod.__init__s :x'8'89&LM M9h&7&78%KL L  )"3K   "%Y&BC C%#r7c|jSr$)r4rfs r5r6z PrivateKeyUsagePeriod.not_beforerr7c|jSr$)r5rfs r5r7zPrivateKeyUsagePeriod.not_afterrer7c<d|jd|jdS)Nz"rGrX)rGr>rrrFrg)rZr[r\rPRIVATE_KEY_USAGE_PERIODrQrPrr6r7r~rrr&rIr7r5r1r1sk  / /C$,$,$  $@    76r7r1ceZdZejZ d dZd dZddZddZ ddZ ddZ ddZ e ddZe dd Zdd Zy )NameConstraintsc^|Ft|}|s tdtd|Ds td|j ||Ft|}|s tdtd|Ds td|j || | td||_||_y)Nz3permitted_subtrees must be a non-empty list or Nonec3<K|]}t|tywr$rrs r5rz+NameConstraints.__init__..DsNaz![1Nrz@permitted_subtrees must be a list of GeneralName objects or Nonez2excluded_subtrees must be a non-empty list or Nonec3<K|]}t|tywr$rrs r5rz+NameConstraints.__init__..RMaz![1Mrz?excluded_subtrees must be a list of GeneralName objects or NonezIAt least one of permitted_subtrees and excluded_subtrees must not be None)rnrrrx_validate_tree_permitted_subtrees_excluded_subtrees)r=permitted_subtreesexcluded_subtreess r5rPzNameConstraints.__init__9s  )!%&8!9 % IN;MNN    2 3  ( $%6 7 $ HM;LMM    1 2  %*;*C#  $6 "3r7ct|tstS|j|jk(xr|j|jk(Sr$)r%rArrJrIrs r5rzNameConstraints.__eq__csG%1! !  " "e&=&= = D''5+C+CC r7cH|j||j|yr$)_validate_ip_name_validate_dns_namer=trees r5rFzNameConstraints._validate_treels t$ %r7c>td|Dr tdy)Nc3K|]K}t|txr5t|jtjtj f Mywr$)r%rry ipaddress IPv4Network IPv6Networkrnames r5rz4NameConstraints._validate_ip_name..qsR  tY '  Y22I4I4IJ  sAAzGIPAddress name constraints must be an IPv4Network or IPv6Network object)anyrxrOs r5rMz!NameConstraints._validate_ip_nameps2     &  r7c>td|Dr tdy)Nc3\K|]$}t|txrd|jv&yw)*N)r%rryrVs r5rz5NameConstraints._validate_dns_name..~s- @DJtW % ;#*; ; s*,zDDNSName name constraints must not contain the '*' wildcard character)rXrrOs r5rNz"NameConstraints._validate_dns_name}s0  HL    r7c<d|jd|jdS)Nz$? ? ! r7c|jSr$rhrfs r5rQz Extension.oid yyr7c|jSr$)rirfs r5rkzExtension.criticalr'r7c|jSr$rjrfs r5ryzExtension.value {{r7cVd|jd|jd|jdS)Nz.sE!:a-Erz^Every item in the general_names list must be an object conforming to the GeneralName interface)rnrrx_general_namesr= general_namess r5rPzGeneralNames.__init__s7]+ E}EEA  ,r7r{cyr$rIr=types r5get_values_for_typez GeneralNames.get_values_for_type r7cyr$rIrs r5rz GeneralNames.get_values_for_typer7cyr$rIrs r5rz GeneralNames.get_values_for_type"%r7cyr$rIrs r5rz GeneralNames.get_values_for_type!$r7cyr$rIrs r5rz GeneralNames.get_values_for_typer7cfd|D}tk7r|Dcgc]}|jc}St|Scc}w)Nc3<K|]}t|s|ywr$)r%)rirs r5rz3GeneralNames.get_values_for_type..s7a:a#67s)rryrn)r=robjsrs ` r5rz GeneralNames.get_values_for_types;&847 9 %)*AGG* *Dz+s;c"d|jdS)Nztt|jSr$)rrr{rfs r5rzGeneralNames.__hash__%sE$--.//r7Nr}rcrGrXrzBtype[DNSName] | type[UniformResourceIdentifier] | type[RFC822Name]rG list[str]rztype[DirectoryName]rGz list[Name]rztype[RegisteredID]rGzlist[ObjectIdentifier]rztype[IPAddress]rGzlist[_IPAddressTypes]rztype[OtherName]rGzlist[OtherName]rztype[DNSName] | type[DirectoryName] | type[IPAddress] | type[OtherName] | type[RFC822Name] | type[RegisteredID] | type[UniformResourceIdentifier]rGzYlist[_IPAddressTypes] | list[str] | list[OtherName] | list[Name] | list[ObjectIdentifier]rrrF)rZr[r\rPrJrrrtypingoverloadrr~rrrIr7r5rxrxs,&<bAAr7c`t|tstS|j|jk(Sr$)r%rrr{rs r5rzSubjectAlternativeName.__eq__ds*%!78! !""e&:&:::r7c,t|jSr$rr{rfs r5rzSubjectAlternativeName.__hash__jD''((r7c,tj|Sr$rrfs r5r&z#SubjectAlternativeName.public_bytesmrr7NrrrrrrrrrrFrg)rZr[r\rSUBJECT_ALTERNATIVE_NAMErQrPrJrrrrrrr~rrr&rIr7r5rr)s"  / /C:&<rr7N)rdatetime.datetimerGrXrrrF)rGrrg)rZr[r\rINVALIDITY_DATErQrPr~rrrrrr&rIr7r5rrsQ  . .C0 L= *%%NN 6r7rcleZdZejZ ddZed\ZZ Z d dZ d dZ d dZ d dZy) )PrecertificateSignedCertificateTimestampscbt|}td|Ds td||_y)Nc3<K|]}t|tywr$r%rrscts r5rzEPrecertificateSignedCertificateTimestamps.__init__..J   s6 7 rYEvery item in the signed_certificate_timestamps list must be a SignedCertificateTimestamprnrrx_signed_certificate_timestampsr=signed_certificate_timestampss r5rPz2PrecertificateSignedCertificateTimestamps.__init__ED)--J(K% 4  / /L+r7rc dt|dS)Nz+tt|jSr$rrrrfs r5rz2PrecertificateSignedCertificateTimestamps.__hash__[E$==>??r7c`t|tstS|j|jk(Sr$)r%rrrrs r5rz0PrecertificateSignedCertificateTimestamps.__eq__^s1%!JK! !  / /33 4 r7c,tj|Sr$rrfs r5r&z6PrecertificateSignedCertificateTimestamps.public_bytesgrr7Nrz$Iterable[SignedCertificateTimestamp]rGrXrrFrrg)rZr[r\r%PRECERT_SIGNED_CERTIFICATE_TIMESTAMPSrQrPrJrrrr~rrr&rIr7r5rrBsS  < .srrrrrs r5rPz$SignedCertificateTimestamps.__init__nrr7rc dt|dS)Nztt|jSr$rrfs r5rz$SignedCertificateTimestamps.__hash__rr7c`t|tstS|j|jk(Sr$)r%rrrrs r5rz"SignedCertificateTimestamps.__eq__s1%!<=! !  / /33 4 r7c,tj|Sr$rrfs r5r&z(SignedCertificateTimestamps.public_bytesrr7NrrrFrrg)rZr[r\rSIGNED_CERTIFICATE_TIMESTAMPSrQrPrJrrrr~rrr&rIr7r5rrksR  4 4C L'K L  L&<(&"GX{>@ 6r7rc^eZdZejZddZd dZd dZd dZ e d dZ d dZ y) OCSPNoncecHt|ts td||_y)Nznonce must be bytes)r%rhrx_nonce)r=nonces r5rPzOCSPNonce.__init__s%'12 2 r7c`t|tstS|j|jk(Sr$)r%rrrrs r5rzOCSPNonce.__eq__s%%+! !zzU[[((r7c,t|jSr$)rrrfs r5rzOCSPNonce.__hash__sDJJr7c"d|jdS)NzK|]}t|t ywr$r)rrs r5rz3OCSPAcceptableResponses.__init__..sFq:a!122Fsz'All responses must be ObjectIdentifiers)rnrXrx _responses)r= responsess r5rPz OCSPAcceptableResponses.__init__s,O FIF FEF F#r7c`t|tstS|j|jk(Sr$)r%rrrrs r5rzOCSPAcceptableResponses.__eq__s(%!89! !%"2"222r7c>tt|jSr$)rrrrfs r5rz OCSPAcceptableResponses.__hash__sE$//*++r7c"d|jdS)Nz#.rErz:only_some_reasons must be None or frozenset of ReasonFlagszTunspecified and remove_from_crl are not valid reasons in an IssuingDistributionPointzuonly_contains_user_certs, only_contains_ca_certs, indirect_crl and only_contains_attribute_certs must all be boolean.rz}Only one of the following can be set to True: only_contains_user_certs, only_contains_ca_certs, only_contains_attribute_certszCannot create empty extension: if only_contains_user_certs, only_contains_ca_certs, indirect_crl, and only_contains_attribute_certs are all False, then either full_name, relative_name, or only_some_reasons must have a value.)rnr%rRrrxrQrSrTrrr:rX_only_contains_user_certs_only_contains_ca_certs _indirect_crl_only_contains_attribute_certs_only_some_reasonsrUrV) r=rYrZonly_contains_user_certsonly_contains_ca_certsonly_some_reasons indirect_crlonly_contains_attribute_certscrl_constraintsrs r5rPz!IssuingDistributionPoint.__init__sl  YI ,i8M;LMML    # #'8 8**.??+  / 6148<.8$?'  % " )  ?0aa0 1A 50  (&-!   % *B&'=$).K+"3#+A1s D7D7cd|jd|jd|jd|jd|jd|j d|j dS) Nz$>2BC!//01((,(E(E'FG&&*&A&A%BC!!%!7!7 89 --./-112" 6 r7ct|tstS|j|jk(xr|j|jk(xr|j |j k(xrj|j |j k(xrO|j|jk(xr4|j|jk(xr|j|jk(Sr$) r%r'rrYrZr/r0r1r2r3rs r5rzIssuingDistributionPoint.__eq__2s%!9:! ! NNeoo - 3""e&9&99 3--1O1OO 3++u/K/KK 3&&%*A*AA  3 !!U%7%77  3 22223 r7c |jt|j}nd}t||j|j|j |j |j|jfSr$) rYrrrZr/r0r1r2r3)r=rYs r5rz!IssuingDistributionPoint.__hash__Asj >> %8=dnn8MII""--++&&!!22   r7c|jSr$rdrfs r5rYz"IssuingDistributionPoint.full_nameSrer7c|jSr$rgrfs r5rZz&IssuingDistributionPoint.relative_nameWrr7c|jSr$)r*rfs r5r/z1IssuingDistributionPoint.only_contains_user_certs[s---r7c|jSr$)r+rfs r5r0z/IssuingDistributionPoint.only_contains_ca_certs_rr7c|jSr$)r.rfs r5r1z*IssuingDistributionPoint.only_some_reasonscrr7c|jSr$)r,rfs r5r2z%IssuingDistributionPoint.indirect_crlirr7c|jSr$)r-rfs r5r3z6IssuingDistributionPoint.only_contains_attribute_certsms222r7c,tj|Sr$rrfs r5r&z%IssuingDistributionPoint.public_bytesqrr7N)rYrrZrjr/rr0rr1rkr2rr3rrGrXrrrFrrlr!rmrg)rZr[r\rISSUING_DISTRIBUTION_POINTrQrPr~rrrrYrZr/r0r1r2r3r&rIr7r5r'r's  1 1CS,/S,8S,#' S, !% S, 9 S,S,(,S, S,j     $##..,,' &'' ""336r7r'ceZdZejZ d dZed dZed dZ ed dZ d dZ ddZ ddZ ddZy )MSCertificateTemplatect|ts td||_|t|tr|t|ts td||_||_y)Noid must be an ObjectIdentifierz8major_version and minor_version must be integers or None)r%rrx _template_idrH_major_version_minor_version)r= template_id major_version minor_versions r5rPzMSCertificateTemplate.__init__xsc +'78=> >'  %j.L  %j.LJ ,+r7c|jSr$)rErfs r5rHz!MSCertificateTemplate.template_idrr7c|jSr$)rFrfs r5rIz#MSCertificateTemplate.major_versionrr7c|jSr$)rGrfs r5rJz#MSCertificateTemplate.minor_versionrr7cVd|jd|jd|jdS)Nz#*R1A"B<= = ?:c3#7/0 0  JtS$901 1  r7c|jSr$)rVrfs r5rYzNamingAuthority.idrr7c|jSr$)rWrfs r5rZzNamingAuthority.urlrnr7c|jSr$)rXrfs r5r[zNamingAuthority.texts zzr7cVd|jd|jd|jdS)Nz.sFT:dC(Frz5Every item in the profession_items list must be a strc3<K|]}t|tywr$r)rrQs r5rz*ProfessionInfo.__init__.. s69 3 01rzBEvery item in the profession_oids list must be an ObjectIdentifierz!registration_number must be a strz!add_profession_info must be bytes) r%rTrxrnrrWrh_naming_authority_profession_items_profession_oids_registration_number_add_profession_info)r=naming_authorityprofession_itemsprofession_oidsregistration_numberadd_profession_infos r5rPzProfessionInfo.__init__s  ' o1 HI I 01F5EFFG   &"?3O=L '  *: 4 ?@ @  *: 4 ?@ @!1!1 /$7!$7!r7c|jSr$rjrfs r5rozProfessionInfo.naming_authority rr7c|jSr$)rkrfs r5rpzProfessionInfo.profession_items rr7c|jSr$)rlrfs r5rqzProfessionInfo.profession_oids rr7c|jSr$)rmrfs r5rrz"ProfessionInfo.registration_number$ (((r7c|jSr$)rnrfs r5rsz"ProfessionInfo.add_profession_info( ryr7c d|jd|jd|jd|jd|jd S)Nz!b  B r7c8t|tstS|j|jk(xrj|j|jk(xrO|j |j k(xr4|j |j k(xr|j|jk(Sr$)r%rdrrorprqrrrsrs r5rzProfessionInfo.__eq__5 s%0! !  ! !U%;%; ; F%%)?)?? F$$(=(== F((E,E,EE F((E,E,EE  r7c|jt|j}nd}t|jt|j||j |j fSr$)rqrrrorprrrs)r=rqs r5rzProfessionInfo.__hash__A sa    +#D$8$89O"O%%d++,((((    r7N) roNamingAuthority | Nonerpz Iterable[str]rqz!Iterable[ObjectIdentifier] | NonerrrrsrrGrXrGr~)rGr)rGzlist[ObjectIdentifier] | NonerrrrrF) rZr[r\rPrrorprqrrrsr~rrrIr7r5rdrds+80+8(+8; +8 ( +8 * +8 +8Z&&&&%%))))     r7rdcreZdZ d dZed dZed dZed dZd dZddZ ddZ y) Admissionc|t|ts td|t|ts tdt |}t d|Ds td||_||_||_y)Nz)admission_authority must be a GeneralNamerfc3<K|]}t|tywr$)r%rd)rinfos r5rz%Admission.__init__..c s 15Jt^ , rz@Every item in the profession_infos list must be a ProfessionInfo) r%rrxrTrnr_admission_authorityrj_profession_infos)r=admission_authorityroprofession_infoss r5rPzAdmission.__init__R s  *: 4 GH H  ' o1 HI I 01 9I  !  %8!!1!1r7c|jSr$)rrfs r5rzAdmission.admission_authorityo ryr7c|jSr$rurfs r5rozAdmission.naming_authoritys rr7c|jSr$)rrfs r5rzAdmission.profession_infosw rr7cVd|jd|jd|jdS)Nz. s 1:Jy) , rzBEvery item in the contents_of_admissions list must be an Admission)r%rrxrnr _authority _admissions)r= authority admissionss r5rPzAdmissions.__init__ sc  I{)K=> >*%  >H    $%r7rc|jSr$)rrfs r5rzAdmissions.authority rer7c<d|jd|jdS)Nz>r7c,tj|Sr$rrfs r5r&zAdmissions.public_bytes rr7N)rrrzIterable[Admission]rGrXrrrrFrg)rZr[r\r ADMISSIONSrQrPrJrrrrrr~rrr&rIr7r5rr sg  ! !C&%&(&  &(& >  r7c|jSr$rmrfs r5rQzUnrecognizedExtension.oid rnr7c|jSr$rqrfs r5ryzUnrecognizedExtension.value rrr7c<d|jd|jdS)NzrW)u __future__rabcr3r/rSrcollections.abcrr cryptographyr"cryptography.hazmat.bindings._rustrrrcryptography.hazmat.primitivesr r ,cryptography.hazmat.primitives.asymmetric.ecr -cryptography.hazmat.primitives.asymmetric.rsar /cryptography.hazmat.primitives.asymmetric.typesr r*cryptography.x509.certificate_transparencyrcryptography.x509.general_namerrrrrrrrrcryptography.x509.namerrcryptography.x509.oidrrrrTypeVarrr6rJ ExceptionrLraABCMetar rlrrrrrrrr$r-rCr1EnumrQrxryrzrrr{r|r}r~_REASON_BIT_MAPPING_CRLREASONFLAGSrSrT_CRL_ENTRY_REASON_ENUM_TO_CODErrrrrrrrrrry_TLS_FEATURE_TYPE_TO_ENUMrr r1rAGenericrfrxrrrrrrrrrr'rBrTrdrrrw)rs0r5rsP #  .3@GOF   C"6>>o ')' '0 3    ckk  "3"3J6 6:i6]i6X!6=!6H66>6}6>%%%%P+6}+6\6 6:"6M"6J"6-"6Jh h V &%** &4!!  &&))##&&   q##QA&&  !##Qq 0Qq##QA&&  !##Qr ">6 >6B6-6<6'6'r(#(#V%$%$P6}6<6-6&6M6&66DUZZ2@@AQWWaZ@6}6@B6}B6J>6M>6Bp6mp6f-;/0-;`M0M0`E6]E6PE6ME6PE6 E6P6 6:!6]!6H&6 &6R&6-&6R6 6:6m6:d6}d6N86M86v7 7 td d NB B J0606fMy+AsP'