diff options
author | Ilya Dryomov <idryomov@gmail.com> | 2018-07-26 17:43:47 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-12-05 19:41:09 +0100 |
commit | 66abd96062b627f0ee20a684ebba48cec80233d7 (patch) | |
tree | f5e0e53141308bfd75980b45fbcc46d0bf5b3c95 | |
parent | 2fd0d0f9bb59ec5b628622e30f22158cb564c4ea (diff) |
libceph: factor out __prepare_write_connect()
commit c0f56b483aa09c99bfe97409a43ad786f33b8a5a upstream.
Will be used for sending ceph_msg_connect with an updated authorizer,
after the server challenges the initial authorizer.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | net/ceph/messenger.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c index 3a82e6d2864b..0b121327d32f 100644 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c @@ -1446,6 +1446,17 @@ static void prepare_write_banner(struct ceph_connection *con) con_flag_set(con, CON_FLAG_WRITE_PENDING); } +static void __prepare_write_connect(struct ceph_connection *con) +{ + con_out_kvec_add(con, sizeof(con->out_connect), &con->out_connect); + if (con->auth) + con_out_kvec_add(con, con->auth->authorizer_buf_len, + con->auth->authorizer_buf); + + con->out_more = 0; + con_flag_set(con, CON_FLAG_WRITE_PENDING); +} + static int prepare_write_connect(struct ceph_connection *con) { unsigned int global_seq = get_global_seq(con->msgr, 0); @@ -1481,15 +1492,7 @@ static int prepare_write_connect(struct ceph_connection *con) if (ret) return ret; - con_out_kvec_add(con, sizeof (con->out_connect), - &con->out_connect); - if (con->auth) - con_out_kvec_add(con, con->auth->authorizer_buf_len, - con->auth->authorizer_buf); - - con->out_more = 0; - con_flag_set(con, CON_FLAG_WRITE_PENDING); - + __prepare_write_connect(con); return 0; } |