From: Greg Farnum Date: Fri, 5 Mar 2010 21:48:04 +0000 (-0800) Subject: cauthtool: set auid in data member format instead of as (ignored) text key X-Git-Tag: v0.20~327 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4020dd1a0bb3eae6064770305f5ca0b0e15d647d;p=ceph.git cauthtool: set auid in data member format instead of as (ignored) text key --- diff --git a/src/cauthtool.cc b/src/cauthtool.cc index 7a14b857cfed..07c6bf03aa36 100644 --- a/src/cauthtool.cc +++ b/src/cauthtool.cc @@ -24,7 +24,7 @@ using namespace std; void usage() { - cout << " usage: [--create-keyring] [--gen-key] [--name=] [--caps=] [--list] [--print-key] " << std::endl; + cout << " usage: [--create-keyring] [--gen-key] [--name=] [--set-uid=uid] [--caps=] [--list] [--print-key] " << std::endl; exit(1); } @@ -47,6 +47,8 @@ int main(int argc, const char **argv) const char *name = ""; const char *caps_fn = NULL; const char *import_keyring = NULL; + bool set_auid = false; + __u64 auid = CEPH_AUTH_UID_DEFAULT; FOR_EACH_ARG(args) { if (CONF_ARG_EQ("gen-key", 'g')) { @@ -65,6 +67,9 @@ int main(int argc, const char **argv) CONF_SAFE_SET_ARG_VAL(&create_keyring, OPT_BOOL); } else if (CONF_ARG_EQ("import-keyring", '\0')) { CONF_SAFE_SET_ARG_VAL(&import_keyring, OPT_STR); + } else if (CONF_ARG_EQ("set-uid", 'u')) { + CONF_SAFE_SET_ARG_VAL(&auid, OPT_LONGLONG); + set_auid = true; } else if (!fn) { fn = args[i]; } else @@ -157,7 +162,7 @@ int main(int argc, const char **argv) } if (add_key) { if (!name) { - cerr << "must speicfy a name to add a key" << std::endl; + cerr << "must specify a name to add a key" << std::endl; exit(1); } EntityAuth eauth; @@ -194,6 +199,14 @@ int main(int argc, const char **argv) keyring.set_caps(ename, caps); modified = true; } + if (set_auid) { + if (!name) { + cerr << "must specify a name to set a uid" << std::endl; + exit(1); + } + keyring.set_uid(ename, auid); + modified = true; + } // read commands if (list) {