From: Sage Weil Date: Thu, 22 Apr 2010 18:43:37 +0000 (-0700) Subject: cauthtool: add --gen-print-key X-Git-Tag: v0.20~24 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d03bddc65fdfff9b5456a278568e6bb5919bce52;p=ceph.git cauthtool: add --gen-print-key Just generate a random cryptokey and print it out. --- diff --git a/src/cauthtool.cc b/src/cauthtool.cc index 4b7c86e8fab2..194a070b7b14 100644 --- a/src/cauthtool.cc +++ b/src/cauthtool.cc @@ -40,6 +40,7 @@ int main(int argc, const char **argv) const char *fn = 0; bool gen_key = false; + bool gen_print_key = false; const char *add_key = 0; bool list = false; bool print_key = false; @@ -53,6 +54,8 @@ int main(int argc, const char **argv) FOR_EACH_ARG(args) { if (CONF_ARG_EQ("gen-key", 'g')) { CONF_SAFE_SET_ARG_VAL(&gen_key, OPT_BOOL); + } else if (CONF_ARG_EQ("gen-print-key", '\0')) { + CONF_SAFE_SET_ARG_VAL(&gen_print_key, OPT_BOOL); } else if (CONF_ARG_EQ("add-key", 'a')) { CONF_SAFE_SET_ARG_VAL(&add_key, OPT_STR); } else if (CONF_ARG_EQ("list", 'l')) { @@ -73,11 +76,12 @@ int main(int argc, const char **argv) } else usage(); } - if (!fn) { + if (!fn && !gen_print_key) { cerr << me << ": must specify filename" << std::endl; usage(); } if (!(gen_key || + gen_print_key || add_key || list || caps_fn || @@ -99,6 +103,13 @@ int main(int argc, const char **argv) } } + if (gen_print_key) { + CryptoKey key; + key.create(CEPH_CRYPTO_AES); + cout << key << std::endl; + return 0; + } + // keyring -------- bool modified = false; KeyRing keyring;