mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-25 10:19:47 +00:00
![Ilya Dryomov](/assets/img/avatar_default.png)
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>
90 lines
1.6 KiB
C
90 lines
1.6 KiB
C
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* Ceph string constants
|
|
*/
|
|
#include <linux/module.h>
|
|
#include <linux/ceph/types.h>
|
|
|
|
const char *ceph_entity_type_name(int type)
|
|
{
|
|
switch (type) {
|
|
case CEPH_ENTITY_TYPE_MDS: return "mds";
|
|
case CEPH_ENTITY_TYPE_OSD: return "osd";
|
|
case CEPH_ENTITY_TYPE_MON: return "mon";
|
|
case CEPH_ENTITY_TYPE_CLIENT: return "client";
|
|
case CEPH_ENTITY_TYPE_AUTH: return "auth";
|
|
default: return "unknown";
|
|
}
|
|
}
|
|
EXPORT_SYMBOL(ceph_entity_type_name);
|
|
|
|
const char *ceph_auth_proto_name(int proto)
|
|
{
|
|
switch (proto) {
|
|
case CEPH_AUTH_UNKNOWN:
|
|
return "unknown";
|
|
case CEPH_AUTH_NONE:
|
|
return "none";
|
|
case CEPH_AUTH_CEPHX:
|
|
return "cephx";
|
|
default:
|
|
return "???";
|
|
}
|
|
}
|
|
|
|
const char *ceph_con_mode_name(int mode)
|
|
{
|
|
switch (mode) {
|
|
case CEPH_CON_MODE_UNKNOWN:
|
|
return "unknown";
|
|
case CEPH_CON_MODE_CRC:
|
|
return "crc";
|
|
case CEPH_CON_MODE_SECURE:
|
|
return "secure";
|
|
default:
|
|
return "???";
|
|
}
|
|
}
|
|
|
|
const char *ceph_osd_op_name(int op)
|
|
{
|
|
switch (op) {
|
|
#define GENERATE_CASE(op, opcode, str) case CEPH_OSD_OP_##op: return (str);
|
|
__CEPH_FORALL_OSD_OPS(GENERATE_CASE)
|
|
#undef GENERATE_CASE
|
|
default:
|
|
return "???";
|
|
}
|
|
}
|
|
|
|
const char *ceph_osd_watch_op_name(int o)
|
|
{
|
|
switch (o) {
|
|
case CEPH_OSD_WATCH_OP_UNWATCH:
|
|
return "unwatch";
|
|
case CEPH_OSD_WATCH_OP_WATCH:
|
|
return "watch";
|
|
case CEPH_OSD_WATCH_OP_RECONNECT:
|
|
return "reconnect";
|
|
case CEPH_OSD_WATCH_OP_PING:
|
|
return "ping";
|
|
default:
|
|
return "???";
|
|
}
|
|
}
|
|
|
|
const char *ceph_osd_state_name(int s)
|
|
{
|
|
switch (s) {
|
|
case CEPH_OSD_EXISTS:
|
|
return "exists";
|
|
case CEPH_OSD_UP:
|
|
return "up";
|
|
case CEPH_OSD_AUTOOUT:
|
|
return "autoout";
|
|
case CEPH_OSD_NEW:
|
|
return "new";
|
|
default:
|
|
return "???";
|
|
}
|
|
}
|