import socket, select import sys print "RUNNING on %s platform: %s" % (sys.platform, sys.version) sock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) sock.setblocking(0) address = ('127.0.0.1', 0) # loopback interface and let system choose a free port #address = ('127.0.0.1', 34567) # loopback interface but specific port print "Binding to: %s" % (address, ) sock.bind(address) print "Binded to :%s" % (sock.getsockname(), ) data = 'wakeup' address2 = sock.getsockname() print "send to :%s" % (address2, ) sock.sendto(data, address2 ) r, w, e = select.select([sock], [], [], 1) assert r and r[0] == sock assert data == sock.recv(0x4000) print "OK"