Skip to content

Commit ae6c1c6

Browse files
rgrinbergmrjbq7
authored andcommitted
bencode: Reject truncated strings
Signed-off-by: Rudi Grinberg <me@rgrinberg.com>
1 parent d3436fe commit ae6c1c6

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

extra/bencode/bencode.factor

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
USING: arrays assocs byte-arrays combinators io
22
io.encodings.binary io.streams.byte-array io.streams.string
3-
kernel linked-assocs math math.parser sequences sequences.extras sorting
3+
io.streams.throwing kernel linked-assocs math math.parser sequences
4+
sequences.extras sorting
45
strings ;
56
IN: bencode
67

@@ -38,7 +39,7 @@ DEFER: read-bencode
3839

3940
: read-string ( prefix -- obj )
4041
":" read-until CHAR: : assert= swap prefix
41-
string>number read "" like ;
42+
string>number [ read ] throw-on-eof "" like ;
4243

4344
PRIVATE>
4445

0 commit comments

Comments
 (0)