tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

partial-script.py (956B)


      1 """
      2 This generates a partial response containing valid JavaScript.
      3 """
      4 
      5 def main(request, response):
      6    require_range = request.GET.first(b'require-range', b'')
      7    pretend_offset = int(request.GET.first(b'pretend-offset', b'0'))
      8    range_header = request.headers.get(b'Range', b'')
      9 
     10    if require_range and not range_header:
     11        response.set_error(412, u"Range header required")
     12        response.write()
     13        return
     14 
     15    response.headers.set(b"Content-Type", b"text/plain")
     16    response.headers.set(b"Accept-Ranges", b"bytes")
     17    response.headers.set(b"Cache-Control", b"no-cache")
     18    response.status = 206
     19 
     20    to_send = b'self.scriptExecuted = true;'
     21    length = len(to_send)
     22 
     23    content_range = b"bytes %d-%d/%d" % (
     24        pretend_offset, pretend_offset + length - 1, pretend_offset + length)
     25 
     26    response.headers.set(b"Content-Range", content_range)
     27    response.headers.set(b"Content-Length", length)
     28 
     29    response.content = to_send