diff --git a/fail2ban/__init__.py b/fail2ban/__init__.py index 317f53e7..fa6dcf77 100644 --- a/fail2ban/__init__.py +++ b/fail2ban/__init__.py @@ -79,3 +79,10 @@ logging.handlers.SysLogHandler.priority_map['NOTICE'] = 'notice' from time import strptime # strptime thread safety hack-around - http://bugs.python.org/issue7980 strptime("2012", "%Y") + +# short names for pure numeric log-level ("Level 25" could be truncated by short formats): +def _init(): + for i in xrange(50): + if logging.getLevelName(i).startswith('Level'): + logging.addLevelName(i, '#%02d-Lev.' % i) +_init() diff --git a/fail2ban/helpers.py b/fail2ban/helpers.py index 49a5ca47..c6da8f30 100644 --- a/fail2ban/helpers.py +++ b/fail2ban/helpers.py @@ -429,7 +429,7 @@ def substituteRecursiveTags(inptags, conditional='', m = tre_search(value, m.end()) continue # if calling map - be sure we've string: - if noRecRepl: repl = uni_string(repl) + if not isinstance(repl, basestring): repl = uni_string(repl) value = value.replace('<%s>' % rtag, repl) #logSys.log(5, 'value now: %s' % value) # increment reference count: diff --git a/fail2ban/server/action.py b/fail2ban/server/action.py index ec9ad19a..8d69327d 100644 --- a/fail2ban/server/action.py +++ b/fail2ban/server/action.py @@ -343,7 +343,7 @@ class CommandAction(ActionBase): if wrp == 'ignore': # ignore (filter) dynamic parameters return elif wrp == 'str2seconds': - value = str(MyTime.str2seconds(value)) + value = MyTime.str2seconds(value) # parameters changed - clear properties and substitution cache: self.__properties = None self.__substCache.clear() diff --git a/fail2ban/tests/servertestcase.py b/fail2ban/tests/servertestcase.py index 8a4ef401..af08bd86 100644 --- a/fail2ban/tests/servertestcase.py +++ b/fail2ban/tests/servertestcase.py @@ -661,11 +661,11 @@ class Transmitter(TransmitterBase): self.assertEqual( self.transm.proceed( ["set", self.jailName, "action", action, "timeout", "10"]), - (0, "10")) + (0, 10)) self.assertEqual( self.transm.proceed( ["get", self.jailName, "action", action, "timeout"]), - (0, "10")) + (0, 10)) self.assertEqual( self.transm.proceed(["set", self.jailName, "delaction", action]), (0, None))