summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Malley <mail@chrismalley.co.uk>2007-09-26 06:19:18 +0200
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-09-26 18:22:04 +0200
commitf6a592e8abd2f2394623ce5427cbb4c265495974 (patch)
treeff5e176b3ee0832978babae80bb13f32c8a77699
parentfix sctp_del_bind_addr() last argument type (diff)
downloadlinux-f6a592e8abd2f2394623ce5427cbb4c265495974.tar.xz
linux-f6a592e8abd2f2394623ce5427cbb4c265495974.zip
lguest example launcher truncates block device file to 0 length on problems
The function should also use ftruncate64() rather than ftruncate() to prevent files over 4GB (not uncommon for a root filesystem) being zeroed. Signed-off-by: Chris Malley <mail@chrismalley.co.uk> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--Documentation/lguest/lguest.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Documentation/lguest/lguest.c b/Documentation/lguest/lguest.c
index f7918401a007..73c5f1f3d5d2 100644
--- a/Documentation/lguest/lguest.c
+++ b/Documentation/lguest/lguest.c
@@ -882,7 +882,7 @@ static u32 handle_block_output(int fd, const struct iovec *iov,
* of the block file (possibly extending it). */
if (off + len > device_len) {
/* Trim it back to the correct length */
- ftruncate(dev->fd, device_len);
+ ftruncate64(dev->fd, device_len);
/* Die, bad Guest, die. */
errx(1, "Write past end %llu+%u", off, len);
}