3 from urlparse import urlparse, parse_qs
5 from KodiHelper import KodiHelper
7 kodi_helper = KodiHelper(
12 msl = MSL(kodi_helper)
14 class MSLHttpRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
17 self.send_response(200)
20 length = int(self.headers['content-length'])
21 post = self.rfile.read(length)
23 data = post.split('!')
26 sid = base64.standard_b64decode(data[1])
27 b64license = msl.get_license(challenge, sid)
28 if b64license is not '':
29 self.send_response(200)
31 self.wfile.write(base64.standard_b64decode(b64license))
34 kodi_helper.log(msg='Error getting License')
35 self.send_response(400)
37 kodi_helper.log(msg='Error in License Request')
38 self.send_response(400)
41 url = urlparse(self.path)
42 params = parse_qs(url.query)
43 if 'id' not in params:
44 self.send_response(400, 'No id')
46 # Get the manifest with the given id
47 data = msl.load_manifest(int(params['id'][0]))
48 self.send_response(200)
49 self.send_header('Content-type', 'application/xml')
51 self.wfile.write(data)
53 def log_message(self, format, *args):
55 Disable the BaseHTTPServer Log