IReadable.read(): document out-of-range errors
authorBrian Warner <warner@lothar.com>
Tue, 28 Jul 2015 20:01:15 +0000 (13:01 -0700)
committerBrian Warner <warner@lothar.com>
Tue, 28 Jul 2015 20:01:15 +0000 (13:01 -0700)
closes ticket#2461

src/allmydata/interfaces.py

index ded8ffb2a4798e0c719e00076f5d80fc156f761e..e495c759a0e7735833257cce6f1b898679936d1b 100644 (file)
@@ -665,7 +665,10 @@ class IReadable(Interface):
         the last byte has been given to it, or because the consumer threw an
         exception during write(), possibly because it no longer wants to
         receive data). The portion downloaded will start at 'offset' and
-        contain 'size' bytes (or the remainder of the file if size==None).
+        contain 'size' bytes (or the remainder of the file if size==None). It
+        is an error to read beyond the end of the file: callers must use
+        get_size() and clip any non-default offset= and size= parameters. It
+        is permissible to read zero bytes.
 
         The consumer will be used in non-streaming mode: an IPullProducer
         will be attached to it.