linux/net/ceph
Ilya Dryomov 00498b9941 libceph: introduce connection modes and ms_mode option
msgr2 supports two connection modes: crc (plain) and secure (on-wire
encryption).  Connection mode is picked by server based on input from
client.

Introduce ms_mode option:

  ms_mode=legacy        - msgr1 (default)
  ms_mode=crc           - crc mode, if denied fail
  ms_mode=secure        - secure mode, if denied fail
  ms_mode=prefer-crc    - crc mode, if denied agree to secure mode
  ms_mode=prefer-secure - secure mode, if denied agree to crc mode

ms_mode affects all connections, we don't separate connections to mons
like it's done in userspace with ms_client_mode vs ms_mon_client_mode.

For now the default is legacy, to be flipped to prefer-crc after some
time.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2020-12-14 23:21:50 +01:00
..
crush treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
armor.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
auth_none.c libceph: drop ac->ops->name field 2020-12-14 23:21:50 +01:00
auth_none.h ceph: fix whitespace 2018-08-02 21:33:21 +02:00
auth_x_protocol.h libceph, ceph: incorporate nautilus cephx changes 2020-12-14 23:21:50 +01:00
auth_x.c libceph: drop ac->ops->name field 2020-12-14 23:21:50 +01:00
auth_x.h ceph: fix whitespace 2018-08-02 21:33:21 +02:00
auth.c libceph: introduce connection modes and ms_mode option 2020-12-14 23:21:50 +01:00
buffer.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ceph_common.c libceph: introduce connection modes and ms_mode option 2020-12-14 23:21:50 +01:00
ceph_hash.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
ceph_strings.c libceph: introduce connection modes and ms_mode option 2020-12-14 23:21:50 +01:00
cls_lock_client.c rbd: support for object-map and fast-diff 2019-07-08 14:01:45 +02:00
crypto.c libceph: don't call crypto_free_sync_skcipher() on a NULL tfm 2019-08-28 12:33:46 +02:00
crypto.h libceph, ceph: incorporate nautilus cephx changes 2020-12-14 23:21:50 +01:00
debugfs.c libceph: dump class and method names on method calls 2020-08-03 11:03:01 +02:00
decode.c libceph, ceph: get and handle cluster maps with addrvecs 2020-12-14 23:21:50 +01:00
Kconfig libceph: replace HTTP links with HTTPS ones 2020-08-03 11:05:26 +02:00
Makefile libceph: move msgr1 protocol implementation to its own file 2020-12-14 23:21:50 +01:00
messenger_v1.c libceph: move msgr1 protocol specific fields to its own struct 2020-12-14 23:21:50 +01:00
messenger.c libceph: move msgr1 protocol specific fields to its own struct 2020-12-14 23:21:50 +01:00
mon_client.c libceph: introduce connection modes and ms_mode option 2020-12-14 23:21:50 +01:00
msgpool.c libceph: preallocate message data items 2018-10-22 10:28:22 +02:00
osd_client.c libceph, ceph: get and handle cluster maps with addrvecs 2020-12-14 23:21:50 +01:00
osdmap.c libceph, ceph: get and handle cluster maps with addrvecs 2020-12-14 23:21:50 +01:00
pagelist.c libceph: introduce ceph_pagelist_alloc() 2018-10-22 10:28:21 +02:00
pagevec.c libceph: remove ceph_get_direct_page_vector() 2019-07-08 14:01:40 +02:00
snapshot.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 268 2019-06-05 17:30:29 +02:00
string_table.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
striper.c rbd: support for object-map and fast-diff 2019-07-08 14:01:45 +02:00