OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
python3
/
dist-packages
/
certbot
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
03/17/2025 09:32:20 AM
rwxr-xr-x
📄
__init__.py
114 bytes
02/07/2019 09:20:31 PM
rw-r--r--
📁
__pycache__
-
05/25/2021 01:14:27 PM
rwxr-xr-x
📄
account.py
13.98 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
achallenges.py
1.59 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
auth_handler.py
20.92 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
cert_manager.py
15.1 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
cli.py
71.49 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
client.py
28.72 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
compat.py
6.91 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
configuration.py
5.66 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
constants.py
6.54 KB
12/18/2020 08:47:58 PM
rw-r--r--
📄
crypto_util.py
15.29 KB
02/07/2019 09:20:29 PM
rw-r--r--
📁
display
-
05/25/2021 01:14:26 PM
rwxr-xr-x
📄
eff.py
3.07 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
error_handler.py
5.81 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
errors.py
2.59 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
hooks.py
8.44 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
interfaces.py
22.02 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
lock.py
3.56 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
log.py
12.39 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
main.py
48.47 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
notify.py
1.04 KB
02/07/2019 09:20:29 PM
rw-r--r--
📄
ocsp.py
4.1 KB
02/07/2019 09:20:29 PM
rw-r--r--
📁
plugins
-
05/25/2021 01:14:26 PM
rwxr-xr-x
📄
renewal.py
20.91 KB
12/18/2020 08:47:58 PM
rw-r--r--
📄
reporter.py
3.46 KB
02/07/2019 09:20:30 PM
rw-r--r--
📄
reverter.py
23.32 KB
02/07/2019 09:20:30 PM
rw-r--r--
📄
ssl-dhparams.pem
424 bytes
02/07/2019 09:20:30 PM
rw-r--r--
📄
storage.py
44.91 KB
02/07/2019 09:20:30 PM
rw-r--r--
📁
tests
-
05/25/2021 01:14:27 PM
rwxr-xr-x
📄
updater.py
3.86 KB
02/07/2019 09:20:30 PM
rw-r--r--
📄
util.py
20.35 KB
02/07/2019 09:20:30 PM
rw-r--r--
Editing: reporter.py
Close
"""Collects and displays information to the user.""" from __future__ import print_function import collections import logging import sys import textwrap from six.moves import queue # type: ignore # pylint: disable=import-error import zope.interface from certbot import interfaces from certbot import util logger = logging.getLogger(__name__) @zope.interface.implementer(interfaces.IReporter) class Reporter(object): """Collects and displays information to the user. :ivar `queue.PriorityQueue` messages: Messages to be displayed to the user. """ HIGH_PRIORITY = 0 """High priority constant. See `add_message`.""" MEDIUM_PRIORITY = 1 """Medium priority constant. See `add_message`.""" LOW_PRIORITY = 2 """Low priority constant. See `add_message`.""" _msg_type = collections.namedtuple('ReporterMsg', 'priority text on_crash') def __init__(self, config): self.messages = queue.PriorityQueue() self.config = config def add_message(self, msg, priority, on_crash=True): """Adds msg to the list of messages to be printed. :param str msg: Message to be displayed to the user. :param int priority: One of `HIGH_PRIORITY`, `MEDIUM_PRIORITY`, or `LOW_PRIORITY`. :param bool on_crash: Whether or not the message should be printed if the program exits abnormally. """ assert self.HIGH_PRIORITY <= priority <= self.LOW_PRIORITY self.messages.put(self._msg_type(priority, msg, on_crash)) logger.debug("Reporting to user: %s", msg) def print_messages(self): """Prints messages to the user and clears the message queue. If there is an unhandled exception, only messages for which ``on_crash`` is ``True`` are printed. """ bold_on = False if not self.messages.empty(): no_exception = sys.exc_info()[0] is None bold_on = sys.stdout.isatty() if not self.config.quiet: if bold_on: print(util.ANSI_SGR_BOLD) print('IMPORTANT NOTES:') first_wrapper = textwrap.TextWrapper( initial_indent=' - ', subsequent_indent=(' ' * 3), break_long_words=False, break_on_hyphens=False) next_wrapper = textwrap.TextWrapper( initial_indent=first_wrapper.subsequent_indent, subsequent_indent=first_wrapper.subsequent_indent, break_long_words=False, break_on_hyphens=False) while not self.messages.empty(): msg = self.messages.get() if self.config.quiet: # In --quiet mode, we only print high priority messages that # are flagged for crash cases if not (msg.priority == self.HIGH_PRIORITY and msg.on_crash): continue if no_exception or msg.on_crash: if bold_on and msg.priority > self.HIGH_PRIORITY: if not self.config.quiet: sys.stdout.write(util.ANSI_SGR_RESET) bold_on = False lines = msg.text.splitlines() print(first_wrapper.fill(lines[0])) if len(lines) > 1: print("\n".join( next_wrapper.fill(line) for line in lines[1:])) if bold_on and not self.config.quiet: sys.stdout.write(util.ANSI_SGR_RESET)