def handle(self):
if self.TELNET_ISSUE:<EOL><INDENT>self.writeline(self.TELNET_ISSUE)<EOL><DEDENT>if not self.authentication_ok():<EOL><INDENT>return<EOL><DEDENT>if self.DOECHO:<EOL><INDENT>self.writeline(self.WELCOME)<EOL><DEDENT>self.session_start()<EOL>while self.RUNSHELL:<EOL><INDENT>raw_input = self.readline(prompt=self.PROMPT).strip()<EOL>self.input = self.input_reader(self, raw_input)<EOL>self.raw_input = self.input.raw<EOL>if self.input.cmd:<EOL><INDENT>cmd = self.input.cmd.upper()<EOL>params = self.input.params<EOL>if self.COMMANDS.has_key(cmd):<EOL><INDENT>try:<EOL><INDENT>self.COMMANDS[cmd](params)<EOL><DEDENT>except:<EOL><INDENT>log.exception('<STR_LIT>' % cmd)<EOL>(t, p, tb) = sys.exc_info()<EOL>if self.handleException(t, p, tb):<EOL><INDENT>break<EOL><DEDENT><DEDENT><DEDENT>else:<EOL><INDENT>self.writeerror("<STR_LIT>" % cmd)<EOL><DEDENT><DEDENT><DEDENT>log.debug("<STR_LIT>")<EOL>
The actual service to which the user has connected.