From 190067ebec730cb93a9f6146581f780d9e3890a0 Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Mon, 5 Apr 2010 13:59:52 -0700 Subject: [PATCH] rgw: rgw_admin checks that it hasn't regenerated user ids --- src/rgw/rgw_admin.cc | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/rgw/rgw_admin.cc b/src/rgw/rgw_admin.cc index fc092563e14e5..b11c16c432f9e 100644 --- a/src/rgw/rgw_admin.cc +++ b/src/rgw/rgw_admin.cc @@ -178,12 +178,17 @@ int main(int argc, char **argv) secret_key = secret_key_buf; } if (!user_id) { - ret = gen_rand_alphanumeric(public_id_buf, sizeof(public_id_buf)); - if (ret < 0) { - cerr << "aborting" << std::endl; - exit(1); - } - user_id = public_id_buf; + RGWUserInfo duplicate_check; + string duplicate_check_id; + do { + ret = gen_rand_alphanumeric(public_id_buf, sizeof(public_id_buf)); + if (ret < 0) { + cerr << "aborting" << std::endl; + exit(1); + } + user_id = public_id_buf; + duplicate_check_id = user_id; + } while (!rgw_get_user_info(duplicate_check_id, duplicate_check)); } } -- 2.39.5