• Ilya Dryomov's avatar
    libceph, ceph: get and handle cluster maps with addrvecs · a5cbd5fc
    Ilya Dryomov authored
    In preparation for msgr2, make the cluster send us maps with addrvecs
    including both LEGACY and MSGR2 addrs instead of a single LEGACY addr.
    This means advertising support for SERVER_NAUTILUS and also some older
    features: SERVER_MIMIC, MONENC and MONNAMES.
    
    MONNAMES and MONENC are actually pre-argonaut, we just never updated
    ceph_monmap_decode() for them.  Decoding is unconditional, see commit
    23c625ce ("libceph: assume argonaut on the server side").
    
    SERVER_MIMIC doesn't bear any meaning for the kernel client.
    
    Since ceph_decode_entity_addrvec() is guarded by encoding version
    checks (and in msgr2 case it is guarded implicitly by the fact that
    server is speaking msgr2), we assume MSG_ADDR2 for it.
    Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
    a5cbd5fc
decode.h 9.74 KB