HEX
Server: Apache
System: Linux dinesh8189 5.15.98-grsec-sharedvalley-2.lc.el8.x86_64 #1 SMP Thu Mar 9 09:07:30 -03 2023 x86_64
User: cgmgerenciamento1 (814285)
PHP: 8.1.26
Disabled: apache_child_terminate,dl,escapeshellarg,escapeshellcmd,exec,link,mail,openlog,passthru,pcntl_alarm,pcntl_exec,pcntl_fork,pcntl_get_last_error,pcntl_getpriority,pcntl_setpriority,pcntl_signal,pcntl_signal_dispatch,pcntl_sigprocmask,pcntl_sigtimedwait,pcntl_sigwaitinfo,pcntl_strerror,pcntl_wait,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,php_check_syntax,php_strip_whitespace,popen,proc_close,proc_open,shell_exec,symlink,system
Upload Files
File: //proc/thread-self/root/lib/python3.6/site-packages/cloudinit/sources/helpers/akamai.py
import re
from typing import Any, Dict, Optional, Union

from cloudinit import dmi

# dmi data can override
DMI_OVERRIDE_MAP = {
    "als": "allow_local_stage",
    "ais": "allow_init_stage",
    "dhcp": "allow_dhcp",
    "v4": "allow_ipv4",
    "v6": "allow_ipv6",
    "pmp": "preferred_mac_prefixes",
}


def get_dmi_config() -> Dict[str, Union[bool, str]]:
    """
    Parses flags from dmi data and updates self.ds_cfg accordingly
    """
    dmi_flags = dmi.read_dmi_data("baseboard-serial-number")
    ret: Dict[str, Any] = {}

    if not dmi_flags:
        return ret

    # parse the value into individual flags, then set them in our config
    # based on the short name lookup table
    for key, value, _ in re.findall(r"([a-z0-9]+)=(.*?)(;|$)", dmi_flags):
        if key in DMI_OVERRIDE_MAP:
            if value in "01":
                value = bool(int(value))
            elif key == "pmp":
                value = value.split(",")
            ret[DMI_OVERRIDE_MAP[key]] = value

    return ret


def is_on_akamai() -> bool:
    """
    Reads the BIOS vendor from dmi data to determine if we are running in the
    Akamai Connected Cloud.
    """
    vendor = dmi.read_dmi_data("system-manufacturer")
    return vendor in ("Linode", "Akamai")


def get_local_instance_id() -> Optional[str]:
    """
    Returns the instance id read from dmi data without requiring the metadata
    service to be reachable
    """
    return dmi.read_dmi_data("system-serial-number")