]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/net: don't enforce peer-perceived-myaddr matches myaddr if haven't learned... 43651/head
authorRadoslaw Zarzynski <rzarzyns@redhat.com>
Thu, 21 Oct 2021 12:51:25 +0000 (12:51 +0000)
committerRadoslaw Zarzynski <rzarzyns@redhat.com>
Mon, 25 Oct 2021 13:16:06 +0000 (13:16 +0000)
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
src/crimson/net/ProtocolV2.cc

index 7c5b10e715bb1edb6143e0cda0d8c6eb57431210..b7aef560b682e81ea8f3c7d0b6e31084f357dcdf 100644 (file)
@@ -1493,8 +1493,9 @@ void ProtocolV2::execute_accepting()
                         conn, ceph_entity_type_name(_peer_type),
                         conn.policy.lossy, conn.policy.server,
                         conn.policy.standby, conn.policy.resetcheck);
-          if (messenger.get_myaddr().get_port() != _my_addr_from_peer.get_port() ||
-              messenger.get_myaddr().get_nonce() != _my_addr_from_peer.get_nonce()) {
+          if (!messenger.get_myaddr().is_blank_ip() &&
+              (messenger.get_myaddr().get_port() != _my_addr_from_peer.get_port() ||
+              messenger.get_myaddr().get_nonce() != _my_addr_from_peer.get_nonce())) {
             logger().warn("{} my_addr_from_peer {} port/nonce doesn't match myaddr {}",
                           conn, _my_addr_from_peer, messenger.get_myaddr());
             throw std::system_error(