Current File : //opt/cloudlinux/venv/bin/plesk_suid_caller.py |
# coding: utf-8
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
import sys
import json
import traceback
from clcommon import ClPwd
from clcommon.cpapi.plugins.plesk import userdomains
from clcommon.cpapi.cpapiexceptions import NoPanelUser
try:
uid = int(sys.argv[1])
_clpwd = ClPwd()
pwd_list = _clpwd.get_pw_by_uid(uid)
for user_pwd in pwd_list:
username = user_pwd.pw_name
try:
res = userdomains(username, as_root=True)
print(json.dumps(res))
sys.exit(0)
except NoPanelUser:
pass
print(json.dumps({}))
sys.exit(0)
except (NoPanelUser, KeyError):
print(json.dumps({}))
sys.exit(11)
except Exception:
print(json.dumps(traceback.format_exc()))
sys.exit(10)