def _log(self, level, msg, args, kwargs, msgtype, progress = None): # Logs are strings, not bytes. Handle Python3 bytes() objects. msg = _need_text(msg) extra = kwargs.get('extra', {}) extra.setdefault('pwnlib_msgtype', msgtype) extra.setdefault('pwnlib_progress', progress) kwargs['extra'] = extra self._logger.log(level, msg, *args, **kwargs)
def _log(self, status, args, kwargs, msgtype): # Logs are strings, not bytes. Handle Python3 bytes() objects. status = _need_text(status) # this progress logger is stopped, so don't generate any more records if self._stopped: return msg = self._msg if msg and status: msg += ': ' msg += status self._logger._log(self._level, msg, args, kwargs, msgtype, self)
def _need_text(s): # circular import wrapper global _need_text from pwnlib.util.packing import _need_text return _need_text(s, 2)