Various test programs for making bad images for omfsck
[omfsprogs.git] / test / bad_crc.c
blob7cb38587a857f270246981e95ee1780506b5bbe3
1 #define _GNU_SOURCE
2 #define _FILE_OFFSET_BITS 64
4 #include <stdio.h>
5 #include <stdlib.h>
6 #include <string.h>
7 #include "omfs.h"
8 #include "bits.h"
9 #include "config.h"
11 void make_bad_crc(FILE *fp)
13 char crc[] = {0, 0};
14 omfs_super_t super;
15 omfs_root_t root;
17 omfs_read_super(fp, &super);
18 omfs_read_root_block(fp, &super, &root);
20 fseeko(fp, swap_be64(root.root_dir) * swap_be32(super.blocksize) +
21 12, SEEK_SET);
22 fwrite(crc, 2, 1, fp);
25 int main(int argc, char **argv)
27 if (argc < 2)
28 return 1;
30 FILE *fp = fopen(argv[1], "r+");
32 make_bad_crc(fp);
33 fclose(fp);
34 return 0;