other-licenses/7zstub/src/7zip/Common/LimitedStreams.h

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 // LimitedStreams.h
     3 #ifndef __LIMITEDSTREAMS_H
     4 #define __LIMITEDSTREAMS_H
     6 #include "../../Common/MyCom.h"
     7 #include "../IStream.h"
     9 class CLimitedSequentialInStream: 
    10   public ISequentialInStream,
    11   public CMyUnknownImp
    12 {
    13   UInt64 _size;
    14   CMyComPtr<ISequentialInStream> _stream;
    15 public:
    16   void Init(ISequentialInStream *stream, UInt64 streamSize);
    18   MY_UNKNOWN_IMP
    20   STDMETHOD(Read)(void *data, UInt32 size, UInt32 *processedSize);
    21 };
    23 #endif

mercurial