Thu, 15 Jan 2015 15:59:08 +0100
Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 Bugs to fix:
2 - make content-length generation not rely on .available() returning the entire
3 size of the body stream's contents -- some sort of wrapper (but how does that
4 work for the unscriptable method WriteSegments, which is good to support from
5 a performance standpoint?)
7 Ideas for future improvements:
8 - add API to disable response buffering which, when called, causes errors when
9 you try to do anything other than write to the body stream (i.e., modify
10 headers or status line) once you've written anything to it -- useful when
11 storing the entire response in memory is unfeasible (e.g., you're testing
12 >4GB download characteristics)
13 - add an API which performs asynchronous response processing (instead of
14 nsIHttpRequestHandler.handle, which must construct the response before control
15 returns; |void asyncHandle(request, response)|) -- useful, and can it be done
16 in JS?
17 - other awesomeness?