#!/usr/bin/env python

import os
import select
import signal
import sys

def main():

	def exithandler(signum,frame):
		signal.signal(signal.SIGINT, signal.SIG_IGN)
		signal.signal(signal.SIGTERM, signal.SIG_IGN)
		signal.signal(signal.SIGPIPE, signal.SIG_IGN)
		err = sys.stderr
		err.write("\n\nExiting on signal %(signal)s\n" % {"signal":signum})
		err.flush()
		sys.exit(1)

	signal.signal(signal.SIGINT, exithandler)
	signal.signal(signal.SIGTERM, exithandler)
	signal.signal(signal.SIGPIPE, signal.SIG_DFL)

	pr, pw = os.pipe()
	poll_obj = select.poll()
	poll_obj.register(pr, select.POLLIN)

	out = sys.stdout
	out.write("entering poll call\n")
	out.flush()
	out.write("%s\n" % (poll_obj.poll(),))
	out.write("poll returned\n")
	out.flush()

if __name__ == '__main__':
	main()
