- except ValueError:
- print "Serveur mort ?"
-
-def challenge(a):
- _,pub=monRSA.litcles(None,client_config.server_rsa_pub_key)
- chall=str(time.time())
- chall+="".join(["azertyuiopqsdfghjklmwxcvbn"[random.randrange(0,26)] for i in range(20)])
- coded=monRSA.crypte(chall,pub)
- a.send('challenge "%s"'%(coded))
- a.setblocking(True)
- result=a.read()
- a.settimeout(0.5)
- if json.loads(result)==chall:
- print "Recognized"
- elif json.loads(result)==u"Challenge tenté il y a moins de 10 minutes ! =p":
- print "Top tôt. Réessaye plus tard."
- else:
- print "Imposteur !"
-
+
+def do(stuff):
+ """Dirty, 'cause I'm lazy."""
+ global a
+ a.write(json.dumps(stuff))
+
+
+# Shortcuts
+def _toggle_transactions(l, action="valider"):
+ """(Dé)valide plein de transactions si on lui donne la liste d'ids."""
+ global a
+ for i in l:
+ assert isinstance(i, int)
+ print i,
+ do(["%s_transaction" % (action,), i])
+ out = lit(a)
+ if out:
+ print out
+
+def cancel_transactions(l):
+ """Annule plein de transactions. Mange une liste d'ids de transactions."""
+ _toggle_transactions(l, action="devalider")
+
+def validate_transactions(l):
+ """Valide plein de transactions. Mange une liste d'ids de transactions."""
+ _toggle_transactions(l, action="valider")
+