+ HANDLE_VERSION_FLAG("fsck", conf);
+ if (!conf.inputs_num) {
+ /* FIXME: Find all subdirs */
+ ret = -E_FSCK_SYNTAX;
+ goto out;
+ }
+ desc.dir = conf.base_dir_arg;
+ if (!conf.base_dir_given) {
+ char *home = para_homedir();
+ base_dir = make_message("%s/.paraslash/afs_database", home);
+ free(home);
+ desc.dir = base_dir;
+ }
+ for (i = 0; i < conf.inputs_num; i++) {
+ desc.name = conf.inputs[i];
+ if (!conf.no_fsck_given) {
+ ret = fsck(&desc);
+ if (ret < 0)
+ break;
+ }
+ if (conf.dump_dir_given && *conf.dump_dir_arg) {
+ ret = dump_table(conf.dump_dir_arg, &desc);
+ if (ret < 0)
+ break;
+ }
+ }
+ free(base_dir);
+ ret = 1;