def normal(self): if not config.relay: get_db.send() register.send() while True: coin_count.send() get_nodes.count_send() time.sleep(60)
def relay(self): get_nodes.send() register.send() get_db.send() sock = socket.socket() sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind((config.host, config.port)) sock.listen(5) while True: obj, conn = sock.accept() thread.start_new_thread(self.handle, (obj, conn[0]))
def send(): coins = config.db.find("coins", "all") if coins: coins = len(coins) else: coins = 0 out = send_command.send({"cmd": "coin_count"}, out=True) try: out = json.loads(out) except: print "Couldn't get number of coins, if this persists please reset." return else: print out if out['coins'] > coins: get_db.send()
def firstrun(self): print "Generating address..." pub, priv = rsa.newkeys(1024) address = "SHA"+''.join([random.choice(string.uppercase+string.lowercase+string.digits) for x in range(50)]) print "Your address is: "+address print "Getting nodes..." get_nodes.send(True) check = config.nodes.find("nodes", "all") if not check: print "It looks like you are the first node on this network." ip = raw_input("What is your IP address? ") config.nodes.insert("nodes", {"public":str(pub), "address":address, "ip":ip, "relay":config.relay, "port":config.port}) config.nodes.save() config.db.insert("difficulty", {"difficulty":7}) config.db.save() config.wallet.insert("data", {"public":str(pub), "address":address, "private":str(priv)}) config.wallet.save() print "Registering..." register.send() print "Getting coins db..." get_db.send() print "Done!"
def firstrun(self): print "Generating address and public/private keys" pub, priv = rsa.newkeys(1024) address = "Z"+''.join([random.choice(string.uppercase+string.lowercase+string.digits) for x in range(50)]) print "My wallet address: "+address print "Getting nodes from network" get_nodes.send(True) check = config.nodes.find("nodes", "all") if not check: print "Seed node (aka no other nodes online)" ip = raw_input("What is your IP address?") ## replace by auto-check? config.nodes.insert("nodes", {"public":str(pub), "address":address, "ip":ip, "relay":config.relay, "port":config.port}) config.nodes.save() config.db.insert("difficulty", {"difficulty":5}) config.db.save() config.wallet.insert("data", {"public":str(pub), "address":address, "private":str(priv)}) config.wallet.save() print "Registering..." register.send() print "Getting coins db..." get_db.send() print "Done!"
def do_check(self, lines): get_db.send()