
     i                        S r  " S S5      r " S S\5      r " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      r " S S\5      r " S S\5      r	 " S S\5      r
 " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S \5      r " S! S"\5      r " S# S$\5      r " S% S&\5      r/ S'Qrg())z^
HTTP/2 specific exceptions.

These exceptions map to HTTP/2 error codes defined in RFC 7540.
c                   P    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrg)HTTP2ErrorCode   z(HTTP/2 Error Codes (RFC 7540 Section 7).                            	   
          N)__name__
__module____qualname____firstlineno____doc__NO_ERRORPROTOCOL_ERRORINTERNAL_ERRORFLOW_CONTROL_ERRORSETTINGS_TIMEOUTSTREAM_CLOSEDFRAME_SIZE_ERRORREFUSED_STREAMCANCELCOMPRESSION_ERRORCONNECT_ERRORENHANCE_YOUR_CALMINADEQUATE_SECURITYHTTP_1_1_REQUIRED__static_attributes__r       G/var/www/ias/venv/lib/python3.13/site-packages/gunicorn/http2/errors.pyr   r      sR    2HNNMNFMr'   r   c                   4   ^  \ rS rSrSrSrSU 4S jjrSrU =r$ )
HTTP2Error    z!Base exception for HTTP/2 errors.r   c                    > U=(       d    U R                   R                  U l        Ub  X l        [        TU ]  U R                  5        g N)	__class__r   message
error_codesuper__init__)selfr/   r0   r.   s      r(   r2   HTTP2Error.__init__%   s5    8$.."8"8!(O&r'   )r0   r/   NN)	r   r   r   r   r   r0   r2   r&   __classcell__r.   s   @r(   r*   r*       s    +J' 'r'   r*   c                       \ rS rSrSrSrSrg)HTTP2ProtocolError,   zProtocol error detected.r   r   Nr   r   r   r   r   r0   r&   r   r'   r(   r9   r9   ,   
    "Jr'   r9   c                       \ rS rSrSrSrSrg)HTTP2InternalError2   zInternal error occurred.r   r   Nr;   r   r'   r(   r>   r>   2   r<   r'   r>   c                       \ rS rSrSrSrSrg)HTTP2FlowControlError8   zFlow control limits exceeded.r   r   Nr;   r   r'   r(   rA   rA   8   s
    'Jr'   rA   c                       \ rS rSrSrSrSrg)HTTP2SettingsTimeout>   z Settings acknowledgment timeout.r	   r   Nr;   r   r'   r(   rD   rD   >   
    *Jr'   rD   c                       \ rS rSrSrSrSrg)HTTP2StreamClosedD   zStream was closed.r
   r   Nr;   r   r'   r(   rH   rH   D   s
    Jr'   rH   c                       \ rS rSrSrSrSrg)HTTP2FrameSizeErrorJ   zFrame size is incorrect.r   r   Nr;   r   r'   r(   rK   rK   J   r<   r'   rK   c                       \ rS rSrSrSrSrg)HTTP2RefusedStreamP   zStream was refused.r   r   Nr;   r   r'   r(   rN   rN   P   s
    Jr'   rN   c                       \ rS rSrSrSrSrg)HTTP2CancelV   zStream was cancelled.r   r   Nr;   r   r'   r(   rQ   rQ   V   s
    Jr'   rQ   c                       \ rS rSrSrSrSrg)HTTP2CompressionError\   zCompression state error.r   r   Nr;   r   r'   r(   rT   rT   \   r<   r'   rT   c                       \ rS rSrSrSrSrg)HTTP2ConnectErrorb   z Connection error during CONNECT.r   r   Nr;   r   r'   r(   rW   rW   b   rF   r'   rW   c                       \ rS rSrSrSrSrg)HTTP2EnhanceYourCalmh   z"Peer is generating excessive load.r   r   Nr;   r   r'   r(   rZ   rZ   h   s
    ,Jr'   rZ   c                       \ rS rSrSrSrSrg)HTTP2InadequateSecurityn   z!Transport security is inadequate.r   r   Nr;   r   r'   r(   r]   r]   n   s
    +Jr'   r]   c                       \ rS rSrSrSrSrg)HTTP2RequiresHTTP11t   z&HTTP/1.1 is required for this request.r   r   Nr;   r   r'   r(   r`   r`   t   s
    0Jr'   r`   c                   6   ^  \ rS rSrSrSU 4S jjrS rSrU =r$ )HTTP2StreamErrorz   z"Error specific to a single stream.c                 0   > Xl         [        TU ]	  X#5        g r-   )	stream_idr1   r2   )r3   rf   r/   r0   r.   s       r(   r2   HTTP2StreamError.__init__}   s    "-r'   c                 :    SU R                    SU R                   3$ )NzStream z: )rf   r/   )r3   s    r(   __str__HTTP2StreamError.__str__   s    (4<<.99r'   )rf   r5   )	r   r   r   r   r   r2   ri   r&   r6   r7   s   @r(   rc   rc   z   s    ,.: :r'   rc   c                       \ rS rSrSrSrg)HTTP2ConnectionError   z&Error affecting the entire connection.r   Nr   r   r   r   r   r&   r   r'   r(   rl   rl      s    0r'   rl   c                       \ rS rSrSrSrg)HTTP2ConfigurationError   zInvalid HTTP/2 configuration.r   Nrn   r   r'   r(   rp   rp      s    'r'   rp   c                   0   ^  \ rS rSrSrSU 4S jjrSrU =r$ )HTTP2NotAvailable   z;HTTP/2 support is not available (h2 library not installed).c                 :   > U=(       d    Sn[         TU ]  U5        g )Nz;HTTP/2 requires the h2 library: pip install gunicorn[http2])r1   r2   )r3   r/   r.   s     r(   r2   HTTP2NotAvailable.__init__   s    ZZ!r'   r   r-   )r   r   r   r   r   r2   r&   r6   r7   s   @r(   rs   rs      s    E" "r'   rs   )r   r*   r9   r>   rA   rD   rH   rK   rN   rQ   rT   rW   rZ   r]   r`   rc   rl   rp   rs   N)r   r   	Exceptionr*   r9   r>   rA   rD   rH   rK   rN   rQ   rT   rW   rZ   r]   r`   rc   rl   rp   rs   __all__r   r'   r(   <module>ry      s    &	' 	'  J : 
 *  * J 
 : j * :z :1: 1(j ("
 "r'   