123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #include "stdinc.h"
- #include "dat.h"
- #include "fns.h"
- void
- usage(void)
- {
- fprint(2, "usage: fmtisect [-Z] [-b blocksize] name file\n");
- exits(0);
- }
- int
- main(int argc, char *argv[])
- {
- ISect *is;
- Part *part;
- char *file, *name;
- int blockSize, setSize, zero;
- fmtinstall('V', vtScoreFmt);
- fmtinstall('R', vtErrFmt);
- vtAttach();
- statsInit();
- blockSize = 8 * 1024;
- setSize = 64 * 1024;
- zero = 1;
- ARGBEGIN{
- case 'b':
- blockSize = unittoull(ARGF());
- if(blockSize == ~0)
- usage();
- if(blockSize > MaxDiskBlock){
- fprint(2, "block size too large, max %d\n", MaxDiskBlock);
- exits("usage");
- }
- break;
- case 'Z':
- zero = 0;
- break;
- default:
- usage();
- break;
- }ARGEND
- if(argc != 2)
- usage();
- name = argv[0];
- file = argv[1];
- if(!nameOk(name))
- fatal("illegal name %s", name);
- part = initPart(file, 0);
- if(part == nil)
- fatal("can't open partition %s: %r", file);
- if(zero)
- zeroPart(part, blockSize);
- fprint(2, "configuring index section %s with space for index config bytes=%d\n", name, setSize);
- is = newISect(part, name, blockSize, setSize);
- if(is == nil)
- fatal("can't initialize new index: %R");
- if(!wbISect(is))
- fprint(2, "can't write back index section header for %s: %R\n", file);
- exits(0);
- return 0; /* shut up stupid compiler */
- }
|