Server IP : 68.65.120.251 / Your IP : 18.222.147.70 [ Web Server : LiteSpeed System : Linux server105.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64 User : travtpib ( 6521) PHP Version : 7.4.33 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/imunify360/venv/lib64/python3.11/site-packages/defence360agent/model/ |
Upload File : |
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, )