mirror of https://github.com/cowrie/cowrie.git
gracefully fail when command fails to load
This commit is contained in:
parent
33f9d7fe70
commit
c5b22cbfcd
|
@ -7,8 +7,10 @@ This module contains ...
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
import sys
|
||||||
import time
|
import time
|
||||||
import socket
|
import socket
|
||||||
|
import traceback
|
||||||
|
|
||||||
from twisted.python import failure, log
|
from twisted.python import failure, log
|
||||||
from twisted.internet import error
|
from twisted.internet import error
|
||||||
|
@ -47,9 +49,13 @@ class HoneyPotBaseProtocol(insults.TerminalProtocol, TimeoutMixin):
|
||||||
self.commands = {}
|
self.commands = {}
|
||||||
import cowrie.commands
|
import cowrie.commands
|
||||||
for c in cowrie.commands.__all__:
|
for c in cowrie.commands.__all__:
|
||||||
module = __import__('cowrie.commands.%s' % (c,),
|
try:
|
||||||
globals(), locals(), ['commands'])
|
module = __import__('cowrie.commands.%s' % (c,),
|
||||||
self.commands.update(module.commands)
|
globals(), locals(), ['commands'])
|
||||||
|
self.commands.update(module.commands)
|
||||||
|
except Exception as e:
|
||||||
|
exc_type, exc_value, exc_traceback = sys.exc_info()
|
||||||
|
log.err("Failed to import command {}: {}: {}".format(c, e, ''.join(traceback.format_exception(exc_type,exc_value,exc_traceback))))
|
||||||
self.password_input = False
|
self.password_input = False
|
||||||
self.cmdstack = []
|
self.cmdstack = []
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue