Loading libsparse/img2simg.cpp +30 −11 Original line number Diff line number Diff line Loading @@ -38,24 +38,41 @@ #endif void usage() { fprintf(stderr, "Usage: img2simg <raw_image_file> <sparse_image_file> [<block_size>]\n"); fprintf(stderr, "Usage: img2simg [-s] <raw_image_file> <sparse_image_file> [<block_size>]\n"); } int main(int argc, char* argv[]) { char *arg_in; char *arg_out; enum sparse_read_mode mode = SPARSE_READ_MODE_NORMAL; int extra; int in; int opt; int out; int ret; struct sparse_file* s; unsigned int block_size = 4096; off64_t len; if (argc < 3 || argc > 4) { while ((opt = getopt(argc, argv, "s")) != -1) { switch (opt) { case 's': mode = SPARSE_READ_MODE_HOLE; break; default: usage(); exit(-1); } } extra = argc - optind; if (extra < 2 || extra > 3) { usage(); exit(-1); } if (argc == 4) { block_size = atoi(argv[3]); if (extra == 3) { block_size = atoi(argv[optind + 2]); } if (block_size < 1024 || block_size % 4 != 0) { Loading @@ -63,22 +80,24 @@ int main(int argc, char* argv[]) { exit(-1); } if (strcmp(argv[1], "-") == 0) { arg_in = argv[optind]; if (strcmp(arg_in, "-") == 0) { in = STDIN_FILENO; } else { in = open(argv[1], O_RDONLY | O_BINARY); in = open(arg_in, O_RDONLY | O_BINARY); if (in < 0) { fprintf(stderr, "Cannot open input file %s\n", argv[1]); fprintf(stderr, "Cannot open input file %s\n", arg_in); exit(-1); } } if (strcmp(argv[2], "-") == 0) { arg_out = argv[optind + 1]; if (strcmp(arg_out, "-") == 0) { out = STDOUT_FILENO; } else { out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0664); out = open(arg_out, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0664); if (out < 0) { fprintf(stderr, "Cannot open output file %s\n", argv[2]); fprintf(stderr, "Cannot open output file %s\n", arg_out); exit(-1); } } Loading @@ -93,7 +112,7 @@ int main(int argc, char* argv[]) { } sparse_file_verbose(s); ret = sparse_file_read(s, in, SPARSE_READ_MODE_NORMAL, false); ret = sparse_file_read(s, in, mode, false); if (ret) { fprintf(stderr, "Failed to read file\n"); exit(-1); Loading Loading
libsparse/img2simg.cpp +30 −11 Original line number Diff line number Diff line Loading @@ -38,24 +38,41 @@ #endif void usage() { fprintf(stderr, "Usage: img2simg <raw_image_file> <sparse_image_file> [<block_size>]\n"); fprintf(stderr, "Usage: img2simg [-s] <raw_image_file> <sparse_image_file> [<block_size>]\n"); } int main(int argc, char* argv[]) { char *arg_in; char *arg_out; enum sparse_read_mode mode = SPARSE_READ_MODE_NORMAL; int extra; int in; int opt; int out; int ret; struct sparse_file* s; unsigned int block_size = 4096; off64_t len; if (argc < 3 || argc > 4) { while ((opt = getopt(argc, argv, "s")) != -1) { switch (opt) { case 's': mode = SPARSE_READ_MODE_HOLE; break; default: usage(); exit(-1); } } extra = argc - optind; if (extra < 2 || extra > 3) { usage(); exit(-1); } if (argc == 4) { block_size = atoi(argv[3]); if (extra == 3) { block_size = atoi(argv[optind + 2]); } if (block_size < 1024 || block_size % 4 != 0) { Loading @@ -63,22 +80,24 @@ int main(int argc, char* argv[]) { exit(-1); } if (strcmp(argv[1], "-") == 0) { arg_in = argv[optind]; if (strcmp(arg_in, "-") == 0) { in = STDIN_FILENO; } else { in = open(argv[1], O_RDONLY | O_BINARY); in = open(arg_in, O_RDONLY | O_BINARY); if (in < 0) { fprintf(stderr, "Cannot open input file %s\n", argv[1]); fprintf(stderr, "Cannot open input file %s\n", arg_in); exit(-1); } } if (strcmp(argv[2], "-") == 0) { arg_out = argv[optind + 1]; if (strcmp(arg_out, "-") == 0) { out = STDOUT_FILENO; } else { out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0664); out = open(arg_out, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0664); if (out < 0) { fprintf(stderr, "Cannot open output file %s\n", argv[2]); fprintf(stderr, "Cannot open output file %s\n", arg_out); exit(-1); } } Loading @@ -93,7 +112,7 @@ int main(int argc, char* argv[]) { } sparse_file_verbose(s); ret = sparse_file_read(s, in, SPARSE_READ_MODE_NORMAL, false); ret = sparse_file_read(s, in, mode, false); if (ret) { fprintf(stderr, "Failed to read file\n"); exit(-1); Loading