Hi Ian, You are correct - I missed the following 2 nuances:
# need to set poll_interval in order to recognize shutdown request httpd.serve_forever(poll_interval=0.5) # shutdown request must be initiated from ANOTHER thread or will block import threading threading.Thread(target=httpd.shutdown).start() Thank you for your help - really appreciated! Malcolm -- http://mail.python.org/mailman/listinfo/python-list