From ae7e298946540887fece977dc550ab5e9521645b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Simon=20D=C3=A9saulniers?= <sim.desaulniers@gmail.com>
Date: Tue, 20 Jun 2017 21:57:33 -0400
Subject: [PATCH] http_server: put values, specific user_type,vid

---
 python/tools/http_server.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/python/tools/http_server.py b/python/tools/http_server.py
index 3d450dcd..0498eff3 100755
--- a/python/tools/http_server.py
+++ b/python/tools/http_server.py
@@ -42,13 +42,22 @@ class DhtServer(resource.Resource):
     def render_POST(self, req):
         uri = req.uri[1:]
         data = req.args[b'data'][0] if b'data' in req.args else None
+        user_type = req.args[b'user_type'][0].decode() if b'user_type' in req.args else ""
+        try:
+            vid = int(req.args[b'id'][0].decode()) if b'id' in req.args else 0
+        except ValueError:
+            vid = 0
         if not data and b'base64' in req.args:
             data = base64.b64decode(req.args[b'base64'][0])
         h = dht.InfoHash(uri) if len(uri) == 40 else dht.InfoHash.get(uri.decode())
         print('POST', h, data)
         req.setHeader(b"content-type", b"application/json")
         if data:
-            self.node.put(h, dht.Value(data))
+            v = dht.Value(data)
+            if vid != 0:
+                v.id = vid
+            v.user_type = user_type
+            self.node.put(h, v)
             return json.dumps({'success':True}).encode()
         else:
             req.setResponseCode(400)
-- 
GitLab