def main(): global in_pipe, out_pipe, public_key, private_key try: docopt_config = "Usage: my_program.py [--port=PORT] [--connect=PORT]" arguments = docopt.docopt(docopt_config) port = arguments["--port"] if port == None: port = 5555 connect_dest = arguments["--connect"] except docopt.DocoptExit as e: print(e.message) return context = zmq.Context() in_pipe = zpipe(context) out_pipe = zpipe(context) loop = asyncio.get_event_loop() net_config = {"port": port} # Generate Node Keys & Id. private_key = enc.generate_RSA(4096) public_key = private_key.publickey() # debug("Private Key=[%s], Public Key=[%s]." % (str(private_key.exportKey("PEM")), str(public_key.exportKey("PEM")))) node_id = enc.generate_ID(public_key.exportKey("DER")) debug("node_id=[%s]." % node_id.hexdigest()) # Start Net Engine. zmq_future = loop.run_in_executor(None, engageNet, loop, context, out_pipe[0], in_pipe[1], net_config) # thread = threading.Thread(target=engageNet, args=(loop, context, out_pipe[0], in_pipe[1], net_config)) # thread.daemon = True # thread.start() # Connect for testing. if connect_dest != None: out_pipe[1].send_multipart( [b"conn", "tcp://{}".format(connect_dest).encode()]) # out_pipe[0].send_multipart([b"conn", "tcp://localhost:{}".format(port).encode()]) try: loop.run_until_complete(zmq_future) except BaseException as e: handleException("loop.run_until_complete()", e) out_pipe[1].send_multipart([b"shutdown"]) loop.stop() loop.close() zmq_future.cancel() sys.exit(1)
def main(): global in_pipe, out_pipe, public_key, private_key try: docopt_config = "Usage: my_program.py [--port=PORT] [--connect=PORT]" arguments = docopt.docopt(docopt_config) port = arguments["--port"] if port == None: port = 5555 connect_dest = arguments["--connect"] except docopt.DocoptExit as e: print(e.message) return context = zmq.Context() in_pipe = zpipe(context) out_pipe = zpipe(context) loop = asyncio.get_event_loop() net_config = {"port": port} # Generate Node Keys & Id. private_key = enc.generate_RSA(4096) public_key = private_key.publickey(); # debug("Private Key=[%s], Public Key=[%s]." % (str(private_key.exportKey("PEM")), str(public_key.exportKey("PEM")))) node_id = enc.generate_ID(public_key.exportKey("DER")) debug("node_id=[%s]." % node_id.hexdigest()) # Start Net Engine. zmq_future = loop.run_in_executor(None, engageNet, loop, context, out_pipe[0], in_pipe[1], net_config) # thread = threading.Thread(target=engageNet, args=(loop, context, out_pipe[0], in_pipe[1], net_config)) # thread.daemon = True # thread.start() # Connect for testing. if connect_dest != None: out_pipe[1].send_multipart([b"conn", "tcp://{}".format(connect_dest).encode()]) # out_pipe[0].send_multipart([b"conn", "tcp://localhost:{}".format(port).encode()]) try: loop.run_until_complete(zmq_future) except BaseException as e: handleException("loop.run_until_complete()", e) out_pipe[1].send_multipart([b"shutdown"]) loop.stop() loop.close() zmq_future.cancel() sys.exit(1)
def main(): debug("Entered main().") private_key = enc.generate_RSA(4096) public_key = private_key.publickey(); debug("Private Key=[%s], Public Key=[%s]." % (str(private_key.exportKey("PEM")), str(public_key.exportKey("PEM")))) id = enc.generate_ID(public_key.exportKey("DER")) debug("id=[%s]." % id.hexdigest())