#include <fcntl.h>
char buffer[32768];
+int overwrote;
void die(char *func)
{
for (i = 2048; i < 32768-1; i++)
if (buffer[i] == 'I' && buffer[i+1] == 'N') {
buffer[i] = buffer[i+1] = 'X';
- printf("Overwrote IN @offset %d\n", i);
+ overwrote = 1;
}
}
int main(int argc, char* argv[])
{
- int f = open(argv[1], O_RDWR);
+ int f;
+ loff_t offset;
+
+ if (argc != 3) {
+ printf("%s <device> <offset>\n", argv[0]);
+ exit(1);
+ }
+
+ f = open(argv[1], O_RDWR);
+ offset = atoll(argv[2]);
+
if (f < 0) die("open");
- if (lseek(f, 32768, SEEK_SET) < 0) die("lseek");
+ if (lseek(f, offset, SEEK_SET) < 0) die("lseek");
if (read(f, buffer, 32768) != 32768) die("read");
printf("Starting overwrite\n");
nuke();
- if (lseek(f, 32768, SEEK_SET) < 0) die("lseek");
+ if (lseek(f, offset, SEEK_SET) < 0) die("lseek");
if (write(f, buffer, 32768) != 32768) die("write");
+ if (!overwrote)
+ printf("Did not overwrite any inodes\n");
printf("Overwrite complete\n");
close(f);
return 0;
Create some files
Blat inode clusters
Starting overwrite
-Overwrote IN @offset 2048
-Overwrote IN @offset 2304
-Overwrote IN @offset 2560
-Overwrote IN @offset 2816
-Overwrote IN @offset 3072
-Overwrote IN @offset 3328
-Overwrote IN @offset 3584
-Overwrote IN @offset 3840
-Overwrote IN @offset 4096
-Overwrote IN @offset 4352
-Overwrote IN @offset 4608
-Overwrote IN @offset 4864
-Overwrote IN @offset 5120
-Overwrote IN @offset 5376
-Overwrote IN @offset 5632
-Overwrote IN @offset 5888
-Overwrote IN @offset 6144
-Overwrote IN @offset 6400
-Overwrote IN @offset 6656
-Overwrote IN @offset 6912
-Overwrote IN @offset 7168
-Overwrote IN @offset 7424
-Overwrote IN @offset 7680
-Overwrote IN @offset 7936
-Overwrote IN @offset 8192
-Overwrote IN @offset 8448
-Overwrote IN @offset 8704
-Overwrote IN @offset 8960
-Overwrote IN @offset 9216
-Overwrote IN @offset 9472
-Overwrote IN @offset 9728
-Overwrote IN @offset 9984
-Overwrote IN @offset 10240
-Overwrote IN @offset 10496
-Overwrote IN @offset 10752
-Overwrote IN @offset 11008
-Overwrote IN @offset 11264
-Overwrote IN @offset 11520
-Overwrote IN @offset 11776
-Overwrote IN @offset 12032
-Overwrote IN @offset 12288
-Overwrote IN @offset 12544
-Overwrote IN @offset 12800
-Overwrote IN @offset 13056
-Overwrote IN @offset 13312
-Overwrote IN @offset 13568
-Overwrote IN @offset 13824
-Overwrote IN @offset 14080
-Overwrote IN @offset 14336
-Overwrote IN @offset 14592
-Overwrote IN @offset 14848
-Overwrote IN @offset 15104
-Overwrote IN @offset 15360
-Overwrote IN @offset 15616
-Overwrote IN @offset 15872
-Overwrote IN @offset 16128
-Overwrote IN @offset 24576
-Overwrote IN @offset 24832
-Overwrote IN @offset 25088
-Overwrote IN @offset 25344
-Overwrote IN @offset 25600
-Overwrote IN @offset 25856
-Overwrote IN @offset 26112
-Overwrote IN @offset 26368
-Overwrote IN @offset 26624
-Overwrote IN @offset 26880
-Overwrote IN @offset 27136
-Overwrote IN @offset 27392
-Overwrote IN @offset 27648
-Overwrote IN @offset 27904
-Overwrote IN @offset 28160
-Overwrote IN @offset 28416
-Overwrote IN @offset 28672
-Overwrote IN @offset 28928
-Overwrote IN @offset 29184
-Overwrote IN @offset 29440
-Overwrote IN @offset 29696
-Overwrote IN @offset 29952
-Overwrote IN @offset 30208
-Overwrote IN @offset 30464
-Overwrote IN @offset 30720
-Overwrote IN @offset 30976
-Overwrote IN @offset 31232
-Overwrote IN @offset 31488
-Overwrote IN @offset 31744
-Overwrote IN @offset 32000
-Overwrote IN @offset 32256
-Overwrote IN @offset 32512
Overwrite complete
Attempting bulkstat
+SCRATCH_MNT start inode=0