diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2011-05-27 04:07:44 -0500 |
---|---|---|
committer | Jonathan Nieder <jrnieder@gmail.com> | 2011-06-15 02:15:22 -0500 |
commit | fbdd4f6fb477885e4bf81658e02c3542a861c695 (patch) | |
tree | 4284cbc220ef15c28474e3203448fd60397c68d5 /test-svn-fe.c | |
parent | b747e5675db5e26292c942146a25e1c26440c5f7 (diff) | |
download | git-fbdd4f6fb477885e4bf81658e02c3542a861c695.tar.gz |
vcs-svn: cap number of bytes read from sliding view
Introduce a "max_off" field in struct sliding_view, roughly
representing a maximum number of bytes that can be read from "file".
If it is set to a nonnegative integer, a call to move_window()
attempting to put the right endpoint beyond that offset will return
an error instead.
The idea is to use this when applying Subversion-format deltas to
prevent reads past the end of the preimage (which has known length).
Without such a check, corrupt deltas would cause svn-fe to block
indefinitely when data in the input pipe is exhausted.
Inspired-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Diffstat (limited to 'test-svn-fe.c')
-rw-r--r-- | test-svn-fe.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test-svn-fe.c b/test-svn-fe.c index a0276260eb..332a5f711d 100644 --- a/test-svn-fe.c +++ b/test-svn-fe.c @@ -15,7 +15,7 @@ static int apply_delta(int argc, char *argv[]) { struct line_buffer preimage = LINE_BUFFER_INIT; struct line_buffer delta = LINE_BUFFER_INIT; - struct sliding_view preimage_view = SLIDING_VIEW_INIT(&preimage); + struct sliding_view preimage_view = SLIDING_VIEW_INIT(&preimage, -1); if (argc != 5) usage(test_svnfe_usage); |