HEX
Server: LiteSpeed
System: Linux srv1.dhviews.com 5.14.0-570.23.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jun 24 11:27:16 EDT 2025 x86_64
User: bdedition (1723)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: //proc/self/root/usr/local/lib/python3.9/site-packages/wordfence/util/platform.py
from enum import Enum
from platform import machine
from typing import Set


class UnknownPlatform(Exception):
    pass


class Platform(Enum):

    AMD64 = ('amd64', {'amd64', 'x86_64'})
    ARM64 = ('arm64', {'arm64', 'aarch64'})

    def __init__(self, key: str, machine_names: Set[str]):
        self.key = key
        self.machine_names = machine_names

    @classmethod
    def detect(cls):
        machine_name = machine()
        for platform in cls:
            if machine_name in platform.machine_names:
                return platform
        raise UnknownPlatform()