OXIESEC PANEL
- Current Dir:
/
/
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
cllimits
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/05/2025 09:34:06 AM
rwxr-xr-x
📄
__init__.py
390 bytes
06/05/2025 10:38:47 AM
rw-r--r--
📁
__pycache__
-
09/06/2025 12:00:11 AM
rwxr-xr-x
📄
cagefs_lib.py
5.63 KB
06/05/2025 10:38:47 AM
rw-r--r--
📁
cl_utils
-
09/05/2025 09:31:01 AM
rwxr-xr-x
📄
clquota_lib.py
12.32 KB
06/05/2025 10:38:47 AM
rw-r--r--
📄
domain_lib.py
1.54 KB
06/05/2025 10:38:47 AM
rw-r--r--
📁
lib
-
09/05/2025 09:31:01 AM
rwxr-xr-x
📄
lvectl_lib.py
16.97 KB
06/05/2025 10:38:47 AM
rw-r--r--
Editing: domain_lib.py
Close
# -*- coding: utf-8 -*- # domainlib.py - library for miscelaneous domain operations # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT from clcommon import cpapi from clcommon.clexception import FormattedException from clcommon.cpapi import NotSupported class DomainException(FormattedException): pass class Domain: def __init__(self): self._userdomain_cache = None # type: dict[str, str] def get_user_domain(self, username): """ Retrive main domain for supplied user :param username: User name :return: Domain name or N/A """ if self._userdomain_cache is None: try: self._userdomain_cache = dict(cpapi.cpinfo(keyls=('cplogin', 'dns'))) except NotSupported: self._userdomain_cache = {} return self._userdomain_cache.get(username, 'N/A') def get_user_name_by_domain(self, domain_name): """ Retrive username by domain :param domain_name: Domain name :return: Username """ try: username = cpapi.domain_owner(domain_name) if username: return username except (IOError, cpapi.cpapiexceptions.NotSupported) as e: raise DomainException(str(e)) from e raise DomainException({'message': "There is no domain '%(domain)s'", 'context': {'domain': domain_name}})