From fce10ccdfc9de52bc3253e02c6dc4612f9ab12a1 Mon Sep 17 00:00:00 2001 From: David Blacka Date: Sun, 15 Jun 2008 10:26:59 -0400 Subject: [PATCH] Handle thrown RwhoisErrors --- rwhoisd/RwhoisServer.py | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) 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 """\ -- 2.36.6