int main(int argc, char * const argv[]) { int err; libmtd_t libmtd; struct mtd_info mtd_info; err = parse_opt(argc, argv); if (err) return -1; libmtd = libmtd_open(); if (libmtd == NULL) { if (errno == 0) return errmsg("MTD is not present in the system"); return sys_errmsg("cannot open libmtd"); } err = mtd_get_info(libmtd, &mtd_info); if (err) { if (errno == ENODEV) return errmsg("MTD is not present"); return sys_errmsg("cannot get MTD information"); } if (!args.all && args.node) { int mtdn; /* * A character device was specified, translate this to MTD * device number. */ mtdn = translate_dev(libmtd, args.node); if (mtdn < 0) goto out_libmtd; err = print_dev_info(libmtd, &mtd_info, mtdn); } else err = print_general_info(libmtd, &mtd_info, args.all); if (err) goto out_libmtd; libmtd_close(libmtd); return 0; out_libmtd: libmtd_close(libmtd); return -1; }
int showUser(const char *name) { char user_name[NAME_LEN]{}; char zone_name[NAME_LEN]{}; int status = parseUserName(name, user_name, zone_name); if (status < 0) { printf("Failed parsing input:[%s]\n", name); return status; } if (std::string(zone_name).empty()) { snprintf(zone_name, sizeof(zone_name), "%s", myEnv.rodsZone); } const userinfo_t info{user_name, zone_name}; if (!print_general_info(info)) { printf("User %s#%s does not exist.\n", info.user_name, info.zone_name); return 0; } print_auth_info(info); print_group_info(info); return 0; }