Fix to properly wipe filesystems larger than 4 gigabytes.
Pass the wipe size to the wipe function in a 64 bit int.
Change-Id: Iac95693efa2d9cadbe77aa83b5ff01d7fc8d8b70
diff --git a/ext4_utils/wipe.c b/ext4_utils/wipe.c
index 990b82f..c7329cf 100644
--- a/ext4_utils/wipe.c
+++ b/ext4_utils/wipe.c
@@ -30,7 +30,7 @@
#define BLKSECDISCARD _IO(0x12,125)
#endif
-int wipe_block_device(int fd, int len)
+int wipe_block_device(int fd, s64 len)
{
u64 range[2];
int ret;
@@ -54,7 +54,7 @@
return 0;
}
#else
-int wipe_block_device(int fd, int len)
+int wipe_block_device(int fd, s64 len)
{
error("wipe not supported on non-linux platforms");
return 1;
diff --git a/ext4_utils/wipe.h b/ext4_utils/wipe.h
index 0b54b46..814877d 100644
--- a/ext4_utils/wipe.h
+++ b/ext4_utils/wipe.h
@@ -17,6 +17,6 @@
#ifndef _WIPE_H_
#define _WIPE_H_
-int wipe_block_device(int fd, int len);
+int wipe_block_device(int fd, s64 len);
#endif