PHP 8.2.30
Preview: tls_check.py Size: 1.29 KB
/proc/thread-self/root/opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/model/tls_check.py

import logging
import threading

from playhouse.sqlite_ext import SqliteExtDatabase


class OverridingReset(Exception):
    """
    Overriding reset could be a signal of logic error
    thus need to be explicitly handled in all places where
    this exception is expected to occur.
    """

    pass


logger = logging.getLogger(__name__)
_thread_local_storage = threading.local()


class SqliteDatabaseWrapper(SqliteExtDatabase):
    def execute_sql(self, *args, **kwargs):
        _validate(*args, **kwargs)
        return super().execute_sql(*args, **kwargs)


def reset(new_value=None):
    if hasattr(_thread_local_storage, "thread_ident_memo"):
        raise OverridingReset()

    _thread_local_storage.thread_ident_memo = (
        new_value or threading.get_ident()
    )


def _validate(*args, **kwargs):
    thread_ident_memo = getattr(
        _thread_local_storage, "thread_ident_memo", None
    )

    if thread_ident_memo is None:
        logger.error("wrong thread or _validate() was not preceded by reset()")

    elif thread_ident_memo != threading.get_ident():
        logger.error(
            "thread_ident_memo check failed [%r != %r]\n"
            "context:\nargs: %s\nkwargs: %s",
            thread_ident_memo,
            threading.get_ident(),
            args,
            kwargs,
        )

Directory Contents

Dirs: 1 × Files: 10

Name Size Perms Modified Actions
- drwxr-xr-x 2026-03-03 08:59:03
Edit Download
3.40 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
1.74 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
1.16 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
4.24 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
536 B lrw-r--r-- 2026-01-23 13:13:42
Edit Download
1.37 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
5.01 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
1.29 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
13.02 KB lrw-r--r-- 2026-01-23 13:13:42
Edit Download
963 B lrw-r--r-- 2026-01-23 13:13:42
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).