|
Server : LiteSpeed System : Linux srv104790275 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64 User : dewac4139 ( 1077) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/local/CyberPanel/lib/python3.10/site-packages/CloudFlare/ |
Upload File : |
""" misc utilities for Cloudflare API"""
from __future__ import absolute_import
import sys
import requests
from . import __version__
def user_agent():
""" misc utilities for Cloudflare API"""
# the default User-Agent is something like 'python-requests/2.11.1'
# this additional data helps support @ Cloudflare help customers
return ('python-cloudflare/' + __version__ + '/' +
'python-requests/' + str(requests.__version__) + '/' +
'python/' + '.'.join(map(str, sys.version_info[:3]))
)
def sanitize_secrets(secrets):
""" misc utilities for Cloudflare API"""
redacted_phrase = 'REDACTED'
if secrets is None:
return None
secrets_copy = secrets.copy()
if 'password' in secrets_copy:
secrets_copy['password'] = redacted_phrase
elif 'X-Auth-Key' in secrets_copy:
secrets_copy['X-Auth-Key'] = redacted_phrase
elif 'X-Auth-User-Service-Key' in secrets_copy:
secrets_copy['X-Auth-User-Service-Key'] = redacted_phrase
elif 'Authorization' in secrets_copy:
secrets_copy['Authorization'] = redacted_phrase
return secrets_copy
def build_curl(method, url, headers, params, data, files):
""" misc utilities for Cloudflare API"""
msg = []
# url
url_full = url
if params is not None:
for k in params:
if k is None:
continue
url_full += '&%s=%s' % (k, params[k])
url_full = url_full.replace('&', '?', 1)
msg.append(' curl -X %s "%s" \\' % (str(method), str(url_full)))
# headers
h = sanitize_secrets(headers)
for k in h:
if k is None:
continue
msg.append(' -H "%s: %s" \\' % (k, h[k]))
# data
if data is not None:
try:
str_data = json.dumps(data)
except:
str_data = str(data)
msg.append(' --data \'%s\' \\' % (str_data.replace('\n', ' ')))
# files
if files is not None:
msg.append(' --form "file=@%s" \\' % (files))
# remove the last \ from the last line.
msg[-1] = msg[-1][:-1]
return '\n'.join(msg)