| Server IP : 46.62.235.243 / Your IP : 216.73.216.217 Web Server : Apache/2.4.58 (Ubuntu) System : Linux Linkabili3Dicembre 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.1.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /lib/python3/dist-packages/oauthlib/__pycache__/ |
Upload File : |
�
�Mc� � � � d Z ddlZdZdZdZd e� z Zd e� z ZdZd Z d
e� z Z
d e� z Zd e� z Zd
e� z Z
d e� z ZdZd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z Zd e� z ZdZd e� z Zd e� z Z d e� z Z!d! e� z Z"d" e� z Z#d# e� z Z$d$ e� z Z%d% e� z Z&d& e� z Z'd'� Z(d(� Z)d)� Z*y)*a
Regex for URIs
These regex are directly derived from the collected ABNF in RFC3986
(except for DIGIT, ALPHA and HEXDIG, defined by RFC2234).
They should be processed with re.VERBOSE.
Thanks Mark Nottingham for this code - https://gist.github.com/138549
� Nz[\x30-\x39]z[\x41-\x5A\x61-\x7A]z[\x30-\x39A-Fa-f]z %% %(HEXDIG)s %(HEXDIG)sz-(?: %(ALPHA)s | %(DIGIT)s | \- | \. | _ | ~ )z#(?: : | / | \? | \# | \[ | \] | @ )zI(?: ! | \$ | & | ' | \( | \) |
\* | \+ | , | ; | = )z?(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | : | @ )z%(?: %(gen_delims)s | %(sub_delims)s )z5%(ALPHA)s (?: %(ALPHA)s | %(DIGIT)s | \+ | \- | \. )*z�(?: %(DIGIT)s |
[\x31-\x39] %(DIGIT)s |
1 %(DIGIT)s{2} |
2 [\x30-\x34] %(DIGIT)s |
25 [\x30-\x35]
)
z@%(dec_octet)s \. %(dec_octet)s \. %(dec_octet)s \. %(dec_octet)sz#([A-Fa-f0-9:]+[:$])[A-Fa-f0-9]{1,4}z;v %(HEXDIG)s+ \. (?: %(unreserved)s | %(sub_delims)s | : )+z+\[ (?: %(IPv6address)s | %(IPvFuture)s ) \]z8(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s )*z;(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | : )z5(?: %(IP_literal)s | %(IPv4address)s | %(reg_name)s )z(?: %(DIGIT)s )*z.(?: %(userinfo)s @)? %(host)s (?: : %(port)s)?z
%(pchar)s*z
%(pchar)s+z<(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | @ )+z(?: / %(segment)s )*z,/ (?: %(segment_nz)s (?: / %(segment)s )* )?z&%(segment_nz_nc)s (?: / %(segment)s )*z#%(segment_nz)s (?: / %(segment)s )*� z�(?: %(path_abempty)s |
%(path_absolute)s |
%(path_noscheme)s |
%(path_rootless)s |
%(path_empty)s
)
z(?: %(pchar)s | / | \? )*z�(?: (?: // %(authority)s %(path_abempty)s ) |
%(path_absolute)s |
%(path_rootless)s |
%(path_empty)s
)
z�(?: (?: // %(authority)s %(path_abempty)s ) |
%(path_absolute)s |
%(path_noscheme)s |
%(path_empty)s
)
z:%(relative_part)s (?: \? %(query)s)? (?: \# %(fragment)s)?zM^(?: %(scheme)s : %(hier_part)s (?: \? %(query)s )? (?: \# %(fragment)s )? )$z"^(?: %(URI)s | %(relative_ref)s )$z6^(?: %(scheme)s : %(hier_part)s (?: \? %(query)s )? )$c �T � t j t | t j � S �N)�re�match�URI�VERBOSE��uris �7/usr/lib/python3/dist-packages/oauthlib/uri_validate.py�is_urir
� s � �
�8�8�C��b�j�j�)�)� c �T � t j t | t j � S r )r r �
URI_referencer r
s r �is_uri_referencer � s � �
�8�8�M�3��
�
�3�3r c �T � t j t | t j � S r )r r �absolute_URIr r
s r �is_absolute_urir � s � �
�8�8�L�#�r�z�z�2�2r )+�__doc__r �DIGIT�ALPHA�HEXDIG�locals�pct_encoded�
unreserved�
gen_delims�
sub_delims�pchar�reserved�scheme� dec_octet�IPv4address�IPv6address� IPvFuture�
IP_literal�reg_name�userinfo�host�port� authority�segment�
segment_nz�
segment_nz_nc�path_abempty�
path_absolute�
path_noscheme�
path_rootless�
path_empty�path�query�fragment� hier_part�
relative_part�relative_refr r r r
r r � r r �<module>r: s7 �� �
� ���� �� +�V�X�5�� >���
H�
� 4�
�.�
� K�V� N� �� 4�f�h�>��
B�F�H� L��
�
�h�
� � R�TZ� U� �� 5��
K�V�X�U� � <�f�h�
F�
� G���Q�� J�F� M� �� @�&�(�J�� �V�X�%��
>���H� �
�&�(�
"�� �V�X�
%�
� P�RX�RZ�Z�
� '���1�� @�&�(�J�
� :�F�H�D�
� 7���A�
� �
��
�h�
�� %�v�x�/�� (�&�(�2��
�
�h�
� ��
�h��
� M�v� P� �� W�Y_� Z� �� 6���@�
� I�6� L� ��*�4�3r