Commit a3fc9800 authored by Yan, Zheng's avatar Yan, Zheng Committed by Ilya Dryomov

libceph: require cephx message signature by default

Signed-off-by: default avatarYan, Zheng <zyan@redhat.com>
Reviewed-by: default avatarIlya Dryomov <idryomov@redhat.com>
parent 97c85a82
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
#define CEPH_OPT_NOSHARE (1<<1) /* don't share client with other sbs */ #define CEPH_OPT_NOSHARE (1<<1) /* don't share client with other sbs */
#define CEPH_OPT_MYIP (1<<2) /* specified my ip */ #define CEPH_OPT_MYIP (1<<2) /* specified my ip */
#define CEPH_OPT_NOCRC (1<<3) /* no data crc on writes */ #define CEPH_OPT_NOCRC (1<<3) /* no data crc on writes */
#define CEPH_OPT_NOMSGAUTH (1<<4) /* not require cephx message signature */
#define CEPH_OPT_DEFAULT (0) #define CEPH_OPT_DEFAULT (0)
......
...@@ -237,6 +237,8 @@ enum { ...@@ -237,6 +237,8 @@ enum {
Opt_noshare, Opt_noshare,
Opt_crc, Opt_crc,
Opt_nocrc, Opt_nocrc,
Opt_cephx_require_signatures,
Opt_nocephx_require_signatures,
}; };
static match_table_t opt_tokens = { static match_table_t opt_tokens = {
...@@ -255,6 +257,8 @@ static match_table_t opt_tokens = { ...@@ -255,6 +257,8 @@ static match_table_t opt_tokens = {
{Opt_noshare, "noshare"}, {Opt_noshare, "noshare"},
{Opt_crc, "crc"}, {Opt_crc, "crc"},
{Opt_nocrc, "nocrc"}, {Opt_nocrc, "nocrc"},
{Opt_cephx_require_signatures, "cephx_require_signatures"},
{Opt_nocephx_require_signatures, "nocephx_require_signatures"},
{-1, NULL} {-1, NULL}
}; };
...@@ -453,6 +457,12 @@ ceph_parse_options(char *options, const char *dev_name, ...@@ -453,6 +457,12 @@ ceph_parse_options(char *options, const char *dev_name,
case Opt_nocrc: case Opt_nocrc:
opt->flags |= CEPH_OPT_NOCRC; opt->flags |= CEPH_OPT_NOCRC;
break; break;
case Opt_cephx_require_signatures:
opt->flags &= ~CEPH_OPT_NOMSGAUTH;
break;
case Opt_nocephx_require_signatures:
opt->flags |= CEPH_OPT_NOMSGAUTH;
break;
default: default:
BUG_ON(token); BUG_ON(token);
...@@ -496,6 +506,9 @@ struct ceph_client *ceph_create_client(struct ceph_options *opt, void *private, ...@@ -496,6 +506,9 @@ struct ceph_client *ceph_create_client(struct ceph_options *opt, void *private,
init_waitqueue_head(&client->auth_wq); init_waitqueue_head(&client->auth_wq);
client->auth_err = 0; client->auth_err = 0;
if (!ceph_test_opt(client, NOMSGAUTH))
required_features |= CEPH_FEATURE_MSG_AUTH;
client->extra_mon_dispatch = NULL; client->extra_mon_dispatch = NULL;
client->supported_features = CEPH_FEATURES_SUPPORTED_DEFAULT | client->supported_features = CEPH_FEATURES_SUPPORTED_DEFAULT |
supported_features; supported_features;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment