From: David Blacka Date: Sun, 15 Jun 2008 14:26:59 +0000 (-0400) Subject: Handle thrown RwhoisErrors X-Git-Url: https://blacka.com/cgi-bin/gitweb.cgi?p=python-rwhoisd.git;a=commitdiff_plain;h=fce10ccdfc9de52bc3253e02c6dc4612f9ab12a1 Handle thrown RwhoisErrors --- diff --git a/rwhoisd/RwhoisServer.py b/rwhoisd/RwhoisServer.py index e989ce0..e46a7d5 100644 --- a/rwhoisd/RwhoisServer.py +++ b/rwhoisd/RwhoisServer.py @@ -84,13 +84,16 @@ class RwhoisHandler(SocketServer.StreamRequestHandler): # we can skip blank lines. if not line: continue - - if line.startswith("-"): - self.handle_directive(session, line) - else: - self.handle_query(session, line) - if not session.holdconnect: - self.quit_flag = True + + try: + if line.startswith("-"): + self.handle_directive(session, line) + else: + self.handle_query(session, line) + if not session.holdconnect: + self.quit_flag = True + except Rwhois.RwhoisError, e: + self.handle_error(session, e) self.wfile.flush() @@ -114,6 +117,10 @@ class RwhoisHandler(SocketServer.StreamRequestHandler): print "%s query %s" % (self.client_address, line) query_processor.process_query(session, line) + def handle_error(self, session, error): + code = error[0] + msg = error[1] + session.wfile.write(Rwhois.error_message((code, msg))) def usage(pname): print """\