| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.146.1.el8_10.x86_64 #1 SMP Tue Jul 21 15:46:30 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/lib/python3.6/site-packages/pydbus/ |
Upload File : |
from gi.repository import GLib
from collections import namedtuple
AuthorizationResult = namedtuple("AuthorizationResult", "is_authorized is_challenge details")
class MethodCallContext(object):
def __init__(self, gdbus_method_invocation):
self._mi = gdbus_method_invocation
@property
def bus(self):
return self._mi.get_connection().pydbus
@property
def sender(self):
return self._mi.get_sender()
@property
def object_path(self):
return self._mi.get_object_path()
@property
def interface_name(self):
return self._mi.get_interface_name()
@property
def method_name(self):
return self._mi.get_method_name()
def check_authorization(self, action_id, details, interactive=False):
return AuthorizationResult(*self.bus.polkit_authority.CheckAuthorization(('system-bus-name', {'name': GLib.Variant("s", self.sender)}), action_id, details, 1 if interactive else 0, ''))
def is_authorized(self, action_id, details, interactive=False):
return self.check_authorization(action_id, details, interactive).is_authorized